User Tools

Site Tools


hpl3:engine:graphics_debug

Link to this comparison view

Both sides previous revision Previous revision
Next revision
Previous revision
hpl3:engine:graphics_debug [2013/01/25 12:05]
nebej [Previous Frame Occlusion]
hpl3:engine:graphics_debug [2015/09/17 10:54] (current)
ian.thomas [Debug texts]
Line 1: Line 1:
-====== ​ ======+====== ​Graphics Debug ======
  
  
Line 13: Line 13:
 ===== Debug texts ===== ===== Debug texts =====
  
- +The important checkboxes here are Show FPS, Show Memory Usage and Show Render Info. These will tell you how costly the rendering of the scene is.
-The important checkboxes here are Show FPS, Show Memory Usage and Show Render Info. These will tell you how costly +
- +
- +
-the rendering of the scene is. +
  
 ==== Show FPS ==== ==== Show FPS ====
Line 45: Line 40:
  
 To be able to find which parts of the scene that takes up the most performance you can use these special render modes. To be able to find which parts of the scene that takes up the most performance you can use these special render modes.
 +
  
 ==== Previous Frame Occlusion ==== ==== Previous Frame Occlusion ====
Line 55: Line 51:
  
  
-On the left image you can see what the player can see. It looks like only a few walls, some lockers and a door is rendered. On the right the camera has been moved back and it is now possible to see all the objects that get rendered ​on this frame. ​lot more than what it looks like on the left.+In the image to the left you can see what the player can see. It looks like only a few walls, some lockers and a door is rendered. On the right the camera has been moved back and it is now possible to see all the objects that get rendered this frame. ​There are a lot more than what it looks like in the left picture.
  
 ==== GBuffer ==== ==== GBuffer ====
  
  
-{{:​hpl3:​engine:​g_buffer.png?​1280x720}}+Shows what the frame buffers look like. These are then used by the lights to shade the scene. It can be used to check if a model has incorrect textures or normals. 
 + 
 + 
 +{{:​hpl3:​engine:​g_buffer.png?​nolink&1280x720}}
  
  
 ==== Light Complexity ==== ==== Light Complexity ====
 +
 +
 +Light complexity shows how expensive the lighting of a scene is. It creates a heatmap on the screen to show how much power each light takes. Overdraw of light is not very expensive, it is about twice as expensive as a translucent object. When the light has a shadow map it becomes much more expensive. The complexity of a shadow casting light is based on how many draw calls and triangles are required to generate the shadow map.
  
  
 {{:​hpl3:​engine:​light_complexity.png?​nolink&​1280x360}} {{:​hpl3:​engine:​light_complexity.png?​nolink&​1280x360}}
 +
 +
 +The red areas on the right image is not good. There seem to be multiple large (in screen space) shadow casting lights in this scene.
  
  
 {{:​hpl3:​engine:​light_complexity_no_shadows.png?​nolink&​640x360}} {{:​hpl3:​engine:​light_complexity_no_shadows.png?​nolink&​640x360}}
 +
 +
 +To test if most of the complexity comes from shadows you can toggle the "Draw Shadows"​ checkbox on the Debug Menu. Here is what the scene complexity looks like without shadows.
 +
  
 ==== Overdraw ==== ==== Overdraw ====
  
  
-{{:​hpl3:​engine:​translucent_overdraw.png?​1280x360}}+Creates a heatmap that shows how much translucent overdraw each pixel receives. Overdraw is how many times a pixel gets rendered to. The goal should be that no part of the screen is red. It does not matter that much if only a small part is. 
 + 
 + 
 +    * Green: 0-16 
 +    * Yellow: 16-32 
 +    * Red: 32-48+ 
 + 
 + 
 +{{:​hpl3:​engine:​translucent_overdraw.png?​nolink&1280x360}} 
 + 
 + 
 +On the left you can see the scene rendered normally. The fog particles are barely visible here. On the right the pixel overdraw is rendered. The red areas show that more than 32 translucent planes are rendered, which is not good.
  
hpl3/engine/graphics_debug.1359115554.txt.gz · Last modified: 2013/01/25 12:05 by nebej