Representation and modelling 3 – landscape specialisations 4.1 Introduction 4.2 Simple height field landscapes 4.3 Procedural modeling of landscapes- fractals.

Slides:



Advertisements
Similar presentations
Computer Graphics- SCC 342
Advertisements

Exploration of bump, parallax, relief and displacement mapping
Texture Synthesis on [Arbitrary Manifold] Surfaces Presented by: Sam Z. Glassenberg* * Several slides borrowed from Wei/Levoy presentation.
An Introduction to Light Fields Mel Slater. Outline Introduction Rendering Representing Light Fields Practical Issues Conclusions.
CHAPTER 12 Height Maps, Hidden Surface Removal, Clipping and Level of Detail Algorithms © 2008 Cengage Learning EMEA.
Hierarchical Voronoi diagrams for spatial data indexing and paging Christopher Gold Dept. Computing & Mathematics, University of Glamorgan, Pontypridd.
Real-Time Rendering POLYGONAL TECHNIQUES Lecture 05 Marina Gavrilova.
Subdivision Curves & Surfaces and Fractal Mountains. CS184 – Spring 2011.
1 Further Terrain Rendering and Level of Detail Lecture 8 - Week 4 Advanced Programming for 3D Applications CE
4.4. L EVEL OF D ETAIL Exploration of 3D mesh level-of-detail approaches.
Isoparametric Elements
Mesh Simplification Global and Local Methods:
Chapter 9: Recursive Methods and Fractals E. Angel and D. Shreiner: Interactive Computer Graphics 6E © Addison-Wesley Mohan Sridharan Based on Slides.
GATE D Object Representations (GATE-540) Dr.Çağatay ÜNDEĞER Instructor Middle East Technical University, GameTechnologies & General Manager SimBT.
Procedural Shape Synthesis on Subdivision Surfaces
Content Subdivision First some basics (control point polygon, mesh)
1 Terrain Rendering and Level of Detail Week 7 Advanced Programming for 3D Applications CE
Quadtrees and Mesh Generation Student Lecture in course MATH/CSC 870 Philipp Richter Thursday, April 19 th, 2007.
GI Systems and Science January 23, Points to Cover  What is spatial data modeling?  Entity definition  Topology  Spatial data models Raster.
Introduction to 3D Graphics John E. Laird. Basic Issues u Given a internal model of a 3D world, with textures and light sources how do you project it.
Hidden Surface Removal
Spatial data models (types)
Modeling and representation 1 – comparative review and polygon mesh models 2.1 Introduction 2.2 Polygonal representation of three-dimensional objects 2.3.
Introduction --Classification Shape ContourRegion Structural Syntactic Graph Tree Model-driven Data-driven Perimeter Compactness Eccentricity.
Faking Dynamics of Cloth Animation for Animated Films Fabian Di Fiore Expertise Centre for Digital Media Hasselt University, Belgium
1 Computer Graphics Week13 –Shading Models. Shading Models Flat Shading Model: In this technique, each surface is assumed to have one normal vector (usually.
10/21/03CS679 - Fall Copyright Univ. of Wisconsin Last Time Terrain Dynamic LOD.
CS-378: Game Technology Lecture #11: Visibility Prof. Okan Arikan University of Texas, Austin Thanks to James O’Brien, Steve Chenney, Zoran Popovic, Jessica.
Modeling and representation 2 – the economics of polygon meshes 3.1 Compressing polygonal models 3.2 Compressing the geometry (information per vertex)
Compressing Multiresolution Triangle Meshes Emanuele Danovaro, Leila De Floriani, Paola Magillo, Enrico Puppo Department of Computer and Information Sciences.
Technology and Historical Overview. Introduction to 3d Computer Graphics  3D computer graphics is the science, study, and method of projecting a mathematical.
Subdivision/Refinement Dr. S.M. Malaek Assistant: M. Younesi.
Graphics Graphics Korea University cgvr.korea.ac.kr Creating Virtual World I 김 창 헌 Department of Computer Science Korea University
Surface Simplification Using Quadric Error Metrics Michael Garland Paul S. Heckbert.
CS 551/651 Advanced Computer Graphics Warping and Morphing Spring 2002.
Algorithms for Triangulations of a 3D Point Set Géza Kós Computer and Automation Research Institute Hungarian Academy of Sciences Budapest, Kende u
Part 6: Graphics Output Primitives (4) 1.  Another useful construct,besides points, straight line segments, and curves for describing components of a.
COLLEGE OF ENGINEERING UNIVERSITY OF PORTO COMPUTER GRAPHICS AND INTERFACES / GRAPHICS SYSTEMS JGB / AAS 1 Shading (Shading) & Smooth Shading Graphics.
TECHNIQUES IN BASIC SURVEYING
Geometric Objects and Transformation
Introduction --Classification Shape ContourRegion Structural Syntactic Graph Tree Model-driven Data-driven Perimeter Compactness Eccentricity.
10/23/2001CS 638, Fall 2001 Today Terrain –Terrain LOD.
1 Polygonal Techniques 이영건. 2 Introduction This chapter –Discuss a variety of problems that are encountered within polygonal data sets The.
View-dependent Adaptive Tessellation of Spline Surfaces
- Laboratoire d'InfoRmatique en Image et Systèmes d'information
CSCE 552 Spring D Models By Jijun Tang. Triangles Fundamental primitive of pipelines  Everything else constructed from them  (except lines and.
Vertices, Edges and Faces By Jordan Diamond. Vertices In geometry, a vertices is a special kind of point which describes the corners or intersections.
Graphics Graphics Korea University cgvr.korea.ac.kr 1 7. Speed-up Techniques Presented by SooKyun Kim.
Ray Tracing Fall, Introduction Simple idea  Forward Mapping  Natural phenomenon infinite number of rays from light source to object to viewer.
Maths & Technologies for Games Spatial Partitioning 2
1 CSCE 441: Computer Graphics Hidden Surface Removal Jinxiang Chai.
Outline ● Introduction – What is the problem ● Generate stochastic textures ● Improve realism ● High level approach - Don't just jump into details – Why.
1 Overview (Part 1) Background notions A reference framework for multiresolution meshes Classification of multiresolution meshes An introduction to LOD.
COMPUTER GRAPHICS CS 482 – FALL 2015 SEPTEMBER 10, 2015 TRIANGLE MESHES 3D MESHES MESH OPERATIONS.
Outline ● Introduction – What is the problem ● Generate stochastic textures ● Improve realism ● High level approach - Don't just jump into details – Why.
CDS 301 Fall, 2008 Domain-Modeling Techniques Chap. 8 November 04, 2008 Jie Zhang Copyright ©
DPL3/10/2016 CS 551/651: Simplification Continued David Luebke
CS559: Computer Graphics Lecture 36: Subdivision Surfaces, Fractals, and Animation Li Zhang Spring 2008 Many slides from James Kuffner’s graphics class.
Solid Modeling Dr. Scott Schaefer.
3D Object Representations. Introduction Line and circle and polygon algorithms- represented simple and smooth object. Some Natural object are neither.
3D Object Representations 2009, Fall. Introduction What is CG?  Imaging : Representing 2D images  Modeling : Representing 3D objects  Rendering : Constructing.
Decimation Of Triangle Meshes
Terrain Level of Detail
3D Object Representations
CS475 3D Game Development Level Of Detail Nodes (LOD)
CSCE 441: Computer Graphics Hidden Surface Removal
Domain-Modeling Techniques
CS679 - Fall Copyright Univ. of Wisconsin
Chap 10. Geometric Level of Detail
Run-Time LOD Run-time algorithms may use static or dynamic LOD models:
Presentation transcript:

Representation and modelling 3 – landscape specialisations 4.1 Introduction 4.2 Simple height field landscapes 4.3 Procedural modeling of landscapes- fractals 4.4 Terrain LODs: triangle bintrees 4.5 Rendering of landscapes by ray casting

4.1 Introduction  Landscapes or terrains are a common entity in computer games.  Their total extent in screen space is large and this means that ideally size of a landscape polygon needs to decrease as a function of viewing distance.  LOD should ideally vary not only as a function of the local surface curvature but globally across the model.

4.1 Introduction

 The most popular form of landscape model is a height field based on a uniform grid.  A classic procedural method for terrain generation – fractals – which generates a triangle mesh.  LOD approaches to terrain exploit the normal height field representation of landscape data and the approaches are generally more straightforward than for arbitrary polygon meshes.  An important consideration of landscape models is their ease of following.  Landscapes in computer games have to be continually accessed if objects are to be animated and checked for collision with the terrain.

4.2 Simple height field landscapes  The easiest way to generate a height field is to use a painting package with the understanding that the grey scale is to represent height.  Example

4.2 Simple height field landscapes  The height field values can be mapped into a suitable colour, depending on the nature of the landscape, and a texture map applied.  Example : Ground texture A view of the rendered landscape

4.3 Procedural modelling of landscapes - fractals  Fractal geometry is a term coined by Benoit Mandlebrot(1997,1982).  The term was used to describe the attributes of certain natural phenomena, for example coastlines.  Fractal geometry provides a description for certain aspects of this ubiquitous phenomenon in nature and its tendency towards self-similarity.

4.3 Procedural modelling of landscapes - fractals  Fractal techniques have commonly been used to generate terrain models and the easiest techniques involve subdividing the facets of the objects.  Subdivision in this context means taking the midpoint along the edge between two vertices and perturbing it along a line normal to the edge.  Most subdivision algorithms are based on a formulation by Fournier et al.(1982) that recursively subdivides a single line segment.

4.3 Procedural modelling of landscapes – fractals (subdivision example)  A procedure recursively subdivides a line (t1,f), (t2,f2) generating a scalar displacement of the midpoint of the line in a direction normal to the line.

4.3 Procedural modelling of landscapes – fractals (subdivision example)  Triangles or quadrilaterals in 3D space, we treat each in tern, generating a displacement along a midpoint vector that is normal to the plane of the original facet.

4.3 Procedural modelling of landscapes - fractals  Fournier categorises two problems in this method – internal and external consistency.  Internal consistency Requires that the shape generated should be the same whatever the orientation in which it is generated That coarser details should remain the same if the shape is replotted at greater resoluiton.  External consistency External consistency is harder to maintain. Within the mesh of triangles, every triangle shares each of its sides with another; thus the same random displacements must be generated for corresponding points of different connecting triangles.

4.3 Procedural modelling of landscapes - fractals  If the displacements are along the surface normal of the polygon under consideration, then adjacent polygons which have different normals will have their midpoints displaced into different positions. This causes gaps to open up.  A solution is to displace the midpoint along the average of the normals to all the polygons. This technique would create an unsatisfactory skyline.  A better skyline is obtained by making all the displacements of points internal to the original polygon in a direction normal to the plane of the original polygon.

4.4 Terrain LODs: triangle bintrees  A uniform height field is conveniently triangulated by a representation known as a triangle bintree.  Each triangle is a right-angled isosceles triangles.  The children of any node are formed by splitting the triangle along an edge formed by joining the right- angled apex to the base to form two more right- angled child triangles.

4.4 Terrain LODs: triangle bintrees  Triangle bintree.

4.4 Terrain LODs: triangle bintrees  This structure is employed in the work of Duchaineau et al.(1997) and Lindstrom et al.(1996)  The key idea is that a particular LOD representation for a terrain database is a single level in the triangle bintree.  The vertices in the bintree level are associated with corresponding height field data z (x, y) this association is conveniently defined as : w (v) = (x,y,z(x,y)) where: z (x, y) is the value of the height field at the point (x,y) the bintree domani coordinates of v

4.4 Terrain LODs: triangle bintrees

4.4 Terrain LODs: triangle bintrees (Duchaineau et al. ’ s approach)  The root of the tree contains two triangles  The leaves contain triangles whose vertices are formed from adjacent vertices in the height field grid.  Any triangle in the structure has a base, and right and left neighbours.  Either the neighbours are form the same level, or form the next coarsest level (base neighbours), or from the next finer level (left and right neighbours).

4.4 Terrain LODs: triangle bintrees (Duchaineau et al. ’ s approach)  A split an d merge operation defines a transition down or up a level. For example, when a triangle and its base neighbour are from the same level a simple split operation is possible by adding a new vertex.

4.4 Terrain LODs: triangle bintrees (Duchaineau et al. ’ s approach)  Triangle cannot be split as shown in the previous figure if its base neighbour is from a coarser level.  Such situation, requires that the base triangle must be split first in a recursive sequence.  Duchaineau et al. refer to such splits as forced splits and they use them subsequently in an optimisation procedure.

4.4 Terrain LODs: triangle bintrees (Duchaineau et al. ’ s approach)

4.4 Terrain LODs: triangle bintrees

 The overall scheme consists of a pre-processing phase and an on-line phase.  on-line phase Consists of an algorithm that updates the previous frame ’ s bintree by split and merge operations, stopping when a geometric screen space (view-depending) error criterion is satisfied.  pre-processing Constructs a set of view-dependent error bounds which are used by the on-line phase.

4.4 Terrain LODs: triangle bintrees

 As the triangulation is built a priority queue is maintained and the following operations are carried out as long as the screen space projection is inaccurate: Find the highest-priority triangle T in the queue. Force split T. Update the queue by removing T and other split triangles. Add any new triangles to the queue.

4.5 Rendering of landscapes by ray casting  Textured mapped uniform height fields are similar to voxel-based data.  We can consider each cell as a voxel with a variable z dimension, and use a voxel rendering algorithm to produce the projected image.  The work that we now describe is typical of voxel rendering and is due to Cohen-Or et al. (1996)

4.5 Rendering of landscapes by ray casting  The basic algorithm is called ray casting and as the name implies, a ray is generated from ten viewpoint through each pixel and cast into world space.  The hit point on the terrain then gives the colour for pixel from which the ray has emanated.

4.5 Rendering of landscapes by ray casting