Handmade Hero»Episode Guide
Scrolling Ground Buffer
?
?

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)
1:36Damage Assessment
1:36Damage Assessment
1:36Damage Assessment
2:37We are trying to figure out how to finish off our world construction
2:37We are trying to figure out how to finish off our world construction
2:37We are trying to figure out how to finish off our world construction
4:23Think about how to handle the ground
4:23Think about how to handle the ground
4:23Think about how to handle the ground
5:23Look at how we're currently specifying the ground
5:23Look at how we're currently specifying the ground
5:23Look at how we're currently specifying the ground
6:49Blackboard: Our system for defining the ground
6:49Blackboard: Our system for defining the ground
6:49Blackboard: Our system for defining the ground
10:36Blackboard: A potential plan and guiding principals of engine architecture design
10:36Blackboard: A potential plan and guiding principals of engine architecture design
10:36Blackboard: A potential plan and guiding principals of engine architecture design
12:51Blackboard: How to store the splat list
12:51Blackboard: How to store the splat list
12:51Blackboard: How to store the splat list
14:40Blackboard: Figuring out the shape of the ground
14:40Blackboard: Figuring out the shape of the ground
14:40Blackboard: Figuring out the shape of the ground
17:24Blackboard: Considering multiple Z-levels / depth
17:24Blackboard: Considering multiple Z-levels / depth
17:24Blackboard: Considering multiple Z-levels / depth
25:20Blackboard: Empty space things will carve out regions like that
25:20Blackboard: Empty space things will carve out regions like that
25:20Blackboard: Empty space things will carve out regions like that
27:19Blackboard: What are the splats for the region?
27:19Blackboard: What are the splats for the region?
27:19Blackboard: What are the splats for the region?
28:49Try to make the ground plane scroll infinitely in all directions
28:49Try to make the ground plane scroll infinitely in all directions
28:49Try to make the ground plane scroll infinitely in all directions
29:39Enlarge GroundBuffer, introducing MaximumZScale and GroundOverscan variables
29:39Enlarge GroundBuffer, introducing MaximumZScale and GroundOverscan variables
29:39Enlarge GroundBuffer, introducing MaximumZScale and GroundOverscan variables
35:25Partition the GroundBuffer so that we can scroll it around
35:25Partition the GroundBuffer so that we can scroll it around
35:25Partition the GroundBuffer so that we can scroll it around
36:04Blackboard: How the GroundBuffer is currently positioned
36:04Blackboard: How the GroundBuffer is currently positioned
36:04Blackboard: How the GroundBuffer is currently positioned
38:01Locate GroundBufferP relative to CameraP
38:01Locate GroundBufferP relative to CameraP
38:01Locate GroundBufferP relative to CameraP
43:11Plan to snap the GroundBuffer towards the camera's direction whenever it runs out of pixel coverage
43:11Plan to snap the GroundBuffer towards the camera's direction whenever it runs out of pixel coverage
43:11Plan to snap the GroundBuffer towards the camera's direction whenever it runs out of pixel coverage
43:33Turn off the trees
43:33Turn off the trees
43:33Turn off the trees
44:48Turn off Z doors
44:48Turn off Z doors
44:48Turn off Z doors
45:32Turn on the trees
45:32Turn on the trees
45:32Turn on the trees
46:00Make the ground constantly generate itself
46:00Make the ground constantly generate itself
46:00Make the ground constantly generate itself
47:08Blackboard: Tiling considerations
47:08Blackboard: Tiling considerations
47:08Blackboard: Tiling considerations
48:38Turn DrawTestGround into DrawGroundChunk
48:38Turn DrawTestGround into DrawGroundChunk
48:38Turn DrawTestGround into DrawGroundChunk
54:28View the results in-game
54:28View the results in-game
54:28View the results in-game
55:08Q&A
🗩
55:08Q&A
🗩
55:08Q&A
🗩
55:58Q: Why don't we fill the entire game window instead of having all that black space?
55:58Q: Why don't we fill the entire game window instead of having all that black space?
55:58Q: Why don't we fill the entire game window instead of having all that black space?
58:29Q: Are some of these issues with dealing with display on multiple levels stemming from the lack of a Z-coordinate for the camera to just do a lerp on?
58:29Q: Are some of these issues with dealing with display on multiple levels stemming from the lack of a Z-coordinate for the camera to just do a lerp on?
58:29Q: Are some of these issues with dealing with display on multiple levels stemming from the lack of a Z-coordinate for the camera to just do a lerp on?
1:01:03Q: If no one's asking related questions, could you ballpark a time-frame when adding a font and text rendering system will become useful or necessary?
1:01:03Q: If no one's asking related questions, could you ballpark a time-frame when adding a font and text rendering system will become useful or necessary?
1:01:03Q: If no one's asking related questions, could you ballpark a time-frame when adding a font and text rendering system will become useful or necessary?
1:03:02On learning C++
1:03:02On learning C++
1:03:02On learning C++
1:05:10Q: You mentioned offloading ground drawing to a separate thread to prevent hitches. Is it possible to offload the drawing work over multiple frames, and would there be any benefits over either method?
1:05:10Q: You mentioned offloading ground drawing to a separate thread to prevent hitches. Is it possible to offload the drawing work over multiple frames, and would there be any benefits over either method?
1:05:10Q: You mentioned offloading ground drawing to a separate thread to prevent hitches. Is it possible to offload the drawing work over multiple frames, and would there be any benefits over either method?
1:06:30Q: How much of a memory footprint is your game using already? Certainly it won't be large, but I'm more meaning how many different containers are there?
1:06:30Q: How much of a memory footprint is your game using already? Certainly it won't be large, but I'm more meaning how many different containers are there?
1:06:30Q: How much of a memory footprint is your game using already? Certainly it won't be large, but I'm more meaning how many different containers are there?
1:06:53Q: Procedural generation of 2D graphics: is there some mainstream math for that?
1:06:53Q: Procedural generation of 2D graphics: is there some mainstream math for that?
1:06:53Q: Procedural generation of 2D graphics: is there some mainstream math for that?
1:07:38Q: What is your programming experience as before Handmade Hero?
1:07:38Q: What is your programming experience as before Handmade Hero?
1:07:38Q: What is your programming experience as before Handmade Hero?
1:08:42Q: How many different classes are you having to use already?
1:08:42Q: How many different classes are you having to use already?
1:08:42Q: How many different classes are you having to use already?
1:10:30Q: Is there a simple way to explain pointers and references in C++?
1:10:30Q: Is there a simple way to explain pointers and references in C++?
1:10:30Q: Is there a simple way to explain pointers and references in C++?
1:16:30Closing remarks
🗩
1:16:30Closing remarks
🗩
1:16:30Closing remarks
🗩