Handmade Hero»Episode Guide
Unified Position Representation
?
?

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:37Recap on what we're set out to do
1:37Recap on what we're set out to do
1:37Recap on what we're set out to do
6:15About canonical position and using it for the player position
6:15About canonical position and using it for the player position
6:15About canonical position and using it for the player position
13:07GetCanonicalPosition() to RecanonicalPosition()
13:07GetCanonicalPosition() to RecanonicalPosition()
13:07GetCanonicalPosition() to RecanonicalPosition()
32:02Debugging the new code
32:02Debugging the new code
32:02Debugging the new code
38:14Movement units from pixels to meters per second
38:14Movement units from pixels to meters per second
38:14Movement units from pixels to meters per second
41:09Recanonicalize edge case debugging after assertion fail
41:09Recanonicalize edge case debugging after assertion fail
41:09Recanonicalize edge case debugging after assertion fail
50:04Back to changing movement units
50:04Back to changing movement units
50:04Back to changing movement units
53:40Casey enjoying the little things
53:40Casey enjoying the little things
53:40Casey enjoying the little things
57:41Debugging player position
57:41Debugging player position
57:41Debugging player position
1:03:42Q&A
🗩
1:03:42Q&A
🗩
1:03:42Q&A
🗩
1:04:19Would this be the time to put on screen text for debug info?
1:04:19Would this be the time to put on screen text for debug info?
1:04:19Would this be the time to put on screen text for debug info?
1:05:15What is the variable called 'Gray'?
1:05:15What is the variable called 'Gray'?
1:05:15What is the variable called 'Gray'?
1:05:55How does the difficulty of conceptualising this type of code compare to say coding the backend to a web application?
1:05:55How does the difficulty of conceptualising this type of code compare to say coding the backend to a web application?
1:05:55How does the difficulty of conceptualising this type of code compare to say coding the backend to a web application?
1:07:03The window title bar is a nice place to spit out some text!
1:07:03The window title bar is a nice place to spit out some text!
1:07:03The window title bar is a nice place to spit out some text!
1:07:37About replay buffers: I don't think we ever use the 0th buffer in the Win32State
1:07:37About replay buffers: I don't think we ever use the 0th buffer in the Win32State
1:07:37About replay buffers: I don't think we ever use the 0th buffer in the Win32State
1:13:01When do you decide to add visual cues to help with debugging?
1:13:01When do you decide to add visual cues to help with debugging?
1:13:01When do you decide to add visual cues to help with debugging?
1:14:28What are your thoughts on the progress you make daily?
1:14:28What are your thoughts on the progress you make daily?
1:14:28What are your thoughts on the progress you make daily?
1:16:05Does the code actually handle skipping a tilemap?
1:16:05Does the code actually handle skipping a tilemap?
1:16:05Does the code actually handle skipping a tilemap?
1:16:57Can the player go diagonally through two wall tiles joined by corners with the current collision detection code?
1:16:57Can the player go diagonally through two wall tiles joined by corners with the current collision detection code?
1:16:57Can the player go diagonally through two wall tiles joined by corners with the current collision detection code?
1:18:19Why are you so fond of inline?
1:18:19Why are you so fond of inline?
1:18:19Why are you so fond of inline?
1:20:38Are you going to have input envelopes for feel like acceleration and fricksion?
1:20:38Are you going to have input envelopes for feel like acceleration and fricksion?
1:20:38Are you going to have input envelopes for feel like acceleration and fricksion?
1:21:04Can you explain what you meant by canonicalization in some simpler terms?
1:21:04Can you explain what you meant by canonicalization in some simpler terms?
1:21:04Can you explain what you meant by canonicalization in some simpler terms?
1:26:11Would this kind of code be good for unit tests/fuzz tests to make sure strange corner cases don't creep around?
1:26:11Would this kind of code be good for unit tests/fuzz tests to make sure strange corner cases don't creep around?
1:26:11Would this kind of code be good for unit tests/fuzz tests to make sure strange corner cases don't creep around?
1:27:10Are there reasons why programmers of older adventure games chose to move the character around the map and not vice versa?
1:27:10Are there reasons why programmers of older adventure games chose to move the character around the map and not vice versa?
1:27:10Are there reasons why programmers of older adventure games chose to move the character around the map and not vice versa?
1:29:32Earlier you said const is ugly? Ugly because of how it looks or for some other reason?
1:29:32Earlier you said const is ugly? Ugly because of how it looks or for some other reason?
1:29:32Earlier you said const is ugly? Ugly because of how it looks or for some other reason?
1:31:49What's your preferred 2D coordinate system? Y going up or down?
1:31:49What's your preferred 2D coordinate system? Y going up or down?
1:31:49What's your preferred 2D coordinate system? Y going up or down?
1:32:48Now that there's no raw_position can we rename canonical_position to position and recanonicalize to fix or rebase?
1:32:48Now that there's no raw_position can we rename canonical_position to position and recanonicalize to fix or rebase?
1:32:48Now that there's no raw_position can we rename canonical_position to position and recanonicalize to fix or rebase?
1:33:18Will we be using the tilemap for path finding or some other way to get smoother movement?
1:33:18Will we be using the tilemap for path finding or some other way to get smoother movement?
1:33:18Will we be using the tilemap for path finding or some other way to get smoother movement?
1:33:51Will you release your version control system?
1:33:51Will you release your version control system?
1:33:51Will you release your version control system?