48 lines
3.4 KiB
Plaintext
48 lines
3.4 KiB
Plaintext
[video output=day209 member=cmuratori stream_platform=twitch stream_username=handmade_hero project=code title="Displaying Buffered Debug Data" vod_platform=youtube id=2bQ6mL3yNh0 annotator=Miblo]
|
|
[0:53][Adjust the chair][quote 279]
|
|
[1:46][Recap where we left off]
|
|
[3:37][handmade_debug.cpp: Implement the various DebugEvents]
|
|
[10:20][handmade_debug.cpp: Introduce EventsMatch]
|
|
[11:42][handmade_platform.h: Massage debug_event]
|
|
[13:20][handmade_platform.h: Replace RecordDebugEventCommon with RecordDebugEvent]
|
|
[14:05][handmade_debug.cpp: Massage these DebugEvents]
|
|
[14:40][handmade_debug.cpp: Make DeallocateOpenDebugBlock take **FirstOpenBlock]
|
|
[17:49][handmade_debug.cpp: Fix compile errors]
|
|
[19:05][Run the game and see the same results]
|
|
[19:25][handmade_debug_variables.h: Generate DEBUGAddVariables dynamically]
|
|
[27:04][handmade_debug.cpp: Implement the variable adding stuff]
|
|
[29:45][handmade_debug.cpp: Make DEBUGBeginVariableGroup take the DebugState]
|
|
[31:03][handmade_debug.cpp: Rename DEBUGAddVariable to CollateCreateVariable and DEBUGBeginVariableGroup to CollateCreateVariableGroup]
|
|
[32:06][handmade_debug.cpp: Introduce CollateAddVariableGroup]
|
|
[33:02][handmade_debug.cpp: Bring DEBUGAddRootGroup into play]
|
|
[34:15][handmade_debug.cpp: Massage DebugEvent_OpenDataBlock]
|
|
[37:30]["Everyone is happy and smiling" (quote 280)]
|
|
[37:56][handmade_debug.cpp: Introduce CollateCreateGroupedVariable]
|
|
[39:47][Debugger: See what's getting passed to the DebugBlock]
|
|
[41:55][handmade_debug.cpp: Correct typo]
|
|
[42:20][Run the game and see that we're working]
|
|
[42:44][handmade_debug.cpp: Provide a way to view the RootGroup per frame]
|
|
[44:15][handmade_debug.cpp: Make DEBUGDrawMainMenu display everything expanded by default]
|
|
[45:21][handmade_debug.cpp: Set debug_variable *Group = Tree->Group and conditionally override the Group]
|
|
[48:15][Run the game and see what it's printing]
|
|
[48:55][handmade_debug.cpp: Investigate why we're printing out so many RootGroups]
|
|
[51:30][Debugger: Step into FirstOpenDataBlock to determine that our Events aren't matching and why]
|
|
[53:24][handmade_platform.h: Consider removing the concept of EventsMatch]
|
|
[56:16][Debugger: Run and find that we hit a first-chance exception when we wrap]
|
|
[56:52][Debugger: Inspect the RootGroup]
|
|
[58:44][Debugger: Step through RestartCollation]
|
|
[59:58][handmade_debug.cpp: Test for HackyGroup]
|
|
[1:00:58][handmade_debug.cpp: Provide the ability in CollateDebugRecords to break at frame 31]
|
|
[1:01:54][Debugger: Step into CollateDebugRecords and inspect the data]
|
|
[1:03:51][handmade_platform.h: Determine that we wrap the array when we hit frame 32]
|
|
[1:05:35][handmade_debug.cpp: Make RestartCollation happen one frame earlier]
|
|
[1:06:06][Run the game and see that the entity picker is working]
|
|
[1:06:44][Q&A][:speech]
|
|
[1:08:29][@Zamar037][We've been on the debug code for quite a while. How much longer do you think it will take before we're finished?]
|
|
[1:11:33][@Stephenlast][Do you ever use data breakpoints? I find them helpful when some value is changing somewhere but you're not sure where]
|
|
[1:13:19][@JamesWidman][Does the design of this debug system differ significantly from the debug systems you've worked on for other games?]
|
|
[1:13:43][@ChronalDragon][(Not SUPER on topic, feel free to skip): How do you treat GL handles in your own code? Are they handled by the asset system or by something else?]
|
|
[1:14:30][Call it][:speech]
|
|
[1:14:42][Announcement: F2P discussion between Casey and Shawn McGrath after tomorrow's stream][:speech]
|
|
[/video]
|