Deferred Splatting. Gaël GUENNEBAUD Loïc BARTHE Mathias PAULIN IRIT UPS CNRS TOULOUSE FRANCE.

Size: px
Start display at page:

Download "Deferred Splatting. Gaël GUENNEBAUD Loïc BARTHE Mathias PAULIN IRIT UPS CNRS TOULOUSE FRANCE."

Transcription

1 Deferred Splatting Gaël GUENNEBAUD Loïc BARTHE Mathias PAULIN IRIT UPS CNRS TOULOUSE FRANCE

2 Plan Complex Scenes: Triangles or Points? High Quality Splatting: Really efficient? Deferred Splatting: Accurate point selection Temporal Coherency Applications: Occlusion culling & SPT Results Future Works

3 Motivations Real Time rendering of Complex Scenes Triangles: fully supported by graphics HW, but... tiny triangles are inefficient multi resolution can be very tedious One solution is Points: no connectivity, no texture map, no... multi resolution rendering: simple & efficient but...

4 Motivations One solution is Points, but... Large magnification: low quality Flat surfaces: inefficiency hybrid, triangles and points are complementary: use triangles when points become less efficient High Quality point rendering is expensive deferred splatting! IRIT University of Toulouse France

5 Efficient Point Rendering 2 issues: How to select points that have to be rendered? How to render the points?

6 Efficient Point Rendering How to select points that have to be rendered? Store points into a hierarchical data structure (kd tree, octree, hierarchy of bounded spheres,...) Recursive traversal with visibility culling (view frustum,back face,occlusion,...) LOD selection (local density estimation, remove superfluous points) How to render the points?

7 Efficient Point Rendering How to select points that have to be rendered? How to render the points? Efficiency => graphics HW splatting approach

8 GPU Point Rendering quality & performance issues Standard GL_POINTS ( render a disk instead of a square is almost free ) Opaque ellipses High Quality Splatting ( accumulation of elliptic Gaussian, e.g. EWA Surface Splatting ) Number of million of points per second (GeForceFX 5900 under Linux) vs 44 M of small triangles per second

9 Complex Scenes : Example Scene ~ 6800 trees 1 tree ~ 750k points 5000 Millions points After High Level culling & LOD: ~ 4 M points are still potentially visible and have to be rendered But in fact only 150k are really visible!

10 Our Solution : Deferred Splatting is similar to deferred shading : Defer expensive rendering computations to visible points only is based on: An accurate point selection Temporal coherency

11 High Quality Splatting on GPU a multi pass algorithm Hierarchical & multi resolution data structure Data Set GPU High Level Point Selection (Culling, LOD,...) CPU sub set List of selected points (indexes, list of ranges,...) Z buffer buffer

12 High Quality Splatting on GPU a multi pass algorithm Hierarchical & multi resolution data structure High Level Point Selection (Culling, LOD,...) sub set Data Set Visibility splatting (1) GPU Z buffer CPU In order to accumulate visible splats only: pre compute the depth buffer: std GL_POINTS primitive + per fragment shape & depth correction buffer

13 High Quality Splatting on GPU a multi pass algorithm Hierarchical & multi resolution data structure High Level Point Selection (Culling, LOD,...) sub set Data Set Visibility splatting (1) GPU Z buffer CPU IRIT University of Toulouse France splatting (2) std GL_POINTS primitive + per fragment Gaussian weight + accumulation buffer

14 High Quality Splatting on GPU a multi pass algorithm Hierarchical & multi resolution data structure High Level Point Selection (Culling, LOD,...) CPU sub set Data Set Visibility splatting (1) splatting (2) Owing to : weights 1 GPU Z buffer buffer Normalization (3)

15 High Quality Splatting on GPU [ analyse ] Hierarchical & multi resolution data structure Data Set GPU Visibility splatting (1) High Level Point Selection (Culling, LOD,...) sub set EXPENSIVE / SLOW M pts/s Z buffer COARSE CPU COULD BE HUGE > 4 M pts splatting (2) buffer Normalization (3)

16 The Deferred Splatting Algorithm

17 Accurate Point Selection Hierarchical & multi resolution data structure High Level Point Selection (Culling, LOD,...) sub set Data Set Visibility splatting (1) GPU Z buffer CPU splatting buffer Normalization

18 Accurate Point Selection Hierarchical & multi resolution data structure High Level Point Selection (Culling, LOD,...) CPU sub set Data Set Visibility splatting (1) splatting buffer Normalization GPU Z buffer Break this direct path Add an accurate point selection Only visible points should pass the new test

19 Accurate Point Selection Hierarchical & multi resolution data structure High Level Point Selection (Culling, LOD,...) sub set Data Set Visibility splatting (1) GPU Z buffer Index (2) Render points as fast as possible: no shading, no blending, no... GL_POINTS, size = 1 pixel = handle of the point CPU = comb(object's id,point's id) IRIT University of Toulouse France buffer = {handle of visible points}

20 Accurate Point Selection Hierarchical & multi resolution data structure High Level Point Selection (Culling, LOD,...) sub set Data Set Visibility splatting (1) GPU Z buffer Index (2) CPU Read & (2') Sort B i Read the color buffer Extract indices from handles Sort point's indices by object buffer IRIT University of Toulouse France => index arrays B i

21 Accurate Point Selection Hierarchical & multi resolution data structure High Level Point Selection (Culling, LOD,...) sub set Data Set Visibility splatting (1) GPU Z buffer Index (2) CPU Read & (2') Sort B i splatting (3) buffer Normalization (4)

22 Accurate Point Selection break this direct path Hierarchical by & taking advantage of Data Set multi resolution temporal coherency data structure High Level Point Selection (Culling, LOD,...) CPU Read & (2') Sort sub set B i Visibility splatting (1) Index (2) splatting (3) GPU Z buffer buffer Normalization (4)

23 Accurate Point Selection Render only points which are Hierarchical visible in the & previous frame multi resolution data structure High Level Point Selection (Culling, LOD,...) CPU Read & (2') Sort B i 1 sub set B i Data Set Visibility splatting (1) B i 1 B i => holes Index (2) splatting (3) GPU Z buffer buffer Normalization (4)

24 Temporal Coherency : Artifacts Frame i Frame i+1 temporal coherency approximation leads to artifacts

25 Temporal Coherency Render only points which are Hierarchical visible in the & previous frame multi resolution data structure High Level Point Selection (Culling, LOD,...) B i 1 sub set Data Set Visibility splatting (1) B Index i 1 B (2) i => holes GPU Z buffer Read & (2') Sort CPU B i splatting (4) buffer Normalization (5)

26 Temporal Coherency Hierarchical & multi resolution data structure Compute B i from the High Level Point Selection (Culling, LOD,...) B i 1 incomplete Z buffer Also compute B i B i 1 sub set Data Set Visibility splatting (1) Update the Index Z buffer (2) : Render B i B i 1 GPU Z buffer Read & (2') Sort CPU B i B i 1 B i Visibility splatting (3) splatting (4) buffer Normalization (5)

27 The Complete Algorithm summary step by step Hierarchical & multi resolution data structure High Level Point Selection (Culling, LOD,...) B i 1 Data Set Visibility splatting (1) sub set Index (2) GPU Z buffer Read & (2') Sort CPU B i B i 1 B i Visibility splatting (3) splatting (4) buffer Normalization (5)

28 One point per pixel... Deferred Splatting allows only one point per pixel Advantages Remove superfluous points (LOD selection) Solve color buffer overflow (only 8 bits per component) Drawbacks

29 One point per pixel... Deferred Splatting allows only one point per pixel Advantages Drawbacks We may lose texture information High frequency textured models + coarse high level LOD selection flickering artifacts... Can be solved using surfel mipmap [Pfister et al. 00]

30 Deferred Splatting Applications Occlusion Culling Sequential Point Trees

31 High Level Occlusion Culling Hierarchical & multi resolution data structure High Level Point Selection (Culling, LOD,...) B i 1 Data Set Visibility splatting (1) HW Occlusion Queries (asynchronous) GPU Z buffer Occluded nodes removal sub set buffer CPU

32 Sequential Point Trees [Dachsbacher03] Preprocessing: build a sequential version of the hierarchy

33 Sequential Point Trees [Dachsbacher03] Preprocessing: build a sequential version of the hierarchy Rendering: CPU: fast & coarse selection of a prefix GPU: fine LOD selection at the point level

34 Sequential Point Trees [Dachsbacher03] Preprocessing: build a sequential version of the hierarchy Rendering: CPU: fast & coarse selection of a prefix GPU: fine LOD selection at the point level

35 Sequential Point Trees Preprocessing: build a sequential version of the hierarchy Rendering: CPU: fast & coarse selection of a prefix GPU: fine LOD selection at the point level SPT Coarse SPT selection prefix Classical High Quality Splatting: CPU all points of the coarse prefix are processed by 2 complex vertex programs IRIT University => inefficient of Toulouse France Visibility splatting(1) + SPT fine selection splatting (2) + SPT fine selection GPU

36 Sequential Point Trees Preprocessing: build a sequential version of the hierarchy Rendering: CPU: fast & coarse selection of a prefix GPU: fine LOD selection at the point level SPT Coarse SPT selection prefix Deferred Splatting: CPU all points of the coarse prefix are processed by 1 very simple vertex program IRIT University => efficient of Toulouse France Index (2) + SPT fine selection GPU

37 Results Classical GPU based High Quality Splatting versus Deferred Splatting

38 Results : Simple Head 285k points Average FPS: EWA Splatting: 34 Deferred Splatting: 41 Speed up: x1.2 % of culled points: 50 70% with DS classic IRIT University of Toulouse France EWA Splatting Reading buffer + sort Render Indexes Visibility Splatting

39 Results : 200 Hugo 1 Hugo = 450k points Scene = 200 Hugo in motion Average FPS: EWA Splatting: 11.5 Deferred Splatting: 34.5 Speed up : x3 % of culled points: 90% with DS classic IRIT University of Toulouse France EWA Splatting Reading buffer + sort Render Indexes Visibility Splatting

40 Results : Forest 1 tree = 750k points Scene = 6800 trees Average FPS: EWA Splatting: Deferred Splatting:11 20 Speed up : x10 % of culled points: 90 97% with DS classic with DS classic (1 tree) EWA Splatting Reading buffer + sort Render Indexes Visibility Splatting IRIT University of Toulouse France

41 What about screen resolutions? When the screen size increases The rendering time linearly increases The speed up of deferred splatting remains constant Large resolution => reading the color buffer becomes expensive: 1024² => 25ms! AGP limitation > PCI express? 512x x724 EWA Splatting Reading buffer + sort Render Indexes Visibility Splatting 1024x IRIT University of Toulouse France

42 Usability Unsuitable for simple scenes (< ~300k points) Based on the assumption that a point is visible or not true for small points only (< ~10 pixels) For our initial context it is always true large points are inefficient => use triangles If you don't have a polygonal representation: render large points anyway

43 Conclusion works at the point level and does: view frustum culling occlusion culling (and back face culling) LOD selection high quality splatting on highly complex scenes suitable for dynamic scenes & point clouds no assumption on the high level data structure no additional preprocessing simple and efficient

44 Future Works Full hardware implementation keep the CPU free no slow reading from the GPU to the CPU More efficient/accurate high level point selection new data structures new algorithms IRIT University of Toulouse France

45 Questions?

Point Sample Rendering

Point Sample Rendering Point Sample Rendering Efficient Screen Space Approach for HW Accelerated Surfel Rendering VMV03, november 2003 Gaël GUENNEBAUD - Mathias PAULIN IRIT-CNRS-UPS TOULOUSE-FRANCE http://www.irit.fr/recherches/sirv/vis/surfel/index.html

More information

Gaël Guennebaud Loïc Barthe, Mathias Paulin IRIT UPS CNRS TOULOUSE FRANCE Gaël Guennebaud Cyprus June 2006

Gaël Guennebaud Loïc Barthe, Mathias Paulin IRIT UPS CNRS TOULOUSE FRANCE  Gaël Guennebaud Cyprus June 2006 Real-time Soft Shadow Mapping by back-projection Gaël Guennebaud Loïc Barthe, Mathias Paulin IRIT UPS CNRS TOULOUSE FRANCE http://www.irit.fr/~gael.guennebaud/ 1 Hard Shadows light source Is the light

More information

Point based Rendering

Point based Rendering Point based Rendering CS535 Daniel Aliaga Current Standards Traditionally, graphics has worked with triangles as the rendering primitive Triangles are really just the lowest common denominator for surfaces

More information

CSL 859: Advanced Computer Graphics. Dept of Computer Sc. & Engg. IIT Delhi

CSL 859: Advanced Computer Graphics. Dept of Computer Sc. & Engg. IIT Delhi CSL 859: Advanced Computer Graphics Dept of Computer Sc. & Engg. IIT Delhi Point Based Representation Point sampling of Surface Mesh construction, or Mesh-less Often come from laser scanning Or even natural

More information

CS 563 Advanced Topics in Computer Graphics QSplat. by Matt Maziarz

CS 563 Advanced Topics in Computer Graphics QSplat. by Matt Maziarz CS 563 Advanced Topics in Computer Graphics QSplat by Matt Maziarz Outline Previous work in area Background Overview In-depth look File structure Performance Future Point Rendering To save on setup and

More information

Adaptive Point Cloud Rendering

Adaptive 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 information

Splat/Mesh Blending, Perspective Rasterization and Transparency for Point-Based Rendering

Splat/Mesh Blending, Perspective Rasterization and Transparency for Point-Based Rendering Eurographics Symposium on Point-Based Graphics (2006) M. Botsch, B. Chen (Editors) Splat/Mesh Blending, Perspective Rasterization and Transparency for Point-Based Rendering Gaël Guennebaud, Loïc Barthe

More information

Vincent Forest, Loïc Barthe, Mathias Paulin. IRIT-UPS-CNRS University of Toulouse, France

Vincent Forest, Loïc Barthe, Mathias Paulin. IRIT-UPS-CNRS University of Toulouse, France Realistic Soft Shadows by Penumbra-Wedges Blending Vincent Forest, Loïc Barthe, Mathias Paulin IRIT-UPS-CNRS University of Toulouse, France www.irit.fr/~vincent.forest/softshadows.php Outline Introduction

More information

Many rendering scenarios, such as battle scenes or urban environments, require rendering of large numbers of autonomous characters.

Many 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 information

Visibility and Occlusion Culling

Visibility and Occlusion Culling Visibility and Occlusion Culling CS535 Fall 2014 Daniel G. Aliaga Department of Computer Science Purdue University [some slides based on those of Benjamin Mora] Why? To avoid processing geometry that does

More information

Screen-Space Triangulation for Interactive Point Rendering

Screen-Space Triangulation for Interactive Point Rendering Screen-Space Triangulation for Interactive Point Rendering Reinhold Preiner Institute of Computer Graphics and Algorithms Vienna University of Technology Motivation High-quality point rendering mostly

More information

Motivation. Culling Don t draw what you can t see! What can t we see? Low-level Culling

Motivation. Culling Don t draw what you can t see! What can t we see? Low-level Culling Motivation Culling Don t draw what you can t see! Thomas Larsson Mälardalen University April 7, 2016 Image correctness Rendering speed One day we will have enough processing power!? Goals of real-time

More information

Rendering. Converting a 3D scene to a 2D image. Camera. Light. Rendering. View Plane

Rendering. 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 information

Point-Based Rendering

Point-Based Rendering Point-Based Rendering Kobbelt & Botsch, Computers & Graphics 2004 Surface Splatting (EWA: Elliptic Weighted Averaging) Main Idea Signal Processing Basics Resampling Gaussian Filters Reconstruction Kernels

More information

Real-Time Rendering (Echtzeitgraphik) Dr. Michael Wimmer

Real-Time Rendering (Echtzeitgraphik) Dr. Michael Wimmer Real-Time Rendering (Echtzeitgraphik) Dr. Michael Wimmer wimmer@cg.tuwien.ac.at Visibility Overview Basics about visibility Basics about occlusion culling View-frustum culling / backface culling Occlusion

More information

High-Quality Surface Splatting on Today s GPUs

High-Quality Surface Splatting on Today s GPUs High-Quality Surface Splatting on Today s GPUs M. Botsch, A. Hornung, M. Zwicker, L. Kobbelt Presented by Julian Yu-Chung Chen CS594 GPU Programming 2006-03-30 Outline Point Based Rendering Surface splatting

More information

Graphics Performance Optimisation. John Spitzer Director of European Developer Technology

Graphics 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 information

Applications of Explicit Early-Z Z Culling. Jason Mitchell ATI Research

Applications of Explicit Early-Z Z Culling. Jason Mitchell ATI Research Applications of Explicit Early-Z Z Culling Jason Mitchell ATI Research Outline Architecture Hardware depth culling Applications Volume Ray Casting Skin Shading Fluid Flow Deferred Shading Early-Z In past

More information

Building scalable 3D applications. Ville Miettinen Hybrid Graphics

Building scalable 3D applications. Ville Miettinen Hybrid Graphics Building scalable 3D applications Ville Miettinen Hybrid Graphics What s going to happen... (1/2) Mass market: 3D apps will become a huge success on low-end and mid-tier cell phones Retro-gaming New game

More information

Scene Management. Video Game Technologies 11498: MSc in Computer Science and Engineering 11156: MSc in Game Design and Development

Scene Management. Video Game Technologies 11498: MSc in Computer Science and Engineering 11156: MSc in Game Design and Development Video Game Technologies 11498: MSc in Computer Science and Engineering 11156: MSc in Game Design and Development Chap. 5 Scene Management Overview Scene Management vs Rendering This chapter is about rendering

More information

Project Gotham Racing 2 (Xbox) Real-Time Rendering. Microsoft Flighsimulator. Halflife 2

Project Gotham Racing 2 (Xbox) Real-Time Rendering. Microsoft Flighsimulator. Halflife 2 Project Gotham Racing 2 (Xbox) Real-Time Rendering Microsoft Flighsimulator Halflife 2 1 Motivation (1) Many graphics applications are dynamic Simulators (surgery, flight simulators, ) 3D computer games

More information

CSE 167: Introduction to Computer Graphics Lecture #9: Visibility. Jürgen P. Schulze, Ph.D. University of California, San Diego Fall Quarter 2018

CSE 167: Introduction to Computer Graphics Lecture #9: Visibility. Jürgen P. Schulze, Ph.D. University of California, San Diego Fall Quarter 2018 CSE 167: Introduction to Computer Graphics Lecture #9: Visibility Jürgen P. Schulze, Ph.D. University of California, San Diego Fall Quarter 2018 Announcements Midterm Scores are on TritonEd Exams to be

More information

High Quality Adaptive Soft Shadow Mapping

High Quality Adaptive Soft Shadow Mapping High Quality Adaptive Soft Shadow Mapping A paper by Gaël Guennebaud, Loïc Barthe and Mathias Paulin Roy Triesscheijn Overview - Algorithms from 2 papers, initial 2006 version and improved version from

More information

Real - Time Rendering. Pipeline optimization. Michal Červeňanský Juraj Starinský

Real - Time Rendering. Pipeline optimization. Michal Červeňanský Juraj Starinský Real - Time Rendering Pipeline optimization Michal Červeňanský Juraj Starinský Motivation Resolution 1600x1200, at 60 fps Hw power not enough Acceleration is still necessary 3.3.2010 2 Overview Application

More information

GUERRILLA DEVELOP CONFERENCE JULY 07 BRIGHTON

GUERRILLA DEVELOP CONFERENCE JULY 07 BRIGHTON Deferred Rendering in Killzone 2 Michal Valient Senior Programmer, Guerrilla Talk Outline Forward & Deferred Rendering Overview G-Buffer Layout Shader Creation Deferred Rendering in Detail Rendering Passes

More information

Goal. Interactive Walkthroughs using Multiple GPUs. Boeing 777. DoubleEagle Tanker Model

Goal. Interactive Walkthroughs using Multiple GPUs. Boeing 777. DoubleEagle Tanker Model Goal Interactive Walkthroughs using Multiple GPUs Dinesh Manocha University of North Carolina- Chapel Hill http://www.cs.unc.edu/~walk SIGGRAPH COURSE #11, 2003 Interactive Walkthrough of complex 3D environments

More information

CS535 Fall Department of Computer Science Purdue University

CS535 Fall Department of Computer Science Purdue University Culling CS535 Fall 2010 Daniel G Aliaga Daniel G. Aliaga Department of Computer Science Purdue University Types of culling View frustum culling Visibility culling e.g., backface culling, portal tlculling,

More information

Massive Model Visualization using Real-time Ray Tracing

Massive Model Visualization using Real-time Ray Tracing Massive Model Visualization using Real-time Ray Tracing Eurographics 2006 Tutorial: Real-time Interactive Massive Model Visualization Andreas Dietrich Philipp Slusallek Saarland University & intrace GmbH

More information

Performance OpenGL Programming (for whatever reason)

Performance 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 information

CS130 : Computer Graphics. Tamar Shinar Computer Science & Engineering UC Riverside

CS130 : Computer Graphics. Tamar Shinar Computer Science & Engineering UC Riverside CS130 : Computer Graphics Tamar Shinar Computer Science & Engineering UC Riverside Raster Devices and Images Raster Devices Hearn, Baker, Carithers Raster Display Transmissive vs. Emissive Display anode

More information

Triangle Rasterization

Triangle Rasterization Triangle Rasterization Computer Graphics COMP 770 (236) Spring 2007 Instructor: Brandon Lloyd 2/07/07 1 From last time Lines and planes Culling View frustum culling Back-face culling Occlusion culling

More information

Progressive Volume Rendering of Large Unstructured Grids

Progressive Volume Rendering of Large Unstructured Grids Progressive Volume Rendering of Large Unstructured Grids Steven P. Callahan 1, Louis Bavoil 1, Valerio Pascucci 2, and Cláudio T. Silva 1 1 SCI Institute, University of Utah 2 Lawrence Livermore National

More information

CS4620/5620: Lecture 14 Pipeline

CS4620/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 information

Hierarchical surface fragments *

Hierarchical surface fragments * Hierarchical surface fragments * HUA Wei**, BAO Hujun, PENG Qunsheng (State Key Laboratory of CAD & CG, Zhejiang University, Hangzhou 310027, China) Abstract A new compact level-of-detail representation,

More information

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

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 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 information

3/1/2010. Acceleration Techniques V1.2. Goals. Overview. Based on slides from Celine Loscos (v1.0)

3/1/2010. Acceleration Techniques V1.2. Goals. Overview. Based on slides from Celine Loscos (v1.0) Acceleration Techniques V1.2 Anthony Steed Based on slides from Celine Loscos (v1.0) Goals Although processor can now deal with many polygons (millions), the size of the models for application keeps on

More information

CSE 167: Introduction to Computer Graphics Lecture #11: Visibility Culling

CSE 167: Introduction to Computer Graphics Lecture #11: Visibility Culling CSE 167: Introduction to Computer Graphics Lecture #11: Visibility Culling Jürgen P. Schulze, Ph.D. University of California, San Diego Fall Quarter 2017 Announcements Project 3 due Monday Nov 13 th at

More information

PowerVR Hardware. Architecture Overview for Developers

PowerVR 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 information

Optimizing 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 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 information

Spatial Data Structures and Acceleration Algorithms

Spatial Data Structures and Acceleration Algorithms Spatial Data Structures and Acceleration Algorithms Real-time Rendering Performance Goals Spatial Structures Bounding Volume Hierarchies (BVH) Binary Space Partioning(BSP) Trees, Octrees Scene Graphs Culling

More information

White Paper. Soft Shadows. February 2007 WP _v01

White Paper. Soft Shadows. February 2007 WP _v01 White Paper Soft Shadows February 2007 WP-03016-001_v01 White Paper Document Change History Version Date Responsible Reason for Change 01 KD, SM Initial release Go to sdkfeedback@nvidia.com to provide

More information

A Real-time Micropolygon Rendering Pipeline. Kayvon Fatahalian Stanford University

A Real-time Micropolygon Rendering Pipeline. Kayvon Fatahalian Stanford University A Real-time Micropolygon Rendering Pipeline Kayvon Fatahalian Stanford University Detailed surfaces Credit: DreamWorks Pictures, Shrek 2 (2004) Credit: Pixar Animation Studios, Toy Story 2 (1999) Credit:

More information

View-Independent Object-Space Surface Splatting

View-Independent Object-Space Surface Splatting View-Independent Object-Space Surface Splatting Chun-Fa Chang Yung-Feng Chiu Computer Science Department, National Tsing Hua University, Taiwan Wei-zhi Liao Figure 1: Various test models (chameleon, face,

More information

Chapter IV Fragment Processing and Output Merging. 3D Graphics for Game Programming

Chapter IV Fragment Processing and Output Merging. 3D Graphics for Game Programming Chapter IV Fragment Processing and Output Merging Fragment Processing The per-fragment attributes may include a normal vector, a set of texture coordinates, a set of color values, a depth, etc. Using these

More information

Computer Graphics. Bing-Yu Chen National Taiwan University

Computer Graphics. Bing-Yu Chen National Taiwan University Computer Graphics Bing-Yu Chen National Taiwan University Visible-Surface Determination Back-Face Culling The Depth-Sort Algorithm Binary Space-Partitioning Trees The z-buffer Algorithm Scan-Line Algorithm

More information

Spatial Data Structures and Speed-Up Techniques. Tomas Akenine-Möller Department of Computer Engineering Chalmers University of Technology

Spatial Data Structures and Speed-Up Techniques. Tomas Akenine-Möller Department of Computer Engineering Chalmers University of Technology Spatial Data Structures and Speed-Up Techniques Tomas Akenine-Möller Department of Computer Engineering Chalmers University of Technology Spatial data structures What is it? Data structure that organizes

More information

Lecture 9: Deferred Shading. Visual Computing Systems CMU , Fall 2013

Lecture 9: Deferred Shading. Visual Computing Systems CMU , Fall 2013 Lecture 9: Deferred Shading Visual Computing Systems The course so far The real-time graphics pipeline abstraction Principle graphics abstractions Algorithms and modern high performance implementations

More information

TDA362/DIT223 Computer Graphics EXAM (Same exam for both CTH- and GU students)

TDA362/DIT223 Computer Graphics EXAM (Same exam for both CTH- and GU students) TDA362/DIT223 Computer Graphics EXAM (Same exam for both CTH- and GU students) Saturday, January 13 th, 2018, 08:30-12:30 Examiner Ulf Assarsson, tel. 031-772 1775 Permitted Technical Aids None, except

More information

Enabling immersive gaming experiences Intro to Ray Tracing

Enabling immersive gaming experiences Intro to Ray Tracing Enabling immersive gaming experiences Intro to Ray Tracing Overview What is Ray Tracing? Why Ray Tracing? PowerVR Wizard Architecture Example Content Unity Hybrid Rendering Demonstration 3 What is Ray

More information

Visible Surface Detection. (Chapt. 15 in FVD, Chapt. 13 in Hearn & Baker)

Visible Surface Detection. (Chapt. 15 in FVD, Chapt. 13 in Hearn & Baker) Visible Surface Detection (Chapt. 15 in FVD, Chapt. 13 in Hearn & Baker) 1 Given a set of 3D objects and a viewing specifications, determine which lines or surfaces of the objects should be visible. A

More information

CS230 : Computer Graphics Lecture 4. Tamar Shinar Computer Science & Engineering UC Riverside

CS230 : 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 information

graphics pipeline computer graphics graphics pipeline 2009 fabio pellacini 1

graphics 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 information

Level of Details in Computer Rendering

Level of Details in Computer Rendering Level of Details in Computer Rendering Ariel Shamir Overview 1. Photo realism vs. Non photo realism (NPR) 2. Objects representations 3. Level of details Photo Realism Vs. Non Pixar Demonstrations Sketching,

More information

graphics pipeline computer graphics graphics pipeline 2009 fabio pellacini 1

graphics 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 information

LOD and Occlusion Christian Miller CS Fall 2011

LOD 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 information

Interactive Ray Tracing: Higher Memory Coherence

Interactive Ray Tracing: Higher Memory Coherence Interactive Ray Tracing: Higher Memory Coherence http://gamma.cs.unc.edu/rt Dinesh Manocha (UNC Chapel Hill) Sung-Eui Yoon (Lawrence Livermore Labs) Interactive Ray Tracing Ray tracing is naturally sub-linear

More information

Point-based rendering of trees

Point-based rendering of trees Eurographics Workshop on Natural Phenomena (2005) E. Galin, P. Poulin (Editors) Point-based rendering of trees Guillaume Gilet Alexandre Meyer Fabrice Neyret GRAVIR lab (IMAG - INRIA), Grenoble, France

More information

Next-Generation Graphics on Larrabee. Tim Foley Intel Corp

Next-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 information

Hidden surface removal. Computer Graphics

Hidden surface removal. Computer Graphics Lecture Hidden Surface Removal and Rasterization Taku Komura Hidden surface removal Drawing polygonal faces on screen consumes CPU cycles Illumination We cannot see every surface in scene We don t want

More information

Universiteit Leiden Computer Science

Universiteit Leiden Computer Science Universiteit Leiden Computer Science Optimizing octree updates for visibility determination on dynamic scenes Name: Hans Wortel Student-no: 0607940 Date: 28/07/2011 1st supervisor: Dr. Michael Lew 2nd

More information

GeForce3 OpenGL Performance. John Spitzer

GeForce3 OpenGL Performance. John Spitzer GeForce3 OpenGL Performance John Spitzer GeForce3 OpenGL Performance John Spitzer Manager, OpenGL Applications Engineering jspitzer@nvidia.com Possible Performance Bottlenecks They mirror the OpenGL pipeline

More information

Hardware Accelerated Rendering of Unprocessed Point Clouds

Hardware Accelerated Rendering of Unprocessed Point Clouds Hardware Accelerated Rendering of Unprocessed Point Clouds Claus Scheiblauer Institute of Computer Graphics and Algorithms Vienna University of Technology Vienna / Austria Abstract In this paper we present

More information

EECE 478. Learning Objectives. Learning Objectives. Rasterization & Scenes. Rasterization. Compositing

EECE 478. Learning Objectives. Learning Objectives. Rasterization & Scenes. Rasterization. Compositing EECE 478 Rasterization & Scenes Rasterization Learning Objectives Be able to describe the complete graphics pipeline. Describe the process of rasterization for triangles and lines. Compositing Manipulate

More information

Subdivision Of Triangular Terrain Mesh Breckon, Chenney, Hobbs, Hoppe, Watts

Subdivision Of Triangular Terrain Mesh Breckon, Chenney, Hobbs, Hoppe, Watts Subdivision Of Triangular Terrain Mesh Breckon, Chenney, Hobbs, Hoppe, Watts MSc Computer Games and Entertainment Maths & Graphics II 2013 Lecturer(s): FFL (with Gareth Edwards) Fractal Terrain Based on

More information

Pipeline Operations. CS 4620 Lecture 10

Pipeline 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 information

Computer Graphics. Bing-Yu Chen National Taiwan University The University of Tokyo

Computer Graphics. Bing-Yu Chen National Taiwan University The University of Tokyo Computer Graphics Bing-Yu Chen National Taiwan University The University of Tokyo Hidden-Surface Removal Back-Face Culling The Depth-Sort Algorithm Binary Space-Partitioning Trees The z-buffer Algorithm

More information

ICS RESEARCH TECHNICAL TALK DRAKE TETREAULT, ICS H197 FALL 2013

ICS RESEARCH TECHNICAL TALK DRAKE TETREAULT, ICS H197 FALL 2013 ICS RESEARCH TECHNICAL TALK DRAKE TETREAULT, ICS H197 FALL 2013 TOPIC: RESEARCH PAPER Title: Data Management for SSDs for Large-Scale Interactive Graphics Applications Authors: M. Gopi, Behzad Sajadi,

More information

SMOOTH VISUALIZATION OF LARGE POINT CLOUDS

SMOOTH VISUALIZATION OF LARGE POINT CLOUDS Vol. 11, No. 2, pp. 146-158 ISSN: 1646-3692 SMOOTH VISUALIZATION OF LARGE POINT CLOUDS Jörg Futterlieb, Christian Teutsch and Dirk Berndt. Fraunhofer Institute for Factory Operation and Automation IFF,

More information

APPROVAL SHEET. Title of Thesis: HYBRID 3D-MODEL REPRESENTATION THROUGH QUADRIC METRICS AND HARDWARE ACCELERATED POINT-BASED RENDERING

APPROVAL SHEET. Title of Thesis: HYBRID 3D-MODEL REPRESENTATION THROUGH QUADRIC METRICS AND HARDWARE ACCELERATED POINT-BASED RENDERING APPROVAL SHEET Title of Thesis: HYBRID 3D-MODEL REPRESENTATION THROUGH QUADRIC METRICS AND HARDWARE ACCELERATED POINT-BASED RENDERING Name of Candidate: Hanli Ni Master of Science, 2005 Thesis and Abstract

More information

Dynamic Spatial Partitioning for Real-Time Visibility Determination. Joshua Shagam Computer Science

Dynamic Spatial Partitioning for Real-Time Visibility Determination. Joshua Shagam Computer Science Dynamic Spatial Partitioning for Real-Time Visibility Determination Joshua Shagam Computer Science Master s Defense May 2, 2003 Problem Complex 3D environments have large numbers of objects Computer hardware

More information

CSE 167: Lecture #5: Rasterization. Jürgen P. Schulze, Ph.D. University of California, San Diego Fall Quarter 2012

CSE 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 information

CS452/552; EE465/505. Clipping & Scan Conversion

CS452/552; EE465/505. Clipping & Scan Conversion CS452/552; EE465/505 Clipping & Scan Conversion 3-31 15 Outline! From Geometry to Pixels: Overview Clipping (continued) Scan conversion Read: Angel, Chapter 8, 8.1-8.9 Project#1 due: this week Lab4 due:

More information

International Journal of Computer Trends and Technology- volume3issue1-2012

International Journal of Computer Trends and Technology- volume3issue1-2012 A Overview of Point-based Rendering Techniques Mandakini Kaushik, Kapil Kumar Nagwanshi Dr. Lokesh Kumar Sharma M.Tech.(CSE) Scholar, Dept. of CSE, Reader, Dept. of CSE, Head, Dept. of CSE, Rungta College

More information

Hardware Accelerated Volume Visualization. Leonid I. Dimitrov & Milos Sramek GMI Austrian Academy of Sciences

Hardware Accelerated Volume Visualization. Leonid I. Dimitrov & Milos Sramek GMI Austrian Academy of Sciences Hardware Accelerated Volume Visualization Leonid I. Dimitrov & Milos Sramek GMI Austrian Academy of Sciences A Real-Time VR System Real-Time: 25-30 frames per second 4D visualization: real time input of

More information

Hardware-Assisted Visibility Ordering for Point-Based and Volume Rendering

Hardware-Assisted Visibility Ordering for Point-Based and Volume Rendering Hardware-Assisted Visibility Ordering for Point-Based and Volume Rendering Christian Hofsetz Ciências Exatas e Tecnológicas Universidade do Vale do Rio dos Sinos chofsetz@acm.org Nelson Max University

More information

Point-Based rendering on GPU hardware. Advanced Computer Graphics 2008

Point-Based rendering on GPU hardware. Advanced Computer Graphics 2008 Point-Based rendering on GPU hardware Advanced Computer Graphics 2008 Outline Why use the GPU? Splat rasterization Image-aligned squares Perspective correct rasterization Splat shading Flat shading Gouroud

More information

CSE 167: Introduction to Computer Graphics Lecture #10: View Frustum Culling

CSE 167: Introduction to Computer Graphics Lecture #10: View Frustum Culling CSE 167: Introduction to Computer Graphics Lecture #10: View Frustum Culling Jürgen P. Schulze, Ph.D. University of California, San Diego Fall Quarter 2015 Announcements Project 4 due tomorrow Project

More information

3D Rasterization II COS 426

3D Rasterization II COS 426 3D Rasterization II COS 426 3D Rendering Pipeline (for direct illumination) 3D Primitives Modeling Transformation Lighting Viewing Transformation Projection Transformation Clipping Viewport Transformation

More information

Chapter 10 Computation Culling with Explicit Early-Z and Dynamic Flow Control

Chapter 10 Computation Culling with Explicit Early-Z and Dynamic Flow Control Chapter 10 Computation Culling with Explicit Early-Z and Dynamic Flow Control Pedro V. Sander ATI Research John R. Isidoro ATI Research Jason L. Mitchell ATI Research Introduction In last year s course,

More information

GPU-Based Visualization of AMR and N-Body Dark Matter Simulation Data. Ralf Kähler (KIPAC/SLAC)

GPU-Based Visualization of AMR and N-Body Dark Matter Simulation Data. Ralf Kähler (KIPAC/SLAC) GPU-Based Visualization of AMR and N-Body Dark Matter Simulation Data Ralf Kähler (KIPAC/SLAC) HiPACC-Meeting 03/21/2014 COMPUTER GRAPHICS Rasterization COMPUTER GRAPHICS Assumption (for now): Input object(s)

More information

Coding OpenGL ES 3.0 for Better Graphics Quality

Coding 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 information

Copyright Khronos Group, Page Graphic Remedy. All Rights Reserved

Copyright 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 information

Applications of Explicit Early-Z Culling

Applications of Explicit Early-Z Culling Applications of Explicit Early-Z Culling Jason L. Mitchell ATI Research Pedro V. Sander ATI Research Introduction In past years, in the SIGGRAPH Real-Time Shading course, we have covered the details of

More information

The Rasterization Pipeline

The Rasterization Pipeline Lecture 5: The Rasterization Pipeline (and its implementation on GPUs) Computer Graphics CMU 15-462/15-662, Fall 2015 What you know how to do (at this point in the course) y y z x (w, h) z x Position objects

More information

CS451Real-time Rendering Pipeline

CS451Real-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 information

Kinetic BV Hierarchies and Collision Detection

Kinetic BV Hierarchies and Collision Detection Kinetic BV Hierarchies and Collision Detection Gabriel Zachmann Clausthal University, Germany zach@tu-clausthal.de Bonn, 25. January 2008 Bounding Volume Hierarchies BVHs are standard DS for collision

More information

Real Time Rendering of Expensive Small Environments Colin Branch Stetson University

Real Time Rendering of Expensive Small Environments Colin Branch Stetson University Real Time Rendering of Expensive Small Environments Colin Branch Stetson University Abstract One of the major goals of computer graphics is the rendering of realistic environments in real-time. One approach

More information

Lecture 13: Reyes Architecture and Implementation. Kayvon Fatahalian CMU : Graphics and Imaging Architectures (Fall 2011)

Lecture 13: Reyes Architecture and Implementation. Kayvon Fatahalian CMU : Graphics and Imaging Architectures (Fall 2011) Lecture 13: Reyes Architecture and Implementation Kayvon Fatahalian CMU 15-869: Graphics and Imaging Architectures (Fall 2011) A gallery of images rendered using Reyes Image credit: Lucasfilm (Adventures

More information

CSE 167: Introduction to Computer Graphics Lecture #5: Rasterization. Jürgen P. Schulze, Ph.D. University of California, San Diego Fall Quarter 2015

CSE 167: Introduction to Computer Graphics Lecture #5: Rasterization. Jürgen P. Schulze, Ph.D. University of California, San Diego Fall Quarter 2015 CSE 167: Introduction to Computer Graphics Lecture #5: Rasterization Jürgen P. Schulze, Ph.D. University of California, San Diego Fall Quarter 2015 Announcements Project 2 due tomorrow at 2pm Grading window

More information

Enhancing Traditional Rasterization Graphics with Ray Tracing. October 2015

Enhancing Traditional Rasterization Graphics with Ray Tracing. October 2015 Enhancing Traditional Rasterization Graphics with Ray Tracing October 2015 James Rumble Developer Technology Engineer, PowerVR Graphics Overview Ray Tracing Fundamentals PowerVR Ray Tracing Pipeline Using

More information

Culling. Computer Graphics CSE 167 Lecture 12

Culling. Computer Graphics CSE 167 Lecture 12 Culling Computer Graphics CSE 167 Lecture 12 CSE 167: Computer graphics Culling Definition: selecting from a large quantity In computer graphics: selecting primitives (or batches of primitives) that are

More information

Direct Volume Rendering

Direct Volume Rendering Direct Volume Rendering Balázs Csébfalvi Department of Control Engineering and Information Technology Budapest University of Technology and Economics Classification of Visualization Algorithms Indirect

More information

Get the most out of the new OpenGL ES 3.1 API. Hans-Kristian Arntzen Software Engineer

Get the most out of the new OpenGL ES 3.1 API. Hans-Kristian Arntzen Software Engineer Get the most out of the new OpenGL ES 3.1 API Hans-Kristian Arntzen Software Engineer 1 Content Compute shaders introduction Shader storage buffer objects Shader image load/store Shared memory Atomics

More information

Ray Casting of Trimmed NURBS Surfaces on the GPU

Ray Casting of Trimmed NURBS Surfaces on the GPU Ray Casting of Trimmed NURBS Surfaces on the GPU Hans-Friedrich Pabst Jan P. Springer André Schollmeyer Robert Lenhardt Christian Lessig Bernd Fröhlich Bauhaus University Weimar Faculty of Media Virtual

More information

Sign up for crits! Announcments

Sign 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 information

Wed, October 12, 2011

Wed, October 12, 2011 Practical Occlusion Culling in Killzone 3 Michal Valient Lead Tech, Guerrilla B.V. Talk takeaway Occlusion culling system used in Killzone 3 The reasons why to use software rasterization (Some) technical

More information

Pipeline Operations. CS 4620 Lecture Steve Marschner. Cornell CS4620 Spring 2018 Lecture 11

Pipeline 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 information

Hardware Accelerated Rendering of Points as Surfaces

Hardware Accelerated Rendering of Points as Surfaces Hardware Accelerated Rendering of Points as Surfaces Fritz M. Gschwantner Vienna University of Technology Abstract Over the last 7 years point-based geometries gained more and more interest as a research

More information

Hardware-driven Visibility Culling Jeong Hyun Kim

Hardware-driven Visibility Culling Jeong Hyun Kim Hardware-driven Visibility Culling Jeong Hyun Kim KAIST (Korea Advanced Institute of Science and Technology) Contents Introduction Background Clipping Culling Z-max (Z-min) Filter Programmable culling

More information

Point Cloud Filtering using Ray Casting by Eric Jensen 2012 The Basic Methodology

Point Cloud Filtering using Ray Casting by Eric Jensen 2012 The Basic Methodology Point Cloud Filtering using Ray Casting by Eric Jensen 01 The Basic Methodology Ray tracing in standard graphics study is a method of following the path of a photon from the light source to the camera,

More information