[5:14][handmade_debug.h: Add Duration and DurationOfChildren to debug_profile_node in order to separate out the clocks]
[6:06][handmade_debug.cpp: Compute the DurationOfChildren and make the TopClocksList exclusive of the children]
[9:26]["Clocks without children"][quote 472]
[10:05][Run the game and see a clearer picture of where our time is being spent]
[11:47][handmade_world_mode.cpp: Make UpdateAndRenderWorld a TIMED_FUNCTION]
[12:42][Run the game and see what takes the time]
[14:30][handmade_debug_interface.h: Make RecordDebugEvent take Name rather than DEBUG_NAME]
[16:01][handmade_world_mode.cpp: Insert some TIMED_BLOCKs in UpdateAndRenderWorld]
[17:24][Run the game and see that GroundChunksOn takes up so much of the time]
[17:35][handmade_world_mode.cpp: Nuke GroundChunksOn and consult the profiler again]
[20:34][handmade_debug.cpp: Clip the profiler drawing to ProfileRect.Min.Y]
[26:47][Blackboard: Picking the correct line to clip to]
[27:32][handmade_debug.cpp: Make the profiler overdraw by one line]
[28:30][View the profiler and see this overdrawing]
[32:17][handmade_render_group.h and .cpp: Consider how to enable the bitmaps to be clipped]
[36:44][Blackboard: Respecifying bitmaps]
[39:02][handmade_render_group.h: Try to introduce render_entry_cliprect, to pass the clipping area down the stream]
[40:05][handmade_opengl.cpp: Consider the problem with sorting]
[42:26][handmade_render_group.h: Add ClipRect to render_entry_bitmap and ClipRectIndex to render_group_entry_header in order allow clipping while sorting]
[44:16][handmade_opengl.cpp: Call glScissor[ref
site="docs.GL"
page="glScissor"
url="http://docs.gl/gl2/glScissor"]]
[45:10][handmade_platform.h: Add ClipRectCount and *ClipRects to game_render_commands]
[1:34:11][@Popcorn0x90][What are top three reason for FPS to go down?]
[1:34:36][@sonoftheright][Will ClipRect be used outside of debug, and where?]
[1:35:46][@fierydrake][Can you elaborate on the ODE you plan to replace your drag function with in MoveEntity?]
[1:36:00][@fyoucon][How about making the toplist scrollable? Since we now clip it, can be painful when you start profiling a lot more]
[1:36:50][@blah238][When does clipping overdrawn areas cost more than just drawing them?]
[1:38:12][@sssmcgrath][That's not entirely true, the state change on the clip isn't free, and if the size change is minor it's probably not worth it]
[1:39:11][@Miblo][When you switch between the renderers, the viewing frame time is (obviously) affected. Are the clocks in our newly clipped box also affected by the renderers, i.e. ordered / distributed differently?]
[1:39:36][build.bat: Switch to -O2 and -DHANDMADE_SLOW=0 and view the profile]
[1:40:59][handmade_render.cpp: Ignore IGNORED_TIMED_FUNCTION and IGNORED_TIMED_BLOCK]
[1:45:05][handmade_render.cpp: Ignore DrawRectangle and "Pixel Fill"]
[1:47:14][@longboolean][What does OpenGL do when you enable gl_scissor_test? What is it testing for?]