VR Rendering Improvements Featuring Autodesk VRED
|
|
- Dwayne Dixon
- 6 years ago
- Views:
Transcription
1 GPU Technology Conference 2017 VR Rendering Improvements Featuring Autodesk VRED Michael Nikelsky Sr. Principal Engineer, Autodesk Ingo Esser Sr. Engineer, Developer Technology, NVIDIA 2017 Autodesk
2 AGENDA NVIDIA VRWorks at a glance Autodesk VRED VR Rendering Improvements 2
3 NVIDIA VRWORKS Comprehensive SDK for VR Developers GRAPHICS HEADSET TOUCH & PHYSICS AUDIO PROFESSIONAL VIDEO 3
4 NVIDIA VRWORKS Comprehensive SDK for VR Developers GRAPHICS HEADSET TOUCH & PHYSICS AUDIO PROFESSIONAL VIDEO 4
5 GRAPHICS PIPELINE VR Workloads 124M Pix/s N vertices 60 Hz Preprocessing x Geometric Pipeline 457M Pix/s 2N vertices 90 Hz ~3.6x Rasterization Fragment Shader Postprocessing
6 NVIDIA VRWORKS Comprehensive SDK for VR Developers GRAPHICS HEADSET TOUCH & PHYSICS AUDIO PROFESSIONAL VIDEO 6
7 SINGLE PASS STEREO Traditional Rendering Render eyes separately Doubles CPU and GPU load 7
8 SINGLE PASS STEREO Using SPS to improve rendering performance Single Pass Stereo uses Simultaneous Multi-Projection architecture Draw geometry only once Vertex/Geometry stage runs once Outputs two positions for left/right Only rasterization is performed per-view 8
9 SINGLE PASS STEREO OpenGL In OpenGL via GL_NV_stereo_view_rendering Create texture array for rendering left and right eye simultaneously No other changes needed, shaders perform SPS 9
10 SINGLE PASS STEREO Vertex Shader Calculate projection space position proj_pos = proj * view * model * inposition; Output both positions via different builtin variables, only x component may differ gl_position = proj_pos + vec4(offset, 0, 0, 0); gl_secondarypositionnv = proj_pos vec4(offset, 0, 0, 0); Use declaration and value of gl_layer to route output to layers 0 and 1 of tex array layout(secondary_view_offset=1) out highp int gl_layer; gl_layer = 0; 10
11 GRAPHICS PIPELINE Single Pass Stereo Performance Results Single Pass Stereo brings benefits in geometry bound scenarios Heavy fragment shaders will reduce scaling SPS Preprocessing Geometric Pipeline Rasterization Fragment Shader Postprocessing 11
12 NVIDIA VRWORKS Comprehensive SDK for VR Developers GRAPHICS HEADSET TOUCH & PHYSICS AUDIO PROFESSIONAL VIDEO 12
13 HMD OPTICS Countering Lens Distortion Displayed Image Optics User s View 13
14 HMD RENDERING Oversampling near the borders Rendered Image Displayed Image 14
15 LENS MATCHED SHADING Four Viewports Original Image LMS Image 15
16 LENS MATCHED SHADING OpenGL In OpenGL via GL_NV_clip_space_w_scaling extension Set up four viewports, rendering full resolution Viewport 0 Scissor 0 Set scissors to each quadrant glscissorarray(0, 4, scissors); W scaling parameters glviewportpositionwscalenv(i, Wx, Wy); 16
17 LENS MATCHED SHADING Shaders gl_viewportmask[0] controls broadcasting of vertices and primitives Viewport 0 Scissor 0 Inefficient set mask in vertex shader gl_viewportmask[0] = 15; More efficient filter in pass through geometry shader Determine quadrant(s) for each primitive Set bit(s) in gl_viewportmask[0] 17
18 LENS MATCHED SHADING Scaling and Unscaling HMD runtime can t consume w warped images yet, need to unscale before submit w/2, h/2 scale = 1 1 w x P x w y P y Quadrant 0 P P = scale P unscale = P = unscale P 1 1+ w x P x + w y P y scale P unscale 0,0 18
19 LENS MATCHED SHADING Extreme example, Wx = 2.0 Wy =
20 LENS MATCHED SHADING Extreme example, Wx = 2.0 Wy =
21 GRAPHICS PIPELINE Lens Matched Shading Results LMS can improve performance of Raster / Fragment stage Trade-off between quality and performance SPS Preprocessing Geometric Pipeline LMS Rasterization Fragment Shader Postprocessing 21
22 NVIDIA VRWORKS Comprehensive SDK for VR Developers GRAPHICS HEADSET TOUCH & PHYSICS AUDIO PROFESSIONAL VIDEO 22
23 HMD RENDERING VR SLI functionality VR SLI HMD rendering Prepare scene Upload left view data to GPU0 Upload right view data to GPU1 Render scene on both GPUs Transfer texture GL allocations & uploads are broadcast Separate data upload GL render calls are broadcast Efficient texture copies Submit to HMD 23
24 VR SLI Updates between NVX and NV extensions Command & data broadcast BufferSubData to specific GPU CopyImageSubData & CopyBufferSubData GPU-GPU Framebuffer Blit Global barrier & directed sync functions GPU Masks Per-GPU sample locations Per-GPU queries 24
25 Left view data VR SLI Broadcast allocations & uploads tex0 tex1 Right view data Geometry Parameters Textures tex0 tex1 25
26 VR SLI Broadcast allocations & uploads for( auto i = 0; i < 2; ++i ) { scenedata.viewmatrix = view[i]; scenedata.viewprojmatrix = proj[i] * view[i]; Per-eye data glmulticastbuffersubdatanv ( 1<<i, sceneubo, 0, sizeof(scenedata), &scenedata GPU Mask Same UBO Different data } ); 26
27 VR SLI Broadcast render commands Application sends draw commands only once Commands are broadcast between GPUs tex0 tex1 Render tex0 tex1 27
28 VR SLI Broadcast render commands tex0 L tex1 glbindframebuffer(..., renderfbo ); glframebuffertexture2d(..., tex0, 0 ); render(); tex0 on both GPUs render on both GPUs tex0 R tex1 28
29 VR SLI Texture transfer Copy function allows direct copy between GPUs Avoids CPU copy, transfer directly via PCIe tex0 L tex1 R glmulticastwaitsyncnv( 0, GPUMASK_1 ); glmulticastcopyimagesubdatanv( 1, 1<<0, tex0,..., tex1,..., width, height, 1); glmulticastwaitsyncnv( 1, GPUMASK_0 ); GPU 1 wait for GPU 0 (Target is ready) copy GPU 1 to GPU0 GPU 0 wait for GPU 1 (Copy is done) tex0 R tex1 29
30 GRAPHICS PIPELINE VR SLI Results VR SLI covers a wide variety of workloads Preprocessing Perfect load balancing between left/right eye and two GPUs Copy overhead and view independent workloads limit scaling VR SLI SPS Geometric Pipeline Some pre- and postprocessing can be distributed LMS Rasterization Fragment Shader Postprocessing 30
31 TRY IT OUT! NVIDIA VRWorks SDK provides OpenGL, Direct3D & Vulkan samples developer.nvidia.com/vrworks Extensions
32 AGENDA NVIDIA VRWorks at a glance Autodesk VRED VR Rendering Improvements 32
33 Safe harbor statement We may make statements regarding planned or future development efforts for our existing or new products and services. These statements are not intended to be a promise or guarantee of future availability of products, services or features but merely reflect our current plans and based on factors currently known to us. These planned and future development efforts may change without notice. Purchasing decisions should not be made based upon reliance on these statements. These statements are being made as of May, 9 th 2017 and we assume no obligation to update these forward-looking statements to reflect events that occur or circumstances that exist or change after the date on which they were made. If this presentation is reviewed after May, 9 th 2017, these statements may no longer contain current or accurate information.
34 Autodesk VRED Professional Visualization and virtual prototyping tool Focus on Automotive High Quality OpenGL and raytracing rendering VR support Powerwalls, Cave Oculus Rift HTC Vive Image courtesy of Porsche AG
35 Requirements Engineering Datasets 30-70M triangles inside the view frustum 3-5k meshes 10-20k scenegraph nodes materials Realistic appearence Measured materials No data reduction possible Image courtesy of Porsche AG
36 Single Pass Stereo Render to layered texture Use latest drivers Don t write to individual layers Adjust Frustum culling to account for both eyes Setup uniform buffers with matrices for both eyes Set layout(secondary_view_offset = 1) out int gl_layer Use gl_layer to access correct matrices for shading Write gl_secondarypositionnv in vertex or geometry shader
37 Lens Matched Shading Not yet available in VRED Divide view into 4 quadrants Set lens coefficients for each quadrant Setup scissor masks for each viewport Render to all viewports Unproject the distortion
38 Lens Matched Shading Need to avoid rendering outside the visible area glwindowrectanglesext Hidden Area Mesh Need to calculate which viewports a triangle touches Use pass through geometry shader for best performance Requires different shader for each geometry type
39 Datasets used for testing Small Dataset ~5.5 Mtriangles, ~900 meshes, 2.5k nodes Medium Dataset ~34 Mtriangles, ~3k meshes, 19k nodes Large Dataset ~63 Mtriangles, ~5k meshes, 17k nodes Measurements done using 2 Quadro P6000 4x Multisampling + Pixelfilter HTC Vive
40 Frametime Milliseconds Results 30,0 29,0 Small Dataset 22,5 23,0 Medium Dataset Large Dataset 20,0 16,6 17,1 15,3 15,0 15,0 10,0 10,0 9,5 8,1 7,8 0,0 Baseline Single Pass Stereo Lens Matched Shading LMS + SPS
41 Occlusion Culling Shader based occlusion culling Algorithm Render all geometries visible in the previous frame Disable Color and Depth writes Rasterize bounding boxes of all geometries Record visible bounding boxes Read back results Render remaining visible geometries
42 Why the readback? Original algorithm relies on bindless buffers and textures Requires custom memory management Few buffers shared by many objects Difficult to handle out of memory scenarios CPU does not know what is visible Requires binding of all shaders and geometries twice Binding costs can eliminate performance gains Sorted rendering difficult
43 Frametime Milliseconds Occlusion Culling results 30,0 Small Dataset 22,5 Medium Dataset Large Dataset 20,0 16,6 17,9 17,1 14,5 13,3 10,0 10,0 7,0 5,5 0,0 Baseline Occlusion Culling LMS + SPS + Occlusion Culling
44 VR SLI Rendering For details see GTC 2016 talk: Integrating VR SLI into Autodesk VRED Use one GPU per eye Bind rendersurface Setup Camera Buffer for both eyes Render the scene Copy rendersurface from GPU1 to GPU0 Submit rendersurfaces to HMD New NV_gpu_multicast extension allows more flexibility Occlusion Culling
45 Frametime Milliseconds VR SLI results 30,0 Small Dataset 22,5 Medium Dataset Large Dataset 20,0 16,6 10,0 10,0 11,2 8,9 5,8 6,0 5,8 5,6 5,6 5,7 6,0 0,0 Baseline SLI SLI + Culling SLI + LMS + Culling
46 Conclusion and final thoughts Using extensions can greatly improve performance Not every extension always works Test out different options SLI still the best option Asynchronous Reprojection/Timewarp helps a lot
47 Autodesk and the Autodesk logo are registered trademarks or trademarks of Autodesk, Inc., and/or its subsidiaries and/or affiliates in the USA and/or other countries. All other brand names, product names, or trademarks belong to their respective holders. Autodesk reserves the right to alter product and services offerings, and specifications and pricing at any time without notice, and is not responsible for typographical or graphical errors that may appear in this document Autodesk. All rights reserved.
PROFESSIONAL VR: AN UPDATE. Robert Menzel, Ingo Esser GTC 2018, March
PROFESSIONAL VR: AN UPDATE Robert Menzel, Ingo Esser GTC 2018, March 26 2018 NVIDIA VRWORKS Comprehensive SDK for VR Developers GRAPHICS HEADSET TOUCH & PHYSICS AUDIO PROFESSIONAL VIDEO 2 NVIDIA VRWORKS
More informationVULKAN TECHNOLOGY UPDATE Christoph Kubisch, NVIDIA GTC 2017 Ingo Esser, NVIDIA
VULKAN TECHNOLOGY UPDATE Christoph Kubisch, NVIDIA GTC 2017 Ingo Esser, NVIDIA Device Generated Commands AGENDA API Interop VR in Vulkan NSIGHT Support 2 VK_NVX_device_generated_commands 3 DEVICE GENERATED
More informationSLICING THE WORKLOAD MULTI-GPU OPENGL RENDERING APPROACHES
SLICING THE WORKLOAD MULTI-GPU OPENGL RENDERING APPROACHES INGO ESSER NVIDIA DEVTECH PROVIZ OVERVIEW Motivation Tools of the trade Multi-GPU driver functions Multi-GPU programming functions Multi threaded
More informationRasterization Overview
Rendering Overview The process of generating an image given a virtual camera objects light sources Various techniques rasterization (topic of this course) raytracing (topic of the course Advanced Computer
More informationThe Application Stage. The Game Loop, Resource Management and Renderer Design
1 The Application Stage The Game Loop, Resource Management and Renderer Design Application Stage Responsibilities 2 Set up the rendering pipeline Resource Management 3D meshes Textures etc. Prepare data
More informationRendering Objects. Need to transform all geometry then
Intro to OpenGL Rendering Objects Object has internal geometry (Model) Object relative to other objects (World) Object relative to camera (View) Object relative to screen (Projection) Need to transform
More informationBringing Vulkan to VR. Cass Everitt, Oculus
Bringing Vulkan to VR Cass Everitt, Oculus A Presentation in Two Acts The Graphics-API-Agnostic Design of the VrApi The Vulkan-Samples atw Sample Family as Proving Grounds Act One The Graphics-API-Agnostic
More informationScanline Rendering 2 1/42
Scanline Rendering 2 1/42 Review 1. Set up a Camera the viewing frustum has near and far clipping planes 2. Create some Geometry made out of triangles 3. Place the geometry in the scene using Transforms
More informationPipeline Operations. CS 4620 Lecture Steve Marschner. Cornell CS4620 Spring 2018 Lecture 11
Pipeline Operations CS 4620 Lecture 11 1 Pipeline you are here APPLICATION COMMAND STREAM 3D transformations; shading VERTEX PROCESSING TRANSFORMED GEOMETRY conversion of primitives to pixels RASTERIZATION
More informationPipeline Operations. CS 4620 Lecture 14
Pipeline Operations CS 4620 Lecture 14 2014 Steve Marschner 1 Pipeline you are here APPLICATION COMMAND STREAM 3D transformations; shading VERTEX PROCESSING TRANSFORMED GEOMETRY conversion of primitives
More informationX. GPU Programming. Jacobs University Visualization and Computer Graphics Lab : Advanced Graphics - Chapter X 1
X. GPU Programming 320491: Advanced Graphics - Chapter X 1 X.1 GPU Architecture 320491: Advanced Graphics - Chapter X 2 GPU Graphics Processing Unit Parallelized SIMD Architecture 112 processing cores
More informationMany rendering scenarios, such as battle scenes or urban environments, require rendering of large numbers of autonomous characters.
1 2 Many rendering scenarios, such as battle scenes or urban environments, require rendering of large numbers of autonomous characters. Crowd rendering in large environments presents a number of challenges,
More informationCS4620/5620: Lecture 14 Pipeline
CS4620/5620: Lecture 14 Pipeline 1 Rasterizing triangles Summary 1! evaluation of linear functions on pixel grid 2! functions defined by parameter values at vertices 3! using extra parameters to determine
More informationRendering. Converting a 3D scene to a 2D image. Camera. Light. Rendering. View Plane
Rendering Pipeline Rendering Converting a 3D scene to a 2D image Rendering Light Camera 3D Model View Plane Rendering Converting a 3D scene to a 2D image Basic rendering tasks: Modeling: creating the world
More informationC P S C 314 S H A D E R S, O P E N G L, & J S RENDERING PIPELINE. Mikhail Bessmeltsev
C P S C 314 S H A D E R S, O P E N G L, & J S RENDERING PIPELINE UGRAD.CS.UBC.C A/~CS314 Mikhail Bessmeltsev 1 WHAT IS RENDERING? Generating image from a 3D scene 2 WHAT IS RENDERING? Generating image
More informationParallelizing Graphics Pipeline Execution (+ Basics of Characterizing a Rendering Workload)
Lecture 2: Parallelizing Graphics Pipeline Execution (+ Basics of Characterizing a Rendering Workload) Visual Computing Systems Analyzing a 3D Graphics Workload Where is most of the work done? Memory Vertex
More informationInside VR on Mobile. Sam Martin Graphics Architect GDC 2016
Inside VR on Mobile Sam Martin Graphics Architect GDC 2016 VR Today Emerging technology Main mobile VR ecosystems Google Cardboard Samsung GearVR In this talk: Latency Multiple views Performance tuning
More informationRendering Grass with Instancing in DirectX* 10
Rendering Grass with Instancing in DirectX* 10 By Anu Kalra Because of the geometric complexity, rendering realistic grass in real-time is difficult, especially on consumer graphics hardware. This article
More informationWorking with Metal Overview
Graphics and Games #WWDC14 Working with Metal Overview Session 603 Jeremy Sandmel GPU Software 2014 Apple Inc. All rights reserved. Redistribution or public display not permitted without written permission
More informationGetting fancy with texture mapping (Part 2) CS559 Spring Apr 2017
Getting fancy with texture mapping (Part 2) CS559 Spring 2017 6 Apr 2017 Review Skyboxes as backdrops Credits : Flipmode 3D Review Reflection maps Credits : NVidia Review Decal textures Credits : andreucabre.com
More informationShaders. Slide credit to Prof. Zwicker
Shaders Slide credit to Prof. Zwicker 2 Today Shader programming 3 Complete model Blinn model with several light sources i diffuse specular ambient How is this implemented on the graphics processor (GPU)?
More informationGraphics Performance Optimisation. John Spitzer Director of European Developer Technology
Graphics Performance Optimisation John Spitzer Director of European Developer Technology Overview Understand the stages of the graphics pipeline Cherchez la bottleneck Once found, either eliminate or balance
More informationVulkan (including Vulkan Fast Paths)
Vulkan (including Vulkan Fast Paths) Łukasz Migas Software Development Engineer WS Graphics Let s talk about OpenGL (a bit) History 1.0-1992 1.3-2001 multitexturing 1.5-2003 vertex buffer object 2.0-2004
More informationParallelizing Graphics Pipeline Execution (+ Basics of Characterizing a Rendering Workload)
Lecture 2: Parallelizing Graphics Pipeline Execution (+ Basics of Characterizing a Rendering Workload) Visual Computing Systems Today Finishing up from last time Brief discussion of graphics workload metrics
More informationAccelerating Realism with the (NVIDIA Scene Graph)
Accelerating Realism with the (NVIDIA Scene Graph) Holger Kunz Manager, Workstation Middleware Development Phillip Miller Director, Workstation Middleware Product Management NVIDIA application acceleration
More informationEvolution of GPUs Chris Seitz
Evolution of GPUs Chris Seitz Overview Concepts: Real-time rendering Hardware graphics pipeline Evolution of the PC hardware graphics pipeline: 1995-1998: Texture mapping and z-buffer 1998: Multitexturing
More informationComputer graphics 2: Graduate seminar in computational aesthetics
Computer graphics 2: Graduate seminar in computational aesthetics Angus Forbes evl.uic.edu/creativecoding/cs526 Homework 2 RJ ongoing... - Follow the suggestions in the Research Journal handout and find
More informationPerformance OpenGL Programming (for whatever reason)
Performance OpenGL Programming (for whatever reason) Mike Bailey Oregon State University Performance Bottlenecks In general there are four places a graphics system can become bottlenecked: 1. The computer
More informationPowerVR Hardware. Architecture Overview for Developers
Public Imagination Technologies PowerVR Hardware Public. This publication contains proprietary information which is subject to change without notice and is supplied 'as is' without warranty of any kind.
More informationLecture 2. Shaders, GLSL and GPGPU
Lecture 2 Shaders, GLSL and GPGPU Is it interesting to do GPU computing with graphics APIs today? Lecture overview Why care about shaders for computing? Shaders for graphics GLSL Computing with shaders
More informationOptimisation. CS7GV3 Real-time Rendering
Optimisation CS7GV3 Real-time Rendering Introduction Talk about lower-level optimization Higher-level optimization is better algorithms Example: not using a spatial data structure vs. using one After that
More informationReal - Time Rendering. Graphics pipeline. Michal Červeňanský Juraj Starinský
Real - Time Rendering Graphics pipeline Michal Červeňanský Juraj Starinský Overview History of Graphics HW Rendering pipeline Shaders Debugging 2 History of Graphics HW First generation Second generation
More informationOpenGL Status - November 2013 G-Truc Creation
OpenGL Status - November 2013 G-Truc Creation Vendor NVIDIA AMD Intel Windows Apple Release date 02/10/2013 08/11/2013 30/08/2013 22/10/2013 Drivers version 331.10 beta 13.11 beta 9.2 10.18.10.3325 MacOS
More informationMoving Mobile Graphics Advanced Real-time Shadowing. Marius Bjørge ARM
Moving Mobile Graphics Advanced Real-time Shadowing Marius Bjørge ARM Shadow algorithms Shadow filters Results Agenda SHADOW ALGORITHMS Shadow Algorithms Shadow mapping Depends on light type Directional,
More informationOptimizing and Profiling Unity Games for Mobile Platforms. Angelo Theodorou Senior Software Engineer, MPG Gamelab 2014, 25 th -27 th June
Optimizing and Profiling Unity Games for Mobile Platforms Angelo Theodorou Senior Software Engineer, MPG Gamelab 2014, 25 th -27 th June 1 Agenda Introduction ARM and the presenter Preliminary knowledge
More informationAchieving High-performance Graphics on Mobile With the Vulkan API
Achieving High-performance Graphics on Mobile With the Vulkan API Marius Bjørge Graphics Research Engineer GDC 2016 Agenda Overview Command Buffers Synchronization Memory Shaders and Pipelines Descriptor
More informationDirect Rendering of Trimmed NURBS Surfaces
Direct Rendering of Trimmed NURBS Surfaces Hardware Graphics Pipeline 2/ 81 Hardware Graphics Pipeline GPU Video Memory CPU Vertex Processor Raster Unit Fragment Processor Render Target Screen Extended
More informationCoding OpenGL ES 3.0 for Better Graphics Quality
Coding OpenGL ES 3.0 for Better Graphics Quality Part 2 Hugo Osornio Rick Tewell A P R 1 1 t h 2 0 1 4 TM External Use Agenda Exercise 1: Array Structure vs Vertex Buffer Objects vs Vertex Array Objects
More informationDEFERRED RENDERING STEFAN MÜLLER ARISONA, ETH ZURICH SMA/
DEFERRED RENDERING STEFAN MÜLLER ARISONA, ETH ZURICH SMA/2013-11-04 DEFERRED RENDERING? CONTENTS 1. The traditional approach: Forward rendering 2. Deferred rendering (DR) overview 3. Example uses of DR:
More informationProgrammable GPUs. Real Time Graphics 11/13/2013. Nalu 2004 (NVIDIA Corporation) GeForce 6. Virtua Fighter 1995 (SEGA Corporation) NV1
Programmable GPUs Real Time Graphics Virtua Fighter 1995 (SEGA Corporation) NV1 Dead or Alive 3 2001 (Tecmo Corporation) Xbox (NV2A) Nalu 2004 (NVIDIA Corporation) GeForce 6 Human Head 2006 (NVIDIA Corporation)
More informationJomar Silva Technical Evangelist
Jomar Silva Technical Evangelist Agenda Introduction Intel Graphics Performance Analyzers: what is it, where do I get it, and how do I use it? Intel GPA with VR What devices can I use Intel GPA with and
More informationCS 498 VR. Lecture 20-4/11/18. go.illinois.edu/vrlect20
CS 498 VR Lecture 20-4/11/18 go.illinois.edu/vrlect20 Review from last lecture Texture, Normal mapping Three types of optical distortion? How does texture mipmapping work? Improving Latency and Frame Rates
More informationGPU Memory Model. Adapted from:
GPU Memory Model Adapted from: Aaron Lefohn University of California, Davis With updates from slides by Suresh Venkatasubramanian, University of Pennsylvania Updates performed by Gary J. Katz, University
More informationRendering and Animation for Building Design with 3ds Max
Rendering and Animation for Building Design with 3ds Max Matt Dillon Vice President, Technical Services Enceptia Join us on Twitter: #AU2014 Agenda Setting up a 3ds Max Scene Exposure Control, Cameras
More informationReal-Time Graphics Architecture
Real-Time Graphics Architecture Kurt Akeley Pat Hanrahan http://www.graphics.stanford.edu/courses/cs448a-01-fall Geometry Outline Vertex and primitive operations System examples emphasis on clipping Primitive
More informationAt NVIDIA, being a GPU company, clearly rendering performance is the area we re going to concentrate on, as that s where we can help the most.
There are lots of hard problems to solve in VR in headset design, in input devices, in rendering performance, and in designing VR-friendly user experiences, just to name a few areas. At NVIDIA, being a
More informationNext-Generation Graphics on Larrabee. Tim Foley Intel Corp
Next-Generation Graphics on Larrabee Tim Foley Intel Corp Motivation The killer app for GPGPU is graphics We ve seen Abstract models for parallel programming How those models map efficiently to Larrabee
More informationNVSG NVIDIA Scene Graph
NVSG NVIDIA Scene Graph Leveraging the World's Fastest Scene Graph Agenda Overview NVSG Shader integration Interactive ray tracing Multi-GPU support NVIDIA Scene Graph (NVSG) The first cross-platform scene
More informationLOD and Occlusion Christian Miller CS Fall 2011
LOD and Occlusion Christian Miller CS 354 - Fall 2011 Problem You want to render an enormous island covered in dense vegetation in realtime [Crysis] Scene complexity Many billions of triangles Many gigabytes
More informationToday. Rendering - III. Outline. Texturing: The 10,000m View. Texture Coordinates. Specifying Texture Coordinates in GL
Today Rendering - III CS148, Summer 2010 Graphics Pipeline and Programmable Shaders Artist Workflow Siddhartha Chaudhuri 1 2 Outline Texturing: The 10,000m View Intro to textures The fixed-function graphics
More informationProgramming Guide. Aaftab Munshi Dan Ginsburg Dave Shreiner. TT r^addison-wesley
OpenGUES 2.0 Programming Guide Aaftab Munshi Dan Ginsburg Dave Shreiner TT r^addison-wesley Upper Saddle River, NJ Boston Indianapolis San Francisco New York Toronto Montreal London Munich Paris Madrid
More informationCS451Real-time Rendering Pipeline
1 CS451Real-time Rendering Pipeline JYH-MING LIEN DEPARTMENT OF COMPUTER SCIENCE GEORGE MASON UNIVERSITY Based on Tomas Akenine-Möller s lecture note You say that you render a 3D 2 scene, but what does
More informationTips and Tricks to Get the Most out of Your Virtual-Reality Experiences in Stingray
Tips and Tricks to Get the Most out of Your Virtual-Reality Experiences in Stingray Olivier Dionne Software Development Manager Benjamin Slapcoff Software Engineer Andrew Grant Product Manager Join the
More informationAdaptive Point Cloud Rendering
1 Adaptive Point Cloud Rendering Project Plan Final Group: May13-11 Christopher Jeffers Eric Jensen Joel Rausch Client: Siemens PLM Software Client Contact: Michael Carter Adviser: Simanta Mitra 4/29/13
More informationCS 4620 Program 3: Pipeline
CS 4620 Program 3: Pipeline out: Wednesday 14 October 2009 due: Friday 30 October 2009 1 Introduction In this assignment, you will implement several types of shading in a simple software graphics pipeline.
More informationWhite Paper. Solid Wireframe. February 2007 WP _v01
White Paper Solid Wireframe February 2007 WP-03014-001_v01 White Paper Document Change History Version Date Responsible Reason for Change _v01 SG, TS Initial release Go to sdkfeedback@nvidia.com to provide
More informationReal-Time Non- Photorealistic Rendering
Real-Time Non- Photorealistic Rendering Presented by: Qing Hu LIAO SOCS, McGill Feb 1, 2005 Index Introduction Motivation Appel s Algorithm Improving Schema Rendering Result Economy of line A great deal
More informationgraphics pipeline computer graphics graphics pipeline 2009 fabio pellacini 1
graphics pipeline computer graphics graphics pipeline 2009 fabio pellacini 1 graphics pipeline sequence of operations to generate an image using object-order processing primitives processed one-at-a-time
More informationCS427 Multicore Architecture and Parallel Computing
CS427 Multicore Architecture and Parallel Computing Lecture 6 GPU Architecture Li Jiang 2014/10/9 1 GPU Scaling A quiet revolution and potential build-up Calculation: 936 GFLOPS vs. 102 GFLOPS Memory Bandwidth:
More informationgraphics pipeline computer graphics graphics pipeline 2009 fabio pellacini 1
graphics pipeline computer graphics graphics pipeline 2009 fabio pellacini 1 graphics pipeline sequence of operations to generate an image using object-order processing primitives processed one-at-a-time
More informationReal-Time Reyes: Programmable Pipelines and Research Challenges. Anjul Patney University of California, Davis
Real-Time Reyes: Programmable Pipelines and Research Challenges Anjul Patney University of California, Davis Real-Time Reyes-Style Adaptive Surface Subdivision Anjul Patney and John D. Owens SIGGRAPH Asia
More informationCiril Bohak. - INTRODUCTION TO WEBGL
2016 Ciril Bohak ciril.bohak@fri.uni-lj.si - INTRODUCTION TO WEBGL What is WebGL? WebGL (Web Graphics Library) is an implementation of OpenGL interface for cmmunication with graphical hardware, intended
More informationPowerVR Performance Recommendations. The Golden Rules
PowerVR Performance Recommendations Public. This publication contains proprietary information which is subject to change without notice and is supplied 'as is' without warranty of any kind. Redistribution
More informationLIQUIDVR TODAY AND TOMORROW GUENNADI RIGUER, SOFTWARE ARCHITECT
LIQUIDVR TODAY AND TOMORROW GUENNADI RIGUER, SOFTWARE ARCHITECT Bootstrapping the industry for better VR experience Complimentary to HMD SDKs It s all about giving developers the tools they want! AMD LIQUIDVR
More informationHardware-driven visibility culling
Hardware-driven visibility culling I. Introduction 20073114 김정현 The goal of the 3D graphics is to generate a realistic and accurate 3D image. To achieve this, it needs to process not only large amount
More informationOUTLINE. Learn the basic design of a graphics system Introduce pipeline architecture Examine software components for a graphics system
GRAPHICS PIPELINE 1 OUTLINE Learn the basic design of a graphics system Introduce pipeline architecture Examine software components for a graphics system 2 IMAGE FORMATION REVISITED Can we mimic the synthetic
More informationComputergrafik. Matthias Zwicker. Herbst 2010
Computergrafik Matthias Zwicker Universität Bern Herbst 2010 Today Bump mapping Shadows Shadow mapping Shadow mapping in OpenGL Bump mapping Surface detail is often the result of small perturbations in
More informationPipeline Operations. CS 4620 Lecture 10
Pipeline Operations CS 4620 Lecture 10 2008 Steve Marschner 1 Hidden surface elimination Goal is to figure out which color to make the pixels based on what s in front of what. Hidden surface elimination
More informationThe Rendering Pipeline (1)
The Rendering Pipeline (1) Alessandro Martinelli alessandro.martinelli@unipv.it 30 settembre 2014 The Rendering Pipeline (1) Rendering Architecture First Rendering Pipeline Second Pipeline: Illumination
More informationCopyright Khronos Group Page 1
Gaming Market Briefing Overview of APIs GDC March 2016 Neil Trevett Khronos President NVIDIA Vice President Developer Ecosystem ntrevett@nvidia.com @neilt3d Copyright Khronos Group 2016 - Page 1 Copyright
More informationOPENGL RENDERING PIPELINE
CPSC 314 03 SHADERS, OPENGL, & JS UGRAD.CS.UBC.CA/~CS314 Textbook: Appendix A* (helpful, but different version of OpenGL) Alla Sheffer Sep 2016 OPENGL RENDERING PIPELINE 1 OPENGL RENDERING PIPELINE Javascript
More informationSign up for crits! Announcments
Sign up for crits! Announcments Reading for Next Week FvD 16.1-16.3 local lighting models GL 5 lighting GL 9 (skim) texture mapping Modern Game Techniques CS248 Lecture Nov 13 Andrew Adams Overview The
More informationS U N G - E U I YO O N, K A I S T R E N D E R I N G F R E E LY A VA I L A B L E O N T H E I N T E R N E T
S U N G - E U I YO O N, K A I S T R E N D E R I N G F R E E LY A VA I L A B L E O N T H E I N T E R N E T Copyright 2018 Sung-eui Yoon, KAIST freely available on the internet http://sglab.kaist.ac.kr/~sungeui/render
More informationNVIDIA workstation 2D and 3D graphics adapter upgrade options let you experience productivity improvements and superior image quality
Lenovo United States Announcement 107-732, dated December 18, 2007 NVIDIA workstation 2D and 3D graphics adapter upgrade options let you experience productivity improvements and superior image quality
More informationCS770/870 Spring 2017 Open GL Shader Language GLSL
Preview CS770/870 Spring 2017 Open GL Shader Language GLSL Review traditional graphics pipeline CPU/GPU mixed pipeline issues Shaders GLSL graphics pipeline Based on material from Angel and Shreiner, Interactive
More informationCS770/870 Spring 2017 Open GL Shader Language GLSL
CS770/870 Spring 2017 Open GL Shader Language GLSL Based on material from Angel and Shreiner, Interactive Computer Graphics, 6 th Edition, Addison-Wesley, 2011 Bailey and Cunningham, Graphics Shaders 2
More informationUser Guide. NVIDIA Quadro FX 4700 X2 BY PNY Technologies Part No. VCQFX4700X2-PCIE-PB
NVIDIA Quadro FX 4700 X2 BY PNY Technologies Part No. VCQFX4700X2-PCIE-PB User Guide PNY Technologies, Inc. 299 Webro Rd. Parsippany, NJ 07054-0218 Tel: 408.567.5500 Fax: 408.855.0680 Features and specifications
More informationCSE 167: Introduction to Computer Graphics Lecture #4: Vertex Transformation
CSE 167: Introduction to Computer Graphics Lecture #4: Vertex Transformation Jürgen P. Schulze, Ph.D. University of California, San Diego Fall Quarter 2013 Announcements Project 2 due Friday, October 11
More informationCopyright Khronos Group, Page Graphic Remedy. All Rights Reserved
Avi Shapira Graphic Remedy Copyright Khronos Group, 2009 - Page 1 2004 2009 Graphic Remedy. All Rights Reserved Debugging and profiling 3D applications are both hard and time consuming tasks Companies
More informationGeneral Purpose Computation (CAD/CAM/CAE) on the GPU (a.k.a. Topics in Manufacturing)
ME 290-R: General Purpose Computation (CAD/CAM/CAE) on the GPU (a.k.a. Topics in Manufacturing) Sara McMains Spring 2009 Performance: Bottlenecks Sources of bottlenecks CPU Transfer Processing Rasterizer
More informationVulkan on Mobile. Daniele Di Donato, ARM GDC 2016
Vulkan on Mobile Daniele Di Donato, ARM GDC 2016 Outline Vulkan main features Mapping Vulkan Key features to ARM CPUs Mapping Vulkan Key features to ARM Mali GPUs 4 Vulkan Good match for mobile and tiling
More informationSoftware Occlusion Culling
Software Occlusion Culling Abstract This article details an algorithm and associated sample code for software occlusion culling which is available for download. The technique divides scene objects into
More informationMetal Feature Set Tables
Metal Feature Set Tables apple Developer Feature Availability This table lists the availability of major Metal features. OS ios 8 ios 8 ios 9 ios 9 ios 9 ios 10 ios 10 ios 10 ios 11 ios 11 ios 11 ios 11
More informationCourse Recap + 3D Graphics on Mobile GPUs
Lecture 18: Course Recap + 3D Graphics on Mobile GPUs Interactive Computer Graphics Q. What is a big concern in mobile computing? A. Power Two reasons to save power Run at higher performance for a fixed
More informationCSE4030 Introduction to Computer Graphics
CSE4030 Introduction to Computer Graphics Dongguk University Jeong-Mo Hong Timetable 00:00~00:10 Introduction (English) 00:10~00:50 Topic 1 (English) 00:50~00:60 Q&A (English, Korean) 01:00~01:40 Topic
More informationCS230 : Computer Graphics Lecture 4. Tamar Shinar Computer Science & Engineering UC Riverside
CS230 : Computer Graphics Lecture 4 Tamar Shinar Computer Science & Engineering UC Riverside Shadows Shadows for each pixel do compute viewing ray if ( ray hits an object with t in [0, inf] ) then compute
More informationA Rendering Pipeline for Real-time Crowds
A Rendering Pipeline for Real-time Crowds Benjamín Hernández and Isaac Rudomin In motion picture movies, large crowds of computer-generated characters are usually included to produce battle scenes of epic
More informationIntroduction to Shaders.
Introduction to Shaders Marco Benvegnù hiforce@gmx.it www.benve.org Summer 2005 Overview Rendering pipeline Shaders concepts Shading Languages Shading Tools Effects showcase Setup of a Shader in OpenGL
More informationOctree-Based Sparse Voxelization for Real-Time Global Illumination. Cyril Crassin NVIDIA Research
Octree-Based Sparse Voxelization for Real-Time Global Illumination Cyril Crassin NVIDIA Research Voxel representations Crane et al. (NVIDIA) 2007 Allard et al. 2010 Christensen and Batali (Pixar) 2004
More informationCMSC427 Advanced shading getting global illumination by local methods. Credit: slides Prof. Zwicker
CMSC427 Advanced shading getting global illumination by local methods Credit: slides Prof. Zwicker Topics Shadows Environment maps Reflection mapping Irradiance environment maps Ambient occlusion Reflection
More informationEECS 487: Interactive Computer Graphics
EECS 487: Interactive Computer Graphics Lecture 21: Overview of Low-level Graphics API Metal, Direct3D 12, Vulkan Console Games Why do games look and perform so much better on consoles than on PCs with
More informationReal-Time Rendering (Echtzeitgraphik) Michael Wimmer
Real-Time Rendering (Echtzeitgraphik) Michael Wimmer wimmer@cg.tuwien.ac.at Walking down the graphics pipeline Application Geometry Rasterizer What for? Understanding the rendering pipeline is the key
More informationCSE 167: Lecture #4: Vertex Transformation. Jürgen P. Schulze, Ph.D. University of California, San Diego Fall Quarter 2012
CSE 167: Introduction to Computer Graphics Lecture #4: Vertex Transformation Jürgen P. Schulze, Ph.D. University of California, San Diego Fall Quarter 2012 Announcements Project 2 due Friday, October 12
More informationGraphics Pipeline. CS535 Fall Daniel G. Aliaga Department of Computer Science Purdue University
Graphics Pipeline CS535 Fall 2016 Daniel G. Aliaga Department of Computer Science Purdue University Ray-tracing Inverse mapping for every pixel construct a ray from the eye for every object in the scene
More informationCSE 167: Lecture #5: Rasterization. Jürgen P. Schulze, Ph.D. University of California, San Diego Fall Quarter 2012
CSE 167: Introduction to Computer Graphics Lecture #5: Rasterization Jürgen P. Schulze, Ph.D. University of California, San Diego Fall Quarter 2012 Announcements Homework project #2 due this Friday, October
More informationProgramming Graphics Hardware
Tutorial 5 Programming Graphics Hardware Randy Fernando, Mark Harris, Matthias Wloka, Cyril Zeller Overview of the Tutorial: Morning 8:30 9:30 10:15 10:45 Introduction to the Hardware Graphics Pipeline
More informationAbstract. 2 Description of the Effects Used. 1 Introduction Phong Illumination Bump Mapping
Developing a Real-Time Renderer With Optimized Shadow Volumes Mátyás Premecz (email: pmat@freemail.hu) Department of Control Engineering and Information Technology, Budapest University of Technolgy Hungary
More informationWhy modern versions of OpenGL should be used Some useful API commands and extensions
Michał Radziszewski Why modern versions of OpenGL should be used Some useful API commands and extensions Timer Query EXT Direct State Access (DSA) Geometry Programs Position in pipeline Rendering wireframe
More informationGame Architecture. 2/19/16: Rasterization
Game Architecture 2/19/16: Rasterization Viewing To render a scene, need to know Where am I and What am I looking at The view transform is the matrix that does this Maps a standard view space into world
More informationTechnical Report. GLSL Pseudo-Instancing
Technical Report GLSL Pseudo-Instancing Abstract GLSL Pseudo-Instancing This whitepaper and corresponding SDK sample demonstrate a technique to speed up the rendering of instanced geometry with GLSL. The
More information