Run-Time Scene-Graph Construction from Geographic Source Data
Tim Woodard Chief Technology Officer Diamond Visionics www.dvcsim.com
GPU Technology Conference 2016
from Geographic Source Data Tim Woodard Chief Technology Officer - - PowerPoint PPT Presentation
Run-Time Scene-Graph Construction from Geographic Source Data Tim Woodard Chief Technology Officer Diamond Visionics www.dvcsim.com GPU Technology Conference 2016 Three-Headed Monster 2 Evolution of Simulation 3 Source to Scene Pipeline
GPU Technology Conference 2016
2
3
4
Scene Graph
Pre-computed LODs
5
https://vimeo.com/113736724
6
7
8
Scene Graph
Pre-computed LODs
Defer commitment to as late as possible
Pre-compiling data results in expansion and loss of abstraction Pre-compiling makes changing data and/or rendering fidelity costly Pre-compiling does not
Use data structures that are memory-friendly
Not always obvious, can go against academic guidelines
Use parallelism effectively
Minimal locking of shared resources
Eliminate driver overhead
9
Scene Graph
// Display lists
glNewList(list_id,GL_COMPILE); // ...Call draw commands glEndList(); // Draw display list with one command glCallList(list_id);
11
12
From: www.khronos.org/vulkan
// Example of a state command typedef struct { GLuint header; float scale; float bias; } PolygonOffsetCommandNV; // Example of a draw command typedef struct { GLuint header; GLenum mode; GLuint count; GLuint instanceCount; GLuint first; GLuint baseInstance; } DrawArraysInstancedCommandNV;
char tokens[]; // ... Pack state and draw commands into tokens array // Initialize token buffer glGenBuffers(1, &token_id); glNamedBufferDataEXT(token_id, sizeof(tokens), tokens, ...); // Draw tokens glDrawCommandsNV(GL_TRIANGLES, id, offsets, sizes, num_tokens);
14
Going from K6000 to M6000, saw 100% performance improvement Test scene, 5.66M polygons, full-scene shadows Became CPU-bound
Modern OpenGL, CPU times dropped from 9.8 to 7.2ms
Better scene graph organization: 7.2 to 4.5ms!
Able to increase fidelity NOW Ready for Pascal!
15
16
Integration with NVIDIA WaveWorks
17
OpenGL and Vulkan
Please complete the Presenter Evaluation sent to you by email