Handmade Hero»Episode Guide
Adding Buttons to the Profiler
?
?

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:39Recap and set the stage for the day
0:39Recap and set the stage for the day
0:39Recap and set the stage for the day
2:23handmade_debug.cpp: Switch to using the full memory arena
2:23handmade_debug.cpp: Switch to using the full memory arena
2:23handmade_debug.cpp: Switch to using the full memory arena
4:09handmade_debug.cpp: Rework DEBUGDrawElement with the ability to switch an Element's type
4:09handmade_debug.cpp: Rework DEBUGDrawElement with the ability to switch an Element's type
4:09handmade_debug.cpp: Rework DEBUGDrawElement with the ability to switch an Element's type
17:57Run the game and see that nothing has changed
17:57Run the game and see that nothing has changed
17:57Run the game and see that nothing has changed
18:19handmade_debug.cpp: Introduce NullEvent to ensure that Events remain printed when their data is null
18:19handmade_debug.cpp: Introduce NullEvent to ensure that Events remain printed when their data is null
18:19handmade_debug.cpp: Introduce NullEvent to ensure that Events remain printed when their data is null
20:26Run the game and see our more pleasant profiler
20:26Run the game and see our more pleasant profiler
20:26Run the game and see our more pleasant profiler
21:16handmade_debug.h: Add DebugInteraction_SetElementType
21:16handmade_debug.h: Add DebugInteraction_SetElementType
21:16handmade_debug.h: Add DebugInteraction_SetElementType
22:06handmade_debug.cpp: Sketch out the call sites for BeginButtonRow, BooleanButton, EndButtonRow and ActionButton
22:06handmade_debug.cpp: Sketch out the call sites for BeginButtonRow, BooleanButton, EndButtonRow and ActionButton
22:06handmade_debug.cpp: Sketch out the call sites for BeginButtonRow, BooleanButton, EndButtonRow and ActionButton
27:56handmade_debug.cpp: Introduce ZoomRootInteraction and loft out this functionality into SetElementTypeInteraction
27:56handmade_debug.cpp: Introduce ZoomRootInteraction and loft out this functionality into SetElementTypeInteraction
27:56handmade_debug.cpp: Introduce ZoomRootInteraction and loft out this functionality into SetElementTypeInteraction
31:01handmade_debug.cpp: Implement the Button functions
31:01handmade_debug.cpp: Implement the Button functions
31:01handmade_debug.cpp: Implement the Button functions
36:40handmade_debug.cpp: Introduce BeginRow and EndRow to automatically wrap lines
36:40handmade_debug.cpp: Introduce BeginRow and EndRow to automatically wrap lines
36:40handmade_debug.cpp: Introduce BeginRow and EndRow to automatically wrap lines
40:27handmade_debug.cpp: Set the Root to 0
40:27handmade_debug.cpp: Set the Root to 0
40:27handmade_debug.cpp: Set the Root to 0
40:52Run the game and see that we can't interact with Threads or Frames
40:52Run the game and see that we can't interact with Threads or Frames
40:52Run the game and see that we can't interact with Threads or Frames
41:10handmade_debug.cpp: Implement the SetElementType case
41:10handmade_debug.cpp: Implement the SetElementType case
41:10handmade_debug.cpp: Implement the SetElementType case
45:35Run the game and successfully switch between Threads and Frames
45:35Run the game and successfully switch between Threads and Frames
45:35Run the game and successfully switch between Threads and Frames
45:47handmade_debug.cpp: Introduce AdvanceElement to handle spacing and line breaks
45:47handmade_debug.cpp: Introduce AdvanceElement to handle spacing and line breaks
45:47handmade_debug.cpp: Introduce AdvanceElement to handle spacing and line breaks
52:19Run the game and see that we're a little closer to correct
52:19Run the game and see that we're a little closer to correct
52:19Run the game and see that we're a little closer to correct
53:09handmade_debug.cpp: Make AdvanceElement aware of line heights
53:09handmade_debug.cpp: Make AdvanceElement aware of line heights
53:09handmade_debug.cpp: Make AdvanceElement aware of line heights
55:35Run the game and see our correctly carriage-returned information
55:35Run the game and see our correctly carriage-returned information
55:35Run the game and see our correctly carriage-returned information
56:36handmade_debug.cpp: Indent in AdvanceElement rather than EndElement
56:36handmade_debug.cpp: Indent in AdvanceElement rather than EndElement
56:36handmade_debug.cpp: Indent in AdvanceElement rather than EndElement
58:24handmade_debug.cpp: Make BasicTextElement more responsive
58:24handmade_debug.cpp: Make BasicTextElement more responsive
58:24handmade_debug.cpp: Make BasicTextElement more responsive
1:00:14Run the game and see the highlighting on hover
1:00:14Run the game and see the highlighting on hover
1:00:14Run the game and see the highlighting on hover
1:02:23Q&A
🗩
1:02:23Q&A
🗩
1:02:23Q&A
🗩
1:03:23cubercaleb (Not a serious question) Why not just import npm and use left pad to indent the strings?
🗪
1:03:23cubercaleb (Not a serious question) Why not just import npm and use left pad to indent the strings?
🗪
1:03:23cubercaleb (Not a serious question) Why not just import npm and use left pad to indent the strings?
🗪
1:03:52thesizik I think you were selecting the ground as an entity?
🗪
1:03:52thesizik I think you were selecting the ground as an entity?
🗪
1:03:52thesizik I think you were selecting the ground as an entity?
🗪
1:04:06pseudonym73 [see Resources, John W. Peterson]
🗪
1:04:06pseudonym73 [see Resources, John W. Peterson]
🗪
1:04:06pseudonym73 [see Resources, John W. Peterson]
🗪
1:05:29sssmcgrath You know how if you add 1 letter to HAL you get IBM? Did you know if you add one letter to VMS you get WNT?
🗪
1:05:29sssmcgrath You know how if you add 1 letter to HAL you get IBM? Did you know if you add one letter to VMS you get WNT?
🗪
1:05:29sssmcgrath You know how if you add 1 letter to HAL you get IBM? Did you know if you add one letter to VMS you get WNT?
🗪
1:05:55jessem3y3r So this interface system is a very simple immediate mode design?
🗪
1:05:55jessem3y3r So this interface system is a very simple immediate mode design?
🗪
1:05:55jessem3y3r So this interface system is a very simple immediate mode design?
🗪
1:06:48pmad2 Why there are some blue lines outside the profile window sometimes?
🗪
1:06:48pmad2 Why there are some blue lines outside the profile window sometimes?
🗪
1:06:48pmad2 Why there are some blue lines outside the profile window sometimes?
🗪
1:08:57dudeinbasement1 VS2015, you can use clang as a compiler
🗪
1:08:57dudeinbasement1 VS2015, you can use clang as a compiler
🗪
1:08:57dudeinbasement1 VS2015, you can use clang as a compiler
🗪
1:09:57cubercaleb Are you using clang-cl?
🗪
1:09:57cubercaleb Are you using clang-cl?
🗪
1:09:57cubercaleb Are you using clang-cl?
🗪
1:10:43jessem3y3r You were mentioning before about objects arising as a natural consequence of properly engineered code as the system requires. But do you do not mean a C++ object? So what do you mean as an object?
🗪
1:10:43jessem3y3r You were mentioning before about objects arising as a natural consequence of properly engineered code as the system requires. But do you do not mean a C++ object? So what do you mean as an object?
🗪
1:10:43jessem3y3r You were mentioning before about objects arising as a natural consequence of properly engineered code as the system requires. But do you do not mean a C++ object? So what do you mean as an object?
🗪
1:11:14handmade_render_group.h: Demonstrate how "objects" fall naturally out of the code
1:11:14handmade_render_group.h: Demonstrate how "objects" fall naturally out of the code
1:11:14handmade_render_group.h: Demonstrate how "objects" fall naturally out of the code
1:16:10cubercaleb You have a typo in the comment for object_transform
🗪
1:16:10cubercaleb You have a typo in the comment for object_transform
🗪
1:16:10cubercaleb You have a typo in the comment for object_transform
🗪
1:17:14Close it down
🗩
1:17:14Close it down
🗩
1:17:14Close it down
🗩