Implementing an Interactive Tree View
?
?

Keyboard Navigation

Global Keys

[, < / ], > Jump to previous / next episode
W, K, P / S, J, N Jump to previous / next timestamp
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 and Index Controls

a
w
s
d
h j k l


Esc Close menu / unfocus timestamp

Quotes and References Menus and Index

Enter Jump to timestamp

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:08Recap and set the stage for the day
1:08Recap and set the stage for the day
1:08Recap and set the stage for the day
1:42handmade_debug.cpp: Consider cutting and pasting WriteHandmadeConfig
1:42handmade_debug.cpp: Consider cutting and pasting WriteHandmadeConfig
1:42handmade_debug.cpp: Consider cutting and pasting WriteHandmadeConfig
3:28handmade_debug.cpp: Cut and paste it into DrawDebugMainMenu
3:28handmade_debug.cpp: Cut and paste it into DrawDebugMainMenu
3:28handmade_debug.cpp: Cut and paste it into DrawDebugMainMenu
6:59handmade_debug.cpp: Initialise the menu
6:59handmade_debug.cpp: Initialise the menu
6:59handmade_debug.cpp: Initialise the menu
9:02handmade_debug.cpp: Set the TextP and advance AtY
9:02handmade_debug.cpp: Set the TextP and advance AtY
9:02handmade_debug.cpp: Set the TextP and advance AtY
10:50Run the game and see how it looks
10:50Run the game and see how it looks
10:50Run the game and see how it looks
10:59handmade_debug.cpp: Indent the text based on the depth
10:59handmade_debug.cpp: Indent the text based on the depth
10:59handmade_debug.cpp: Indent the text based on the depth
11:49Run the game and see our hierarchical printout
11:49Run the game and see our hierarchical printout
11:49Run the game and see our hierarchical printout
12:05handmade_debug.cpp: Implement the ability to interact with the menu
12:05handmade_debug.cpp: Implement the ability to interact with the menu
12:05handmade_debug.cpp: Implement the ability to interact with the menu
16:38"A Variable can be anything that it wants to be"α
16:38"A Variable can be anything that it wants to be"α
16:38"A Variable can be anything that it wants to be"α
19:08Run the game and see our progress
19:08Run the game and see our progress
19:08Run the game and see our progress
19:21"That's a mistake"β
19:21"That's a mistake"β
19:21"That's a mistake"β
19:34handmade_debug.cpp: Fix the test
19:34handmade_debug.cpp: Fix the test
19:34handmade_debug.cpp: Fix the test
20:41Run the game and demo a bug
20:41Run the game and demo a bug
20:41Run the game and demo a bug
21:14handmade.h: Introduce PushCopy
21:14handmade.h: Introduce PushCopy
21:14handmade.h: Introduce PushCopy
23:51handmade_debug_variables.h: Use PushCopy to copy Name to the stack
23:51handmade_debug_variables.h: Use PushCopy to copy Name to the stack
23:51handmade_debug_variables.h: Use PushCopy to copy Name to the stack
24:35handmade_platform.h: Move StringLength from win32_handmade.cpp
24:35handmade_platform.h: Move StringLength from win32_handmade.cpp
24:35handmade_platform.h: Move StringLength from win32_handmade.cpp
25:21Run the game and see that our strings do persist, but that we have a bug
25:21Run the game and see that our strings do persist, but that we have a bug
25:21Run the game and see that our strings do persist, but that we have a bug
26:54"There must be a bug"γ
26:54"There must be a bug"γ
26:54"There must be a bug"γ
27:08handmade_debug.cpp: Add an InvalidDefaultCase and clean up garbage in handmade_config.h
27:08handmade_debug.cpp: Add an InvalidDefaultCase and clean up garbage in handmade_config.h
27:08handmade_debug.cpp: Add an InvalidDefaultCase and clean up garbage in handmade_config.h
27:59handmade_debug_variables.h: Copy the null terminator onto the end of the Name string
27:59handmade_debug_variables.h: Copy the null terminator onto the end of the Name string
27:59handmade_debug_variables.h: Copy the null terminator onto the end of the Name string
29:13Run the game and find that everything's working nicely
29:13Run the game and find that everything's working nicely
29:13Run the game and find that everything's working nicely
29:34handmade_debug.cpp: Implement the ability to expand / collapse the tree
29:34handmade_debug.cpp: Implement the ability to expand / collapse the tree
29:34handmade_debug.cpp: Implement the ability to expand / collapse the tree
31:18Run the game and try out the newly compressed tree menu
31:18Run the game and try out the newly compressed tree menu
31:18Run the game and try out the newly compressed tree menu
31:40Consider adding more features
31:40Consider adding more features
31:40Consider adding more features
32:30handmade_debug.h: Add some more debug_variable_types
32:30handmade_debug.h: Add some more debug_variable_types
32:30handmade_debug.h: Add some more debug_variable_types
33:23handmade_debug.cpp: Use those variables in WriteHandmadeConfig
33:23handmade_debug.cpp: Use those variables in WriteHandmadeConfig
33:23handmade_debug.cpp: Use those variables in WriteHandmadeConfig
36:02handmade_debug_variables.h: Create some debug variables using those types
36:02handmade_debug_variables.h: Create some debug variables using those types
36:02handmade_debug_variables.h: Create some debug variables using those types
38:15Run the game and see our new debug_variable_type in action
38:15Run the game and see our new debug_variable_type in action
38:15Run the game and see our new debug_variable_type in action
38:41handmade_debug_variables.h: Consider implementing the ability to tweak values in the UI
38:41handmade_debug_variables.h: Consider implementing the ability to tweak values in the UI
38:41handmade_debug_variables.h: Consider implementing the ability to tweak values in the UI
39:50handmade_debug.cpp: Introduce DEBUGVariableToText to stick the prefix and suffix onto the variables
39:50handmade_debug.cpp: Introduce DEBUGVariableToText to stick the prefix and suffix onto the variables
39:50handmade_debug.cpp: Introduce DEBUGVariableToText to stick the prefix and suffix onto the variables
47:13handmade_debug.h: Introduce debug_variable_to_text_flag
47:13handmade_debug.h: Introduce debug_variable_to_text_flag
47:13handmade_debug.h: Introduce debug_variable_to_text_flag
47:44handmade_debug.cpp: Use DEBUGVariableToText
47:44handmade_debug.cpp: Use DEBUGVariableToText
47:44handmade_debug.cpp: Use DEBUGVariableToText
52:28Run the game and see that everything seems to be working, except for the handmade_config.h printout
52:28Run the game and see that everything seems to be working, except for the handmade_config.h printout
52:28Run the game and see that everything seems to be working, except for the handmade_config.h printout
52:59handmade_debug.cpp: Correct the carriage return and stop printing out groups in WriteHandmadeConfig
52:59handmade_debug.cpp: Correct the carriage return and stop printing out groups in WriteHandmadeConfig
52:59handmade_debug.cpp: Correct the carriage return and stop printing out groups in WriteHandmadeConfig
55:47handmade_debug.cpp: Introduce DEBUGVariableToText_PrettyBools
55:47handmade_debug.cpp: Introduce DEBUGVariableToText_PrettyBools
55:47handmade_debug.cpp: Introduce DEBUGVariableToText_PrettyBools
56:53Run the game and find that we're getting a little closer
56:53Run the game and find that we're getting a little closer
56:53Run the game and find that we're getting a little closer
57:25handmade_debug.cpp: Correct typos
57:25handmade_debug.cpp: Correct typos
57:25handmade_debug.cpp: Correct typos
58:51handmade_debug.cpp: Print out // before the groups
58:51handmade_debug.cpp: Print out // before the groups
58:51handmade_debug.cpp: Print out // before the groups
1:00:05Run the game and see that it all looks pretty good
1:00:05Run the game and see that it all looks pretty good
1:00:05Run the game and see that it all looks pretty good
1:00:46handmade_debug.cpp: Create a bunch more debug variable types
1:00:46handmade_debug.cpp: Create a bunch more debug variable types
1:00:46handmade_debug.cpp: Create a bunch more debug variable types
1:04:16Run the game, assess our progress and glimpse into the future
1:04:16Run the game, assess our progress and glimpse into the future
1:04:16Run the game, assess our progress and glimpse into the future
1:05:36Q&A
🗩
1:05:36Q&A
🗩
1:05:36Q&A
🗩
1:06:03andsz_ That was pretty bools, man!
🗪
1:06:03andsz_ That was pretty bools, man!
🗪
1:06:03andsz_ That was pretty bools, man!
🗪
1:06:08Sharlock93 Casey, we hear cutlery. Maybe skip Q&A and eat?
🗪
1:06:08Sharlock93 Casey, we hear cutlery. Maybe skip Q&A and eat?
🗪
1:06:08Sharlock93 Casey, we hear cutlery. Maybe skip Q&A and eat?
🗪
1:06:28elxenoaizd Why aren't the + and - signs not shown for the group labels?
🗪
1:06:28elxenoaizd Why aren't the + and - signs not shown for the group labels?
🗪
1:06:28elxenoaizd Why aren't the + and - signs not shown for the group labels?
🗪
1:07:21elxenoaizd Instead of manually typing values of power of 2 for our debug text enums can't we just use 1 << 1, 1 << 2, etc.?
🗪
1:07:21elxenoaizd Instead of manually typing values of power of 2 for our debug text enums can't we just use 1 << 1, 1 << 2, etc.?
🗪
1:07:21elxenoaizd Instead of manually typing values of power of 2 for our debug text enums can't we just use 1 << 1, 1 << 2, etc.?
🗪
1:07:39cubercaleb So is THIS what you meant by IMGUI?
🗪
1:07:39cubercaleb So is THIS what you meant by IMGUI?
🗪
1:07:39cubercaleb So is THIS what you meant by IMGUI?
🗪
1:08:07TheSizik Colored text option for V4's representing colors?
🗪
1:08:07TheSizik Colored text option for V4's representing colors?
🗪
1:08:07TheSizik Colored text option for V4's representing colors?
🗪
1:08:15insofaras Will you be adding string type debug variables, maybe for things like save folder location, keybindings etc.?
🗪
1:08:15insofaras Will you be adding string type debug variables, maybe for things like save folder location, keybindings etc.?
🗪
1:08:15insofaras Will you be adding string type debug variables, maybe for things like save folder location, keybindings etc.?
🗪
1:08:35elxenoaizd Why can't we use LLVM in windows? That way we use the same compiler for our major platforms
🗪
1:08:35elxenoaizd Why can't we use LLVM in windows? That way we use the same compiler for our major platforms
🗪
1:08:35elxenoaizd Why can't we use LLVM in windows? That way we use the same compiler for our major platforms
🗪
1:09:13ifingerbangedurcat printf comes from a library, we must implement string formatting so the stream isn't based on a lie
🗪
1:09:13ifingerbangedurcat printf comes from a library, we must implement string formatting so the stream isn't based on a lie
🗪
1:09:13ifingerbangedurcat printf comes from a library, we must implement string formatting so the stream isn't based on a lie
🗪
1:11:51insofaras If you had to implement an encryption system, would you use a library or write it from scratch yourself?
🗪
1:11:51insofaras If you had to implement an encryption system, would you use a library or write it from scratch yourself?
🗪
1:11:51insofaras If you had to implement an encryption system, would you use a library or write it from scratch yourself?
🗪
1:12:01KRUZAA (Off topic) How long after getting his / her number should you text / call them?
🗪
1:12:01KRUZAA (Off topic) How long after getting his / her number should you text / call them?
🗪
1:12:01KRUZAA (Off topic) How long after getting his / her number should you text / call them?
🗪
1:12:10SoysauceTheKid Are you planning on doing user text input (i.e. spawn entity with x amount of health)?
🗪
1:12:10SoysauceTheKid Are you planning on doing user text input (i.e. spawn entity with x amount of health)?
🗪
1:12:10SoysauceTheKid Are you planning on doing user text input (i.e. spawn entity with x amount of health)?
🗪
1:12:15elxenoaizd You missed my question twice in the prestream. Looks like it's not appearing. Is there a max question length that you filter out?
🗪
1:12:15elxenoaizd You missed my question twice in the prestream. Looks like it's not appearing. Is there a max question length that you filter out?
🗪
1:12:15elxenoaizd You missed my question twice in the prestream. Looks like it's not appearing. Is there a max question length that you filter out?
🗪
1:12:28insofaras You can debug LLVM things using the Visual Studio UI1
🗪
1:12:28insofaras You can debug LLVM things using the Visual Studio UI1
🗪
1:12:28insofaras You can debug LLVM things using the Visual Studio UI1
🗪
1:12:45Longboolean Would it be possible to compile all possible combinations of debug vars as separate binaries but then only use the one that matches the chosen debug vars, for faster switching? Is this a stupid question?
🗪
1:12:45Longboolean Would it be possible to compile all possible combinations of debug vars as separate binaries but then only use the one that matches the chosen debug vars, for faster switching? Is this a stupid question?
🗪
1:12:45Longboolean Would it be possible to compile all possible combinations of debug vars as separate binaries but then only use the one that matches the chosen debug vars, for faster switching? Is this a stupid question?
🗪
1:16:42Sharlock93 What is the end goal for the Debug GUI? Like, at what point will we say this is done?
🗪
1:16:42Sharlock93 What is the end goal for the Debug GUI? Like, at what point will we say this is done?
🗪
1:16:42Sharlock93 What is the end goal for the Debug GUI? Like, at what point will we say this is done?
🗪
1:17:02budsan In case the debug variables header is messed up, can we check easily if a debug variable is not defined and set some default value?
🗪
1:17:02budsan In case the debug variables header is messed up, can we check easily if a debug variable is not defined and set some default value?
🗪
1:17:02budsan In case the debug variables header is messed up, can we check easily if a debug variable is not defined and set some default value?
🗪
1:17:20elxenoaizd How would you implement your own string without having them being null terminated? Bundle the char* with a count variable?
🗪
1:17:20elxenoaizd How would you implement your own string without having them being null terminated? Bundle the char* with a count variable?
🗪
1:17:20elxenoaizd How would you implement your own string without having them being null terminated? Bundle the char* with a count variable?
🗪
1:17:38elxenoaizd Handmade Certification
🗪
1:17:38elxenoaizd Handmade Certification
🗪
1:17:38elxenoaizd Handmade Certification
🗪
1:19:33Wrap it up
🗩
1:19:33Wrap it up
🗩
1:19:33Wrap it up
🗩