RenderDoc

Last updated
RenderDoc
Developer(s) Baldur Karlsson
Initial release2014-02-25
Repository Renderdoc on Github
Operating system Android, Google Stadia, Linux, Nintendo Switch, Microsoft Windows [1]
Platform Cross-platform
License MIT License
Website renderdoc.org

RenderDoc is a free and open source frame debugger that can be used to analyze single frames generated by other software programs such as games. RenderDoc can provide in-depth analysis of single frames from any application that uses Vulkan, D3D11, OpenGL & OpenGL ES, or D3D12. [2] [3] RenderDoc also allows the user to manipulate a captured frame to inspect different things such as pipeline stage, commands, texture maps, models, assets, and more. [4] [5] [6] RenderDoc can also capture assets outside the view of the game's camera. [7] RenderDoc supports analyzing frame rendering costs on the graphics processing unit. [8]

Optimizing GPU programs is about finding bottlenecks. RenderDoc provides information of the calls on the GPU, the number of invocation of each shader, and the number of primitives and fragments generated. [9]

Baldur Karlsson started RenderDoc development as a spare-time project out of need for a reliable debugger and was then expanded to support more platforms. [10] [11] In 2014 Crytek announced the source code for RenderDoc is released for free. [12] [13] At GDC 2018, AMD announced that Radeon GPU Profiler would include support for RenderDoc. [14] RenderDoc also integrates with well known game engines such as Unity and Unreal Engine. [15] [16] Oculus maintains its own fork of RenderDoc. [17]

Related Research Articles

<span class="mw-page-title-main">OpenGL</span> Cross-platform graphics API

OpenGL is a cross-language, cross-platform application programming interface (API) for rendering 2D and 3D vector graphics. The API is typically used to interact with a graphics processing unit (GPU), to achieve hardware-accelerated rendering.

<span class="mw-page-title-main">Shader</span> Type of program in a graphical processing unit (GPU)

In computer graphics, a shader is a computer program that calculates the appropriate levels of light, darkness, and color during the rendering of a 3D scene—a process known as shading. Shaders have evolved to perform a variety of specialized functions in computer graphics special effects and video post-processing, as well as general-purpose computing on graphics processing units.

<span class="mw-page-title-main">Mesa (computer graphics)</span> Free and open-source library for 3D graphics rendering

Mesa, also called Mesa3D and The Mesa 3D Graphics Library, is an open source implementation of OpenGL, Vulkan, and other graphics API specifications. Mesa translates these specifications to vendor-specific graphics hardware drivers.

<span class="mw-page-title-main">AMD FirePro</span> Brand by AMD

AMD FirePro was AMD's brand of graphics cards designed for use in workstations and servers running professional Computer-aided design (CAD), Computer-generated imagery (CGI), Digital content creation (DCC), and High-performance computing/GPGPU applications. The GPU chips on FirePro-branded graphics cards are identical to the ones used on Radeon-branded graphics cards. The end products differentiate substantially by the provided graphics device drivers and through the available professional support for the software. The product line is split into two categories: "W" workstation series focusing on workstation and primarily focusing on graphics and display, and "S" server series focused on virtualization and GPGPU/High-performance computing.

<span class="mw-page-title-main">AMD Software</span> Device driver and utility software package for AMD GPUs and APUs

AMD Software is a device driver and utility software package for AMD's Radeon graphics cards and APUs. Its graphical user interface is built with Qt and is compatible with 64-bit Windows and Linux distributions.

Web3D, also called 3D Web, is a group of technologies to display and navigate websites using 3D computer graphics.

Nvidia Optimus is a computer GPU switching technology created by Nvidia which, depending on the resource load generated by client software applications, will seamlessly switch between two graphics adapters within a computer system in order to provide either maximum performance or minimum power draw from the system's graphics rendering hardware.

<span class="mw-page-title-main">Radeon HD 7000 series</span> Series of video cards

The Radeon HD 7000 series, codenamed "Southern Islands", is a family of GPUs developed by AMD, and manufactured on TSMC's 28 nm process.

<span class="mw-page-title-main">Radeon HD 8000 series</span> Family of GPUs by AMD

The Radeon HD 8000 series is a family of computer GPUs developed by AMD. AMD was initially rumored to release the family in the second quarter of 2013, with the cards manufactured on a 28 nm process and making use of the improved Graphics Core Next architecture. However the 8000 series turned out to be an OEM rebadge of the 7000 series.

<span class="mw-page-title-main">Radeon 200 series</span> Series of video cards

The Radeon 200 series is a series of graphics processors developed by AMD. These GPUs are manufactured on a 28 nm Gate-Last process through TSMC or Common Platform Alliance.

Heterogeneous System Architecture (HSA) is a cross-vendor set of specifications that allow for the integration of central processing units and graphics processors on the same bus, with shared memory and tasks. The HSA is being developed by the HSA Foundation, which includes AMD and ARM. The platform's stated aim is to reduce communication latency between CPUs, GPUs and other compute devices, and make these various devices more compatible from a programmer's perspective, relieving the programmer of the task of planning the moving of data between devices' disjoint memories.

<span class="mw-page-title-main">Mantle (API)</span> Low-overhead rendering API

Mantle was a low-overhead rendering API targeted at 3D video games. AMD originally developed Mantle in cooperation with DICE, starting in 2013. Mantle was designed as an alternative to Direct3D and OpenGL, primarily for use on personal computers, although Mantle supports the GPUs present in the PlayStation 4 and in the Xbox One. In 2015, Mantle's public development was suspended and in 2019 completely discontinued, as DirectX 12 and the Mantle-derived Vulkan rose in popularity.

CodeXL was an open-source software development tool suite which included a GPU debugger, a GPU profiler, a CPU profiler, a graphics frame analyzer and a static shader/kernel analyzer.

<span class="mw-page-title-main">Godot (game engine)</span> Cross-platform, open-source game engine

Godot is a cross-platform, free and open-source game engine released under the permissive MIT license. It was initially developed in Buenos Aires by Argentine software developers Juan Linietsky and Ariel Manzur for several companies in Latin America prior to its public release in 2014. The development environment runs on many platforms, and can export to several more. It is designed to create both 2D and 3D games targeting PC, mobile, and web platforms and can also be used to develop non-game software, including editors.

Stage3D is an Adobe Flash Player API for rendering interactive 3D graphics with GPU-acceleration, within Flash games and applications. Flash Player or AIR applications written in ActionScript 3 may use Stage3D to render 3D graphics, and such applications run natively on Windows, Mac OS X, Linux, Apple iOS and Google Android. Stage3D is similar in purpose and design to WebGL.

<span class="mw-page-title-main">Metal (API)</span> iOS, macOS, and tvOS graphics rendering API

Metal is a low-level, low-overhead hardware-accelerated 3D graphic and compute shader API created by Apple, debuting in iOS 8. Metal combines functions similar to OpenGL and OpenCL in one API. It is intended to improve performance by offering low-level access to the GPU hardware for apps on iOS, iPadOS, macOS, and tvOS. It can be compared to low-level APIs on other platforms such as Vulkan and DirectX 12.

<span class="mw-page-title-main">Radeon 300 series</span> Series of video cards

The Radeon 300 series is a series of graphics processors developed by AMD. All of the GPUs of the series are produced in 28 nm format and use the Graphics Core Next (GCN) micro-architecture.

Vulkan is a low-level, low-overhead cross-platform API and open standard for 3D graphics and computing. It was intended to address the shortcomings of OpenGL, and allow developers more control over the GPU. It is designed to support a wide variety of GPUs, CPUs and operating systems, and it is also designed to work with modern multi-core CPUs.

The Radeon 400 series is a series of graphics processors developed by AMD. These cards were the first to feature the Polaris GPUs, using the new 14 nm FinFET manufacturing process, developed by Samsung Electronics and licensed to GlobalFoundries. The Polaris family initially included two new chips in the Graphics Core Next (GCN) family. Polaris implements the 4th generation of the Graphics Core Next instruction set, and shares commonalities with the previous GCN microarchitectures.

<span class="mw-page-title-main">GPUOpen</span> Middleware software suite

GPUOpen is a middleware software suite originally developed by AMD's Radeon Technologies Group that offers advanced visual effects for computer games. It was released in 2016. GPUOpen serves as an alternative to, and a direct competitor of Nvidia GameWorks. GPUOpen is similar to GameWorks in that it encompasses several different graphics technologies as its main components that were previously independent and separate from one another. However, GPUOpen is partially open source software, unlike GameWorks which is proprietary and closed.

References

  1. "RenderDoc" . Retrieved 2022-10-08.
  2. "This Is How A Single Frame Is Rendered In A Modern 3D Engine". 15 March 2015. Archived from the original on March 15, 2015.
  3. Gach, Ethan (10 September 2016). "Picking Apart A Single Frame In DOOM".
  4. "LearnOpenGL - Debugging".
  5. "Watch the footy play out on your dining table thanks to AI and augmented reality". 25 June 2018.
  6. "Bringing Galaxy on Fire 3 to Vulkan: Vulkan on Android". 16 October 2017.
  7. "GPU Performance for Game Artists". 5 July 2017.
  8. "Where Are You Spending Your GPU Performance Budget?". 19 May 2020.
  9. "Profiling and Optimization of Large Biomolecular Scenes" (PDF).
  10. "Key Release: Crytek's graphics debugger RenderDoc | Game Development Tools & Tech | Develop". Archived from the original on 2014-04-25. Retrieved 2014-04-25.
  11. "RenderDoc gains PowerVR support". 9 March 2018.
  12. "Crytek is giving away its new Renderdoc graphics debugger for free". 27 February 2014.
  13. "Crytek releases RenderDoc source code". MCV. 8 May 2014.
  14. "AMD at GDC 2018". 21 March 2018.
  15. "Unity - Manual: RenderDoc Integration".
  16. "RenderDoc".
  17. "Use RenderDoc for Oculus for GPU Profiling: Unity | Oculus Developers".