Handmade Hero»Episode Guide
Finishing World Chunk Entity Storage
?
?

Keyboard Navigation

Global Keys

[, < / ], > Jump to previous / next episode
W, K, P / S, J, N Jump to previous / next marker
t / T Toggle theatre / SUPERtheatre mode
V Revert filter to original state Y Select link (requires manual Ctrl-c)

Menu toggling

q Quotes r References f Filter y Link c Credits

In-Menu Movement

a
w
s
d
h j k l


Quotes and References Menus

Enter Jump to timecode

Quotes, References and Credits Menus

o Open URL (in new tab)

Filter Menu

x, Space Toggle category and focus next
X, ShiftSpace Toggle category and focus previous
v Invert topics / media as per focus

Filter and Link Menus

z Toggle filter / linking mode

Credits Menu

Enter Open URL (in new tab)
0:52Blackboard: Why make an entity system using a SOA (Struct of Arrays) rather than an AOS (Array of Structs)
0:52Blackboard: Why make an entity system using a SOA (Struct of Arrays) rather than an AOS (Array of Structs)
0:52Blackboard: Why make an entity system using a SOA (Struct of Arrays) rather than an AOS (Array of Structs)
4:53Recap and set the stage for the day
4:53Recap and set the stage for the day
4:53Recap and set the stage for the day
9:50Explain the problem with pulling the world_entity_blocks out of the ChunkHash
9:50Explain the problem with pulling the world_entity_blocks out of the ChunkHash
9:50Explain the problem with pulling the world_entity_blocks out of the ChunkHash
11:12Blackboard: Transactional Memory
11:12Blackboard: Transactional Memory
11:12Blackboard: Transactional Memory
16:04Blackboard: Making the entity system multithreaded
16:04Blackboard: Making the entity system multithreaded
16:04Blackboard: Making the entity system multithreaded
19:23handmade_sim_region.cpp: Make BeginSim remove the Chunks and Blocks, and return them to the free list
19:23handmade_sim_region.cpp: Make BeginSim remove the Chunks and Blocks, and return them to the free list
19:23handmade_sim_region.cpp: Make BeginSim remove the Chunks and Blocks, and return them to the free list
22:35handmade_sim_region.cpp: Make EndSim pack the entities into a new chunk
22:35handmade_sim_region.cpp: Make EndSim pack the entities into a new chunk
22:35handmade_sim_region.cpp: Make EndSim pack the entities into a new chunk
30:32handmade_world.cpp: Delete ChangeEntityLocation and clean up compile errors
30:32handmade_world.cpp: Delete ChangeEntityLocation and clean up compile errors
30:32handmade_world.cpp: Delete ChangeEntityLocation and clean up compile errors
34:27Anticipate 4coder's code intelligence
34:27Anticipate 4coder's code intelligence
34:27Anticipate 4coder's code intelligence
35:52handmade_world_mode.cpp: Replace low_entity with entity
35:52handmade_world_mode.cpp: Replace low_entity with entity
35:52handmade_world_mode.cpp: Replace low_entity with entity
36:32handmade_sim_region.h: Replace sim_entity with entity
36:32handmade_sim_region.h: Replace sim_entity with entity
36:32handmade_sim_region.h: Replace sim_entity with entity
41:02handmade_world.cpp: Remove ChangeEntityLocationRaw and introduce PackEntityIntoWorld
41:02handmade_world.cpp: Remove ChangeEntityLocationRaw and introduce PackEntityIntoWorld
41:02handmade_world.cpp: Remove ChangeEntityLocationRaw and introduce PackEntityIntoWorld
48:45handmade_world.cpp: Introduce PackEntityIntoChunk
48:45handmade_world.cpp: Introduce PackEntityIntoChunk
48:45handmade_world.cpp: Introduce PackEntityIntoChunk
50:49handmade_world.h: Make FirstBlock be a pointer in world_chunk
50:49handmade_world.h: Make FirstBlock be a pointer in world_chunk
50:49handmade_world.h: Make FirstBlock be a pointer in world_chunk
53:22handmade_world.cpp: Introduce HasRoomFor
53:22handmade_world.cpp: Introduce HasRoomFor
53:22handmade_world.cpp: Introduce HasRoomFor
57:03handmade_world.cpp: Introduce AddBlockToFreeList and AddChunkToFreeList
57:03handmade_world.cpp: Introduce AddBlockToFreeList and AddChunkToFreeList
57:03handmade_world.cpp: Introduce AddBlockToFreeList and AddChunkToFreeList
59:45handmade_world.cpp: Introduce RemoveWorldChunk
59:45handmade_world.cpp: Introduce RemoveWorldChunk
59:45handmade_world.cpp: Introduce RemoveWorldChunk
1:01:01handmade_world.cpp: Split GetWorldChunk out to GetWorldChunkInternal in order to provide multiple entry points
1:01:01handmade_world.cpp: Split GetWorldChunk out to GetWorldChunkInternal in order to provide multiple entry points
1:01:01handmade_world.cpp: Split GetWorldChunk out to GetWorldChunkInternal in order to provide multiple entry points
1:07:43Run the game and let it crash and burn
1:07:43Run the game and let it crash and burn
1:07:43Run the game and let it crash and burn
1:08:13handmade_world_mode.h: Support creating multiple entities at the same time
1:08:13handmade_world_mode.h: Support creating multiple entities at the same time
1:08:13handmade_world_mode.h: Support creating multiple entities at the same time
1:11:49Q&A
🗩
1:11:49Q&A
🗩
1:11:49Q&A
🗩
1:12:47Blackboard: Using a Pointer to a Pointer to enable editing of chunks
1:12:47Blackboard: Using a Pointer to a Pointer to enable editing of chunks
1:12:47Blackboard: Using a Pointer to a Pointer to enable editing of chunks
1:16:17novynn How are you finding Milton? I didn't catch the start of the stream sorry
🗪
1:16:17novynn How are you finding Milton? I didn't catch the start of the stream sorry
🗪
1:16:17novynn How are you finding Milton? I didn't catch the start of the stream sorry
🗪
1:17:38paulsix How do you pronounce your name?
🗪
1:17:38paulsix How do you pronounce your name?
🗪
1:17:38paulsix How do you pronounce your name?
🗪
1:18:10elxenoanizd Is the Sparse Entity System the same as "mixins" that you mentioned before? If not, are we ever going to use or talk about mixins? I'm really curious as to what they are
🗪
1:18:10elxenoanizd Is the Sparse Entity System the same as "mixins" that you mentioned before? If not, are we ever going to use or talk about mixins? I'm really curious as to what they are
🗪
1:18:10elxenoanizd Is the Sparse Entity System the same as "mixins" that you mentioned before? If not, are we ever going to use or talk about mixins? I'm really curious as to what they are
🗪
1:18:28Blackboard: Mixin
1:18:28Blackboard: Mixin
1:18:28Blackboard: Mixin
1:19:45cubercaleb Do friend classes count as mixins?
🗪
1:19:45cubercaleb Do friend classes count as mixins?
🗪
1:19:45cubercaleb Do friend classes count as mixins?
🗪
1:20:32paulsix Couldn't you avoid having to compress the entities if you used some unions in the entity?
🗪
1:20:32paulsix Couldn't you avoid having to compress the entities if you used some unions in the entity?
🗪
1:20:32paulsix Couldn't you avoid having to compress the entities if you used some unions in the entity?
🗪
1:21:19elxenoanizd How are you finding 4coder so far? Any features you find missing? Is it worth getting into coming from emacs?
🗪
1:21:19elxenoanizd How are you finding 4coder so far? Any features you find missing? Is it worth getting into coming from emacs?
🗪
1:21:19elxenoanizd How are you finding 4coder so far? Any features you find missing? Is it worth getting into coming from emacs?
🗪
1:22:35paulsix What do you think of the other more data-oriented entity system implementations online (like anax, EntityX, etc.)?
🗪
1:22:35paulsix What do you think of the other more data-oriented entity system implementations online (like anax, EntityX, etc.)?
🗪
1:22:35paulsix What do you think of the other more data-oriented entity system implementations online (like anax, EntityX, etc.)?
🗪
1:23:55Wrap it up
🗩
1:23:55Wrap it up
🗩
1:23:55Wrap it up
🗩