Handmade Hero
Forums
Episode Guide
Register
Log in
Username:
Password:
Want to support this annotated episode guide?
Miblo
is presently its sole maintainer,
annotating live
.
You can support him:
1:15
handmade_render_group.cpp: Correctly compute the SpriteBound values in GetBoundFor()
2:23
Recap and set the stage for the day
6:42
handmade_render_group.cpp: Enable SortEntries() to do a total ordering check
12:14
Run the game, try doing the new check and hit our Assertion
12:46
Debugger: Inspect the SortKey values for EntryA and EntryB
15:28
handmade_sort.cpp: Temporarily change the Assert in SortEntries() to a BreakHere, and count the SortErrors
17:22
Debugger: Break into SortEntries() to see how many sort errors there were
18:13
Blackboard: Sort Partial Ordering Problem
20:43
Blackboard: Turning our Partial Ordering into a Total Ordering
24:00
handmade_sort.cpp: Consider making IsInFrontOf() sort by distance from the camera
26:20
Blackboard: Sorting by distance from the camera
29:43
Blackboard: Orthographic camera
32:55
Blackboard: Will taking the topmost point of cards be sufficient?
35:25
handmade_sort.cpp: Introduce BuildSpriteGraph()
40:50
Blackboard: Graph Theory
43:14
Blackboard: Directed Graph
44:27
Blackboard: Directed Acyclic Graph
46:43
handmade_sort.cpp: Continue implementing BuildSpriteGraph()
49:45
handmade_math.h: Introduce a version of RectanglesIntersect() that takes rectangle2
52:31
handmade_sort.cpp: Consider partitioning the screen in order to build this graph and potentially using the Z-buffer
55:40
handmade_sort.cpp: Consider leveraging the screen partitioning in order to optimise the software renderer
56:15
Q&A
57:03
roam00010011 Q: How much more work would you have to do to get a full 3D sorting?
58:47
roam00010011 Q: I mean, use fake 3D data, since our cards are essentially flat, we can give an epsilon width to it for the sorting
59:15
Blackboard: Sorting 3D objects
1:02:38
Blackboard: Sorting all entities in a linear total ordering
1:10:55
Blackboard: Common problematic cases in Handmade Hero
1:14:23
insofaras Q: Sorry if this was already answered, but what was the issue with a "return a_z != b_z ? a_z - b_z : a_y - b_y" style total ordering?
1:14:41
Blackboard: The problem with sorting heroes behind walls on rugs on tiles
1:19:02
insofaras Q: Would the Y then Z sort work if Z is quantized to room layers, and sprites are split where they cross layers (and maybe the ground is special cased)?
1:20:10
Wind it down
Confirming No Total Ordering