Use the GDC 2021 Session Viewer to browse and sort the ever-growing list of sessions by day, time, pass type, topic, and format. All registered attendees will be able to build their personal schedule directly within the event platform, once live early July 2021. All times are listed in Pacific Time.
Artem Kovalovs (Graphics & Game Programmer, Naughty Dog, LLC)
Date: Wednesday, July 21
Time: 3:40pm - 4:10pm
Pass Type: All Access Pass, Core Pass
Vault Recording: Video
Audience Level: N/A: I prefer to present live on-site but I am open to delivering a virtual presentation
This session describes new executable/core dump debugging tools developed at Naughty Dog and most recently used during production of The Last of Us Part II. These tools are built on top of Microsoft Visual Studio debugger and allow for a scriptable interface to process memory and debugging. Game engines are extremely complicated executables with many threads/jobs running in parallel, racing data accesses, passing pointers around, iterating through many collections of complex data, etc. Each crash or erroneous condition is a digital forensic mystery for the programmer.
This talk will describe the development and use of the debugging tools that make it easier for programmers to solve some of these mysteries. The tools allow us to script game specific conditions, analyze variables, parse memory, etc. with interactive and iterative python scripting. Case studies will be shown on where and how these tools were used to track down complex errors and memory stomps in crash dumps.
This session is meant to show the programming community a new way programs could be debugged. Concepts shown in the session will allow programmers to improve the development environments for their projects and sometimes save a lot of time tracking down complicated issues such as memory stomps.
This session is meant for programmers who work with lower level code such as C++ and spend time debugging complicated problems.