CSCE 441 Lecture 39
		
		
		
		
		
		Jump to navigation
		Jump to search
		
		
	
« previous | Monday, April 28, 2014 | next »
The Future
CSCE 641: Advanced Computer Graphics:
- Anti-aliasing
 - Advanced rendering techniques (ray tracing, radiosity)
 - Non-photo realistic rendering
 - Volume rendering
 - Shadows
 - Computer Animation
 
CSCE 645: Geometric Modeling
- Representation and analysis of smooth curves/surfaces
 - Operations on shape (CSG)
 - Surface Reconstruction
 
CSCE 443: Game Development
- Design and build a game over a semester
 - Graphics, networking, AI, physics, software engineering, etc.
 - Submit game to IGF competition?
 - e.g. Revision119, the Fall of Evil
 
Polygon Models
Dense meshes
- expensive to animate
 - Usually for static object
 - high bandwidth
 
Coarse meshes
- cheap to animate
 - faceting artifacts
 
Level of Detail
- The further away something is, the fewer polygons are needed to make the shape look good.
 
Goal
Use completely smooth surfaces. Eliminate faceting artifacts
Let GPU worry about level od detail
History
Xbox 360
- Launched Nov 22, 2005
 - GPU by ATi
 - Contained new feature called a "tessellator"
 
Hardware Tessellation
- Send coarse mesh to GPU
 - animate coarse mesh on GPU
 - Expand geometry on GPU at last second
 
Advantages:
- Reduced CPU/GPU bus traffic
 
Real-Time Subdivision Surfaces
Too slow!
Polygons convert to polynomials
Extraordinary vertex:
- where more that 4 polygons touch a vertex
 - represented by an infinite number of polynomials
 - this was bottleneck
 
Solution:
- Replace each extraordinary patch with single polynomial (bezier) patch
- Bezier patches actually cannot independently control normals of surfaces
 - Use Gregory surfaces instead (break apart control points of boundary edges
 
 - Create a smooth surface to approximate subdivision surface
 - Allow for any number of extraordinary vertices
 - quads or triangles
 
DirectX 11
- Hull shader: converts irregular control mesh data (e.g. extraordinary points) into regular patch data
 - Tessellator generates a bunch of polygons distributed over the surface.
 
Conclusions
- Handles quad-dominant control meshes with or without boundaries
 - 12 times faster to evaluate than exact subdivision surfaces
 - Low memory/fetch overhead
 - Error to "true" subdivision surface is small
 - Possible to generate much more detailed surfaces with displacement mapping.