Handmade Hero»Episode Guide
Moving Familiars
?
?

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)
2:02Recap and set the stage for the day
2:02Recap and set the stage for the day
2:02Recap and set the stage for the day
5:22handmade_entity.h: Add MovementMode_Floating to entity_movement_mode
5:22handmade_entity.h: Add MovementMode_Floating to entity_movement_mode
5:22handmade_entity.h: Add MovementMode_Floating to entity_movement_mode
10:00Consider where the delineation between MovementMode and Brain should be
10:00Consider where the delineation between MovementMode and Brain should be
10:00Consider where the delineation between MovementMode and Brain should be
13:40handmade_brain.cpp: Enable ExecuteBrain to make the Familiar occupy traversables and do transactional movement
13:40handmade_brain.cpp: Enable ExecuteBrain to make the Familiar occupy traversables and do transactional movement
13:40handmade_brain.cpp: Enable ExecuteBrain to make the Familiar occupy traversables and do transactional movement
21:50Debugger: Step into Type_brain_familiar in ExecuteBrain and investigate why the Familiar isn't moving
21:50Debugger: Step into Type_brain_familiar in ExecuteBrain and investigate why the Familiar isn't moving
21:50Debugger: Step into Type_brain_familiar in ExecuteBrain and investigate why the Familiar isn't moving
24:40handmade_sim_region.cpp: Make GetClosestTraversable set Entity.Index
24:40handmade_sim_region.cpp: Make GetClosestTraversable set Entity.Index
24:40handmade_sim_region.cpp: Make GetClosestTraversable set Entity.Index
24:59Run the game and see the Familiar move
24:59Run the game and see the Familiar move
24:59Run the game and see the Familiar move
26:27Blackboard: Proportional Derivative (and Integral) Controller
26:27Blackboard: Proportional Derivative (and Integral) Controller
26:27Blackboard: Proportional Derivative (and Integral) Controller
30:31handmade_brain.cpp: Make ExecuteBrain set a spring on the Familiar
30:31handmade_brain.cpp: Make ExecuteBrain set a spring on the Familiar
30:31handmade_brain.cpp: Make ExecuteBrain set a spring on the Familiar
31:15Run the game and see the spring in action
31:15Run the game and see the spring in action
31:15Run the game and see the spring in action
35:11handmade_brain.cpp: Introduce the notion of a TargetTraversable which the Familiar moves towards
35:11handmade_brain.cpp: Introduce the notion of a TargetTraversable which the Familiar moves towards
35:11handmade_brain.cpp: Introduce the notion of a TargetTraversable which the Familiar moves towards
37:09handmade_sim_region.cpp: Introduce IsOccupied
37:09handmade_sim_region.cpp: Introduce IsOccupied
37:09handmade_sim_region.cpp: Introduce IsOccupied
38:50Run the game and see that the Familiar follows us
38:50Run the game and see that the Familiar follows us
38:50Run the game and see that the Familiar follows us
39:07handmade_world_mode.cpp: Make AddStandardRoom randomly offset the grid points
39:07handmade_world_mode.cpp: Make AddStandardRoom randomly offset the grid points
39:07handmade_world_mode.cpp: Make AddStandardRoom randomly offset the grid points
41:31Run the game and see the irregular grid, with everyone able to function on it
41:31Run the game and see the irregular grid, with everyone able to function on it
41:31Run the game and see the irregular grid, with everyone able to function on it
44:20handmade_sim_region.cpp: Introduce GetClosestTraversableAlongRay
44:20handmade_sim_region.cpp: Introduce GetClosestTraversableAlongRay
44:20handmade_sim_region.cpp: Introduce GetClosestTraversableAlongRay
46:39handmade_brain.cpp: Make ExecuteBrain call GetClosestTraversableAlongRay for the Familiar
46:39handmade_brain.cpp: Make ExecuteBrain call GetClosestTraversableAlongRay for the Familiar
46:39handmade_brain.cpp: Make ExecuteBrain call GetClosestTraversableAlongRay for the Familiar
49:04Run the game and see that the Familiar is more stable
49:04Run the game and see that the Familiar is more stable
49:04Run the game and see that the Familiar is more stable
50:20handmade_sim_region.cpp: Add a TIMED_FUNCTION for GetClosestTraversable and GetClosestTraversableAlongRay
50:20handmade_sim_region.cpp: Add a TIMED_FUNCTION for GetClosestTraversable and GetClosestTraversableAlongRay
50:20handmade_sim_region.cpp: Add a TIMED_FUNCTION for GetClosestTraversable and GetClosestTraversableAlongRay
51:06Run the game and view the profiler
51:06Run the game and view the profiler
51:06Run the game and view the profiler
52:43build.bat: Temporarily switch to -O2 and then run the game and see how that affects our performance
52:43build.bat: Temporarily switch to -O2 and then run the game and see how that affects our performance
52:43build.bat: Temporarily switch to -O2 and then run the game and see how that affects our performance
56:11handmade_sim_region.cpp: Introduce GetClosestEntityWithBrain and closest_entity
56:11handmade_sim_region.cpp: Introduce GetClosestEntityWithBrain and closest_entity
56:11handmade_sim_region.cpp: Introduce GetClosestEntityWithBrain and closest_entity
1:00:17handmade_brain.cpp: Make ExecuteBrain call GetClosestEntityWithBrain for the Familiar
1:00:17handmade_brain.cpp: Make ExecuteBrain call GetClosestEntityWithBrain for the Familiar
1:00:17handmade_brain.cpp: Make ExecuteBrain call GetClosestEntityWithBrain for the Familiar
1:01:44Run the game and see that it works beautifully
1:01:44Run the game and see that it works beautifully
1:01:44Run the game and see that it works beautifully
1:01:59Q&A
🗩
1:01:59Q&A
🗩
1:01:59Q&A
🗩
1:02:44garryjohanson Any thoughts on multithreading the entity system?
🗪
1:02:44garryjohanson Any thoughts on multithreading the entity system?
🗪
1:02:44garryjohanson Any thoughts on multithreading the entity system?
🗪
1:03:01insobot ++ and += to reduce memory useage...
🗪
1:03:01insobot ++ and += to reduce memory useage...
🗪
1:03:01insobot ++ and += to reduce memory useage...
🗪
1:06:07evraire How many more times will you get hit with the texture upload issue before you actually fix it?
🗪
1:06:07evraire How many more times will you get hit with the texture upload issue before you actually fix it?
🗪
1:06:07evraire How many more times will you get hit with the texture upload issue before you actually fix it?
🗪
1:06:42roam00010011 Do you have a max entity count at the sim region on the debug display?
🗪
1:06:42roam00010011 Do you have a max entity count at the sim region on the debug display?
🗪
1:06:42roam00010011 Do you have a max entity count at the sim region on the debug display?
🗪
1:09:26serge_rgb (Out of topic) Milton seems to be treating Wacom input as mouse input. Restart Milton? Will look into it
🗪
1:09:26serge_rgb (Out of topic) Milton seems to be treating Wacom input as mouse input. Restart Milton? Will look into it
🗪
1:09:26serge_rgb (Out of topic) Milton seems to be treating Wacom input as mouse input. Restart Milton? Will look into it
🗪
1:10:40Close things down
🗩
1:10:40Close things down
🗩
1:10:40Close things down
🗩