Terrain Jyun-Ming Chen Spring 2004.

Slides:



Advertisements
Similar presentations
COMPUTER GRAPHICS SOFTWARE.
Advertisements

Graphics Pipeline.
RealityEngine Graphics Kurt Akeley Silicon Graphics Computer Systems.
Computer Graphic Creator: Mohsen Asghari Session 2 Fall 2014.
Projective Texture. Spring Projective Texture Texture projected on a scene as if by a projector Can also be used to generate spot light and shadows.
Projective Texture Mapping
Week 7 - Monday.  What did we talk about last time?  Specular shading  Aliasing and antialiasing.
3D Graphics Rendering and Terrain Modeling
CHAPTER 12 Height Maps, Hidden Surface Removal, Clipping and Level of Detail Algorithms © 2008 Cengage Learning EMEA.
Computer Graphics Visible Surface Determination. Goal of Visible Surface Determination To draw only the surfaces (triangles) that are visible, given a.
1 Further Terrain Rendering and Level of Detail Lecture 8 - Week 4 Advanced Programming for 3D Applications CE
Projection Matrices CS4395: Computer Graphics 1 Mohan Sridharan Based on slides created by Edward Angel.
Computer Graphics Hardware Acceleration for Embedded Level Systems Brian Murray
CGDD 4003 THE MASSIVE FIELD OF COMPUTER GRAPHICS.
Part I: Basics of Computer Graphics Viewing Transformation and Coordinate Systems Chapter
Tomas Mőller © 2000 Speeding up your game The scene graph Culling techniques Level-of-detail rendering (LODs) Collision detection Resources and pointers.
Course Website: Computer Graphics 9: Clipping In 3D.
Gopi -ICS186AW03 - Slide1 Graphics Pipeline: First Pass.
Graphics Systems I-Chen Lin’s CG slides, Doug James’s CG slides Angel, Interactive Computer Graphics, Chap 1 Introduction to Graphics Pipeline.
Real-time Crowd Movement On Large Scale Terrains Speaker: Alvin Date:4/26/2004From:TPCG03.
Cameras, lenses, and calibration
CHAPTER 7 Viewing and Transformations © 2008 Cengage Learning EMEA.
Technology and Historical Overview. Introduction to 3d Computer Graphics  3D computer graphics is the science, study, and method of projecting a mathematical.
CSE 381 – Advanced Game Programming Basic 3D Graphics
Week 2 - Wednesday CS361.
3D API By Clayton Azzopardi (Group 10). Introduction Android uses the OpenGL ES 1.0 API Android uses the OpenGL ES 1.0 API Open Graphics Library for Embedded.
Main Goal Development of an application that allows flying virtually over El Hierro Island (Canary Islands), showing the building structures of a hydroelectric.
Buffers Textures and more Rendering Paul Taylor & Barry La Trobe University 2009.
2 COEN Computer Graphics I Evening’s Goals n Discuss the mathematical transformations that are utilized for computer graphics projection viewing.
Image Synthesis Rabie A. Ramadan, PhD 4. 2 Review Questions Q1: What are the two principal tasks required to create an image of a three-dimensional scene?
Basic Perspective Projection Watt Section 5.2, some typos Define a focal distance, d, and shift the origin to be at that distance (note d is negative)
Review on Graphics Basics. Outline Polygon rendering pipeline Affine transformations Projective transformations Lighting and shading From vertices to.
Modeling, CG, and others Jyun-Ming Chen Fall 2001.
Chapters 5 2 March Classical & Computer Viewing Same elements –objects –viewer –projectors –projection plane.
Implementation of a Renderer Consider Programs are processd by the system line & polygon, outside the view volume Efficiently Understanding of the implementation.
©2005, Lee Iverson Lee Iverson UBC Dept. of ECE EECE 478 Viewing and Projection.
Taxonomy of Projections FVFHP Figure Taxonomy of Projections.
Honours Graphics 2008 Session 5. Today’s focus Rasterization Visibility determination Coarse / fine visibility determination.
Camera Model Calibration
Coordinate Systems Lecture 1 Fri, Sep 2, The Coordinate Systems The points we create are transformed through a series of coordinate systems before.
Hierarchical Occlusion Map Zhang et al SIGGRAPH 98.
Viewing and Projection. The topics Interior parameters Projection type Field of view Clipping Frustum… Exterior parameters Camera position Camera orientation.
Mobile & Casual Gaming OpenGL ES Intro. /red/chapter03.html.
CS 551 / 645: Introductory Computer Graphics Viewing Transforms.
Perspective View Volume View Volume Far Near Window Far Near Window Center of Projection Center of Projection (a) Original Orientation (b) After Transformation.
3D Ojbects: Transformations and Modeling. Matrix Operations Matrices have dimensions: Vectors can be thought of as matrices: v=[2,3,4,1] is a 1x4 matrix.
1 Geometry for Game. Geometry Geometry –Position / vertex normals / vertex colors / texture coordinates Topology Topology –Primitive »Lines / triangles.
Spring 2006 G5BAGR – Advanced Computer Graphics
Three Dimensional Viewing
Visible Surface Detection
Advanced D3D Programming Sim Dietrich
Frustum Culling in OpenGL
Week 7 - Monday CS361.
CSCE 441 Computer Graphics 3-D Viewing
CSC461: Lecture 20 Parallel Projections in OpenGL
2D Viewing Pipeline.
Graphics, Fall 2017 Lecture 24: Texture Mapping
3D Graphics Rendering PPT By Ricardo Veguilla.
10.6 Equations of Circles Geometry.
The Graphics Rendering Pipeline
CS451Real-time Rendering Pipeline
Computer Graphics 9: Clipping In 3D
Two-Dimensional Signal and Image Processing Chapter 8 - pictures
Lesson: 10 – 8 Equations of Circles
11.7 Circles in the Coordinate Plane
Chapter V Vertex Processing
THREE-DIMENSIONAL VIEWING II
Circles in the Coordinate Plane
Terrain Design for Path Finding Problems
Interactive Sampling and Rendering for Complex and Procedural Geometry
Presentation transcript:

Terrain Jyun-Ming Chen Spring 2004

Issues Height field (design, Perlin noise) Frustum culling Texturing (texgen, mipmap) Transformation LOD

Terrain Element [i+1,j+1] [i,j+1] [i,j] [i+1,j]

Terrain Design Height field Convert a gray scale image to terrain Design naturally looking terrains with Perlin noise functions

Frustum Culling Apply frustum culling to each terrain element to speed up rendering Verify the improved frame rates

Frustum Culling (terrain version) Test center point against frustum : int SphereInFrustum (center, radius) radius = w/sqrt(2)· w:width of terrain element Quick break for terrain: No need to test top and bottom

Applying Textures Mipmap is very important (esp. near horizon) Use texgen facility to generate texture coordinates procedural textures: fr08; Perlin2D

On Plane Equation of Texgen [10,0,0,0] [10,0,0,0], [1,0,0,0] and [0.1,0,0,0] are different [1,0,0,0]

Texgen (cont) [0.1,0,0,0] From OpenGL APIDOC: If the texture generation function is GL_OBJECT_LINEAR, the function , g = p1 * xo + p2 * yo + p3 * zo + p4 * wo is used

Vehicle on Terrain Determine the vehicle location [i,j] Local y aligned with terrain normal Local x modified to its projection on terrain plane Z = X  Y origin

Find Origin Z p2 X p0 p1

Level of Detail (LOD) Without LOD, the polygons are crowded near horizon

LOD (cont) In an ideally LOD’d scene, all polygons are roughly the same size in screen pixels.

ROAM (demo)