Visibility in Games Harald Riegler. 2 / 18 Visibility in Games n What do we need it for? u Increase of rendering speed by removing unseen scene data from.

Slides:



Advertisements
Similar presentations
COMPUTER GRAPHICS SOFTWARE.
Advertisements

Visibility Culling David Luebke Computer Science Department University of Virginia
Week 10 - Monday.  What did we talk about last time?  Global illumination  Shadows  Projection shadows  Soft shadows.
Occlusion Culling Fall 2003 Ref: GamasutraGamasutra.
CECS461 Computer Graphics II University of Missouri at Columbia Hidden Surface Removal.
CHAPTER 12 Height Maps, Hidden Surface Removal, Clipping and Level of Detail Algorithms © 2008 Cengage Learning EMEA.
Visibility in Computer Graphics Toni Sellarès Unversitat de Girona
Part I: Basics of Computer Graphics
CSE 381 – Advanced Game Programming Scene Management
Visibility Culling. Back face culling View-frustrum culling Detail culling Occlusion culling.
Visibility Culling Back face culling View-frustrum culling Detail culling Occlusion culling.
Visibility Culling using Hierarchical Occlusion Maps Hansong Zhang, Dinesh Manocha, Tom Hudson, Kenneth E. Hoff III Presented by: Chris Wassenius.
Chapter 6: Vertices to Fragments Part 2 E. Angel and D. Shreiner: Interactive Computer Graphics 6E © Addison-Wesley Mohan Sridharan Based on Slides.
CGDD 4003 THE MASSIVE FIELD OF COMPUTER GRAPHICS.
Tomas Mőller © 2000 Speeding up your game The scene graph Culling techniques Level-of-detail rendering (LODs) Collision detection Resources and pointers.
Hidden Surface Elimination Wen-Chieh (Steve) Lin Institute of Multimedia Engineering I-Chen Lin’ CG Slides, Rich Riesenfeld’s CG Slides, Shirley, Fundamentals.
Interactive Shadow Generation in Complex Environments Naga K. Govindaraju, Brandon Lloyd, Sung-Eui Yoon, Avneesh Sud, Dinesh Manocha Speaker: Alvin Date:
1 From-Point Occlusion Culling From-Point Occlusion Culling Chapter 23.
Vertices and Fragments III Mohan Sridharan Based on slides created by Edward Angel 1 CS4395: Computer Graphics.
1 Advanced Scene Management System. 2 A tree-based or graph-based representation is good for 3D data management A tree-based or graph-based representation.
02/04/03 Page 1 Rendering Visibility Lighting Texturing.
1 A Hierarchical Shadow Volume Algorithm Timo Aila 1,2 Tomas Akenine-Möller 3 1 Helsinki University of Technology 2 Hybrid Graphics 3 Lund University.
Hidden Surface Removal
1 Occlusion Culling ©Yiorgos Chrysanthou, , Anthony Steed, 2004.
Roger A. Crawfis CIS 781 The Ohio State University
Afrigraph 2004 Massive model visualization Tutorial A: Part I Rasterization Based Approaches Andreas Dietrich Computer Graphics Group, Saarland University.
Shadows Computer Graphics. Shadows Shadows Extended light sources produce penumbras In real-time, we only use point light sources –Extended light sources.
The Visibility Problem In many environments, most of the primitives (triangles) are not visible most of the time –Architectural walkthroughs, Urban environments.
Culling Techniques “To cull” means “to select from group” In graphics context: do not process data that will not contribute to the final image The “group”
Computer Graphics 2 Lecture 8: Visibility Benjamin Mora 1 University of Wales Swansea Pr. Min Chen Dr. Benjamin Mora.
Visibility Culling III: Image-Space Occlusion David Luebke Computer Science Department University of Virginia
Real-Time Rendering SPEEDING UP RENDERING Lecture 04 Marina Gavrilova.
Visible-Surface Detection Jehee Lee Seoul National University.
Visibility III: Occlusion Queries CS 446: Real-Time Rendering & Game Technology David Luebke University of Virginia.
1 Advanced Scene Management. 2 This is a game-type-oriented issue Bounding Volume Hierarchies (BVHs) Binary space partition trees (BSP Trees) “Quake”
2 COEN Computer Graphics I Evening’s Goals n Discuss application bottleneck determination n Discuss various optimizations for making programs execute.
Real-time Graphics for VR Chapter 23. What is it about? In this part of the course we will look at how to render images given the constrains of VR: –we.
1Computer Graphics Implementation II Lecture 16 John Shearer Culture Lab – space 2
Implementation II Ed Angel Professor of Computer Science, Electrical and Computer Engineering, and Media Arts University of New Mexico.
Hidden Surface Removal
Implementation II.
1 Visiblity: Culling and Clipping Computer Graphics COMP 770 (236) Spring 2009 January 21 & 26: 2009.
David Luebke11/26/2015 CS 551 / 645: Introductory Computer Graphics David Luebke
CSCE 552 Spring D Models By Jijun Tang. Triangles Fundamental primitive of pipelines  Everything else constructed from them  (except lines and.
Recap: General Occlusion Culling l When cells and portals don’t work… –Trees in a forest –A crowded train station l Need general occlusion culling algorithms:
1 3D Hidden Surface Removal 김 성 남. 2 Contents Goal Motivation Approaches - back face detection - depth buffer - A-buffer - Scan line - Depth.
Coherent Hierarchical Culling: Hardware Occlusion Queries Made Useful Jiri Bittner 1, Michael Wimmer 1, Harald Piringer 2, Werner Purgathofer 1 1 Vienna.
Visibility II CS 446: Real-Time Rendering & Game Technology
Maths & Technologies for Games Spatial Partitioning 2
Computer Graphics I, Fall 2010 Implementation II.
Honours Graphics 2008 Session 5. Today’s focus Rasterization Visibility determination Coarse / fine visibility determination.
DPL2/10/2016 CS 551/651: Final Review David Luebke
1 CSCE 441: Computer Graphics Hidden Surface Removal Jinxiang Chai.
1 Shadow Rendering Techniques: Hard and Soft Author: Jamiur Rahman Supervisor: Mushfiqur Rouf Department of CSE BRAC University.
Hierarchical Occlusion Map Zhang et al SIGGRAPH 98.
Computer Graphics Inf4/MSc 1 Computer Graphics Lecture 5 Hidden Surface Removal and Rasterization Taku Komura.
Graphics, Modeling, and Textures Computer Game Design and Development.
Learning Objectives Classification of Visible Surface Detection Algorithms Classification of Visible Surface Detection Algorithms Back-Face Detection Back-Face.
1 Advanced Scene Management. 2 This is a game-type-oriented issue Bounding Volume Hierarchies (BVHs) Binary space partition trees (BSP Trees) “Quake”
Occlusion Culling David Luebke University of Virginia.
CS 445: Introduction to Computer Graphics David Luebke University of Virginia Visibility Calculations and Occlusion Culling.
CHC ++: Coherent Hierarchical Culling Revisited Oliver Mattausch, Jiří Bittner, Michael Wimmer Institute of Computer Graphics and Algorithms Vienna University.
SHADOW CASTER CULLING FOR EFFICIENT SHADOW MAPPING JIŘÍ BITTNER 1 OLIVER MATTAUSCH 2 ARI SILVENNOINEN 3 MICHAEL WIMMER 2 1 CZECH TECHNICAL UNIVERSITY IN.
CSC418 Computer Graphics Back Faces Visibility Algorithms.
CSCE 441: Computer Graphics Hidden Surface Removal
Graphics, Modeling, and Textures
A Hierarchical Shadow Volume Algorithm
CS 551 / 645: Introductory Computer Graphics
Hidden Surface Removal
Frame Buffer Applications
Presentation transcript:

Visibility in Games Harald Riegler

2 / 18 Visibility in Games n What do we need it for? u Increase of rendering speed by removing unseen scene data from the rendering pipeline as early as possible u Reduction of data transfers to the graphics hardware u Current games would not be possible without visibility calculations

Harald Riegler 3 / 18 Visibility methods n 2 very different categories: u Visibility from a region (Portals, PVS) n (Quake, Unreal, Severance and co.) u Visibility from a point (Z-Buffer, BFC,...) n Racing games, outdoor scenes, sports games etc. n We will focus on Point-Visibility here

Harald Riegler 4 / 18 Traditional methods n Traditionally used: u Back-Face culling u Z-Buffering u View frustum culling (Quad or Octtree) n New methods are slowly breaking into games

Harald Riegler 5 / 18 New scientific methods n Image-space occlusion culling u Hierarchical Z-Buffering u Hierarchical Occlusion Maps n Object-space occlusion culling u Hierarchical View Frustum culling u Hierarchical Back-Face culling n More methods in the paper

Harald Riegler 6 / 18 Hierarchical Z-Buffer n Z-Buffer is arranged in an image pyramid n Scene is partitioned in an oct-tree n Oct-tree nodes are tested against the Z- Pyramid where pixels have the same size n Visible nodes serve as input for the next frame n Relies on HW visibility query

Harald Riegler 7 / 18 HZB/Hierarchical occlusion maps

Harald Riegler 8 / 18 Hierarchical occlusion maps n Potential occluders are pre-selected n These occluders are rendered to the occlusion map. The hierarchy can be built with MIP-Mapping HW n Depth test after occlusion test n Seperate depth estimation buffer

Harald Riegler 9 / 18 Hierarchical View Frustum Culling n Speeds up VFC by testing only 2 box corners of a bounding box first. n Plane coherency during frame advancing n Test against VF-octants. n BB-Child masking

Harald Riegler 10 / 18 Hierarchical Back-Face Culling n Partitions each model into clusters n Primitives in one cluster are: u Facing into similar directions u Lie close to each other n If the cluster fails the visibility test, all primitives in this cluster are culled

Harald Riegler 11 / 18 Hierarchical Back-Face Culling

Harald Riegler 12 / 18 The Real World (1) n Scientific approaches often too complicated n Science often uses models with hundreds of thousands of vertices, games don’t. (LOD) n Game developers “pick” ideas from different algorithms n Research has impact on hardware design!

Harald Riegler 13 / 18 The Real World (2) n Parts of the HZB are used sometimes n Runtime-LOD is used as input for a simple HZB n VFC is almost always used. n HOM introduce too much overhead for games, and the z-buffer is there anyway n A simplified HBFC can be used

Harald Riegler 14 / 18 The Real World (3) n PSX-One doesn’t even have a z-buffer n ATI’s Radeon has parts of a HZB (Called Hyper-Z) n GForce2 only has a z-buffer n GForce3 similar to Radeon, but supports HZB visibility query n Dreamcasts Power-VR2 works pretty different (Infinite planes)

Harald Riegler 15 / 18 A PSX Example n Iron Soldier 3 on PSX: u VFC based on a quad-tree u BFC u Painters algorithm

Harald Riegler 16 / 18 Conclusions (1) n Visibility algorithms are used in many different applications u Occlusion culling u Shadow calculations u Radiosity u Volumetric lights n All these fields benefit from advances in visibility techniques

Harald Riegler 17 / 18 Conclusion (2) n Occlusion culling will gain importance n More OC will be implemented in hardware n Discrepancies between science and gaming industry will alway exist due to different goals

Hope you enjoyed the ride!