Handmade Hero»Episode Guide
Brainstorming about Z Bias
?
?

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:02Recap and set the stage for the day
🗩
0:02Recap and set the stage for the day
🗩
0:02Recap and set the stage for the day
🗩
1:35Fix typos in EditableBoolean(), EditableSize() and Error() as per KimJorgensen's bug report1
1:35Fix typos in EditableBoolean(), EditableSize() and Error() as per KimJorgensen's bug report1
1:35Fix typos in EditableBoolean(), EditableSize() and Error() as per KimJorgensen's bug report1
10:41Close issue 902
🗹
10:41Close issue 902
🗹
10:41Close issue 902
🗹
11:42Investigate gingerBill's bug report 'Bug in `PushSize_` that could cause buffer overflow'3
📖
11:42Investigate gingerBill's bug report 'Bug in `PushSize_` that could cause buffer overflow'3
📖
11:42Investigate gingerBill's bug report 'Bug in `PushSize_` that could cause buffer overflow'3
📖
19:34Insert assertions in PushSize_()
19:34Insert assertions in PushSize_()
19:34Insert assertions in PushSize_()
23:19Introduce IsPow2()
23:19Introduce IsPow2()
23:19Introduce IsPow2()
29:14Test Power of 2
🖌
29:14Test Power of 2
🖌
29:14Test Power of 2
🖌
35:58Carefully scrutinise PushSize_() as per gingerBill's bug report4
📖
35:58Carefully scrutinise PushSize_() as per gingerBill's bug report4
📖
35:58Carefully scrutinise PushSize_() as per gingerBill's bug report4
📖
37:12Explicitly parenthesise the (Used + Size > Size) comparison in PushSize_()
37:12Explicitly parenthesise the (Used + Size > Size) comparison in PushSize_()
37:12Explicitly parenthesise the (Used + Size > Size) comparison in PushSize_()
37:56Conclude that the bug report is wrong5
📖
37:56Conclude that the bug report is wrong5
📖
37:56Conclude that the bug report is wrong5
📖
41:22Check out C's operator precedence rules6
📖
41:22Check out C's operator precedence rules6
📖
41:22Check out C's operator precedence rules6
📖
42:34Continue to investigate gingerBill's bug report7
📖
42:34Continue to investigate gingerBill's bug report7
📖
42:34Continue to investigate gingerBill's bug report7
📖
45:29Construct PushSize_() failure cases to address gingerBill's bug report8
45:29Construct PushSize_() failure cases to address gingerBill's bug report8
45:29Construct PushSize_() failure cases to address gingerBill's bug report8
52:16Step through our PushSize_() test to see that it behaves well
🏃
52:16Step through our PushSize_() test to see that it behaves well
🏃
52:16Step through our PushSize_() test to see that it behaves well
🏃
54:04Construct a PushSize_() test in which our request is right on the boundary
54:04Construct a PushSize_() test in which our request is right on the boundary
54:04Construct a PushSize_() test in which our request is right on the boundary
55:47Step through our PushSize_() test to see that it behaves well
🏃
55:47Step through our PushSize_() test to see that it behaves well
🏃
55:47Step through our PushSize_() test to see that it behaves well
🏃
58:01Try allocating 4 MiB as the second, expansion-triggering allocation
58:01Try allocating 4 MiB as the second, expansion-triggering allocation
58:01Try allocating 4 MiB as the second, expansion-triggering allocation
58:58Step through our PushSize_() test to see that it behaves well
🏃
58:58Step through our PushSize_() test to see that it behaves well
🏃
58:58Step through our PushSize_() test to see that it behaves well
🏃
59:39Try allocating 4 MiB as the first allocation
59:39Try allocating 4 MiB as the first allocation
59:39Try allocating 4 MiB as the first allocation
1:00:05Step through our PushSize_() test to see that it behaves well
🏃
1:00:05Step through our PushSize_() test to see that it behaves well
🏃
1:00:05Step through our PushSize_() test to see that it behaves well
🏃
1:01:30Close issue 88 with a few words on the helpfulness of concrete repro-cases in bug reports9
🗹
1:01:30Close issue 88 with a few words on the helpfulness of concrete repro-cases in bug reports9
🗹
1:01:30Close issue 88 with a few words on the helpfulness of concrete repro-cases in bug reports9
🗹
1:04:17A few words on judicious unit testing
🗩
1:04:17A few words on judicious unit testing
🗩
1:04:17A few words on judicious unit testing
🗩
1:12:47A final glance at the open issues10
📖
1:12:47A final glance at the open issues10
📖
1:12:47A final glance at the open issues10
📖
1:13:35Consider hiding the assets of disabled alignment points
🏃
1:13:35Consider hiding the assets of disabled alignment points
🏃
1:13:35Consider hiding the assets of disabled alignment points
🏃
1:16:26Consider solving our 2D billboard asset Z-bias problem
🏃
1:16:26Consider solving our 2D billboard asset Z-bias problem
🏃
1:16:26Consider solving our 2D billboard asset Z-bias problem
🏃
1:20:43Set up to express our Z-bias in CompileZBiasProgram()
📖
1:20:43Set up to express our Z-bias in CompileZBiasProgram()
📖
1:20:43Set up to express our Z-bias in CompileZBiasProgram()
📖
1:23:39Sprite Z-bias encoding
🖌
1:23:39Sprite Z-bias encoding
🖌
1:23:39Sprite Z-bias encoding
🖌
1:28:24How CompileZBiasProgram() is currently working
📖
1:28:24How CompileZBiasProgram() is currently working
📖
1:28:24How CompileZBiasProgram() is currently working
📖
1:30:17Adjusting sprite position in Y
🖌
1:30:17Adjusting sprite position in Y
🖌
1:30:17Adjusting sprite position in Y
🖌
1:33:32Imaginary encodings of sprite position and orientation
🖌
1:33:32Imaginary encodings of sprite position and orientation
🖌
1:33:32Imaginary encodings of sprite position and orientation
🖌
1:43:54Don the tennis headband
🗹
🎩
1:43:54Don the tennis headband
🗹
🎩
1:43:54Don the tennis headband
🗹
🎩
1:44:55Understanding ZBias in the case that sprites are drawn exactly upright
🖌
🎩
1:44:55Understanding ZBias in the case that sprites are drawn exactly upright
🖌
🎩
1:44:55Understanding ZBias in the case that sprites are drawn exactly upright
🖌
🎩
1:50:11Understanding ZBias in the case that sprites are drawn lying down a little
🖌
🎩
1:50:11Understanding ZBias in the case that sprites are drawn lying down a little
🖌
🎩
1:50:11Understanding ZBias in the case that sprites are drawn lying down a little
🖌
🎩
1:53:24Projecting in the vertex shader the sprite's Z positions to the passed in Z heights of the world plane
🖌
🎩
1:53:24Projecting in the vertex shader the sprite's Z positions to the passed in Z heights of the world plane
🖌
🎩
1:53:24Projecting in the vertex shader the sprite's Z positions to the passed in Z heights of the world plane
🖌
🎩
1:58:23Q&A
🎩
🗩
1:58:23Q&A
🎩
🗩
1:58:23Q&A
🎩
🗩
1:59:07vapenir Q: What kind of testing (unit, replays, etc.) do you use on 1935 / have you used over the years? Is automated testing even really a thing at game studios?
🗪
🎩
1:59:07vapenir Q: What kind of testing (unit, replays, etc.) do you use on 1935 / have you used over the years? Is automated testing even really a thing at game studios?
🗪
🎩
1:59:07vapenir Q: What kind of testing (unit, replays, etc.) do you use on 1935 / have you used over the years? Is automated testing even really a thing at game studios?
🗪
🎩
2:02:40uplinkcoder Q: Any news on 1935?
🗪
2:02:40uplinkcoder Q: Any news on 1935?
🗪
2:02:40uplinkcoder Q: Any news on 1935?
🗪
2:02:43gunngames Q: For people who don't want to fuss with platform specific code, would you say SDL is a good solution?
🗪
2:02:43gunngames Q: For people who don't want to fuss with platform specific code, would you say SDL is a good solution?
🗪
2:02:43gunngames Q: For people who don't want to fuss with platform specific code, would you say SDL is a good solution?
🗪
2:04:15We're all done
🗩
2:04:15We're all done
🗩
2:04:15We're all done
🗩