Week 11 - Thursday.  What did we talk about last time?  Image processing  Blurring  Edge detection  Color correction  Tone mapping  Lens flare.

Slides:



Advertisements
Similar presentations
CS 352: Computer Graphics Chapter 7: The Rendering Pipeline.
Advertisements

Exploration of bump, parallax, relief and displacement mapping
Week 11 - Wednesday.  Image based effects  Skyboxes  Lightfields  Sprites  Billboards  Particle systems.
Week 10 - Monday.  What did we talk about last time?  Global illumination  Shadows  Projection shadows  Soft shadows.
CHAPTER 12 Height Maps, Hidden Surface Removal, Clipping and Level of Detail Algorithms © 2008 Cengage Learning EMEA.
Real-Time Rendering POLYGONAL TECHNIQUES Lecture 05 Marina Gavrilova.
MIT EECS 6.837, Durand and Cutler Curves & Surfaces.
Week 9 - Wednesday.  What did we talk about last time?  Fresnel reflection  Snell's Law  Microgeometry effects  Implementing BRDFs  Image based.
Mesh Simplification Global and Local Methods:
HCI 530 : Seminar (HCI) Damian Schofield.
Modelling. Outline  Modelling methods  Editing models – adding detail  Polygonal models  Representing curves  Patched surfaces.
Content Subdivision First some basics (control point polygon, mesh)
Week 14 - Wednesday.  What did we talk about last time?  Collision handling  Collision detection  Collision determination  Collision response  BSPs.
University of Texas at Austin CS 378 – Game Technology Don Fussell CS 378: Computer Game Technology Beyond Meshes Spring 2012.
Hidden Surface Removal
Introduction to Modeling. What is CG Modeling? Combination of Sculpting, Architecture, Drafting, and Painting. The core component of computer animation.
MS. WILLIAMS Anatomy of a 3D Model. 3D Model 3D Models are one of the essential building blocks of 3D computer graphics. Without them there would be no.
SET09115 Intro Graphics Programming
Modeling and representation 1 – comparative review and polygon mesh models 2.1 Introduction 2.2 Polygonal representation of three-dimensional objects 2.3.
Modeling. Topology Topology describes an object’s shape, number of spans, and degree. For polygon objects this includes vertex positions.
1 Perception, Illusion and VR HNRS 299, Spring 2008 Lecture 19 Other Graphics Considerations Review.
1 Computer Graphics Week13 –Shading Models. Shading Models Flat Shading Model: In this technique, each surface is assumed to have one normal vector (usually.
Polygon Shading. Assigning color to a shape to make graphical scenes look realistic, or artistic, or whatever effect we’re attempting to achieve But first.
In the name of God Computer Graphics Modeling1. Today Introduction Modeling Polygon.
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.
09/09/03CS679 - Fall Copyright Univ. of Wisconsin Last Time Event management Lag Group assignment has happened, like it or not.
Graphics Graphics Korea University cgvr.korea.ac.kr 1 Chapter 6 Special Effects 강 신 진강 신 진
TERRAIN SET09115 Intro to Graphics Programming. Breakdown  Basics  What do we mean by terrain?  How terrain rendering works  Generating terrain 
09/11/03CS679 - Fall Copyright Univ. of Wisconsin Last Time Graphics Pipeline Texturing Overview Cubic Environment Mapping.
CS 450: COMPUTER GRAPHICS REVIEW: INTRODUCTION TO COMPUTER GRAPHICS – PART 2 SPRING 2015 DR. MICHAEL J. REALE.
Week 2 - Friday.  What did we talk about last time?  Graphics rendering pipeline  Geometry Stage.
Object Representation Rama C Hoetzlein, 2010 Univ. of California Santa Barbara Lecture Notes.
Image Synthesis Rabie A. Ramadan, PhD 1. 2 About my self Rabie A. Ramadan My website and publications
Computer Graphics The Rendering Pipeline - Review CO2409 Computer Graphics Week 15.
1 Perception and VR MONT 104S, Fall 2008 Lecture 21 More Graphics for VR.
Computer Graphics Basic 3D Geometry CO2409 Computer Graphics Week 5-1.
Advanced Computer Graphics Shadow Techniques CO2409 Computer Graphics Week 20.
1 Polygonal Techniques 이영건. 2 Introduction This chapter –Discuss a variety of problems that are encountered within polygonal data sets The.
Computer Graphics: Programming, Problem Solving, and Visual Communication Steve Cunningham California State University Stanislaus and Grinnell College.
GPH 338 Computer Animation Survey
Advanced Computer Graphics Spring 2014 K. H. Ko School of Mechatronics Gwangju Institute of Science and Technology.
Graphics Graphics Korea University cgvr.korea.ac.kr 1 7. Speed-up Techniques Presented by SooKyun Kim.
In the name of God Computer Graphics Bastanfard. Curve Function(2) Other method is approximate it using a poly-line. Just locate a set of points along.
11/26/02(C) University of Wisconsin Last Time BSplines.
Week 4 Low polygon modelling
What are Computer Graphics Basically anything that is on you Monitor – This includes the text that you will see Text isn’t Advanced Graphics But…. Understanding.
Introduction to Curves
COMPUTER GRAPHICS CS 482 – FALL 2015 SEPTEMBER 10, 2015 TRIANGLE MESHES 3D MESHES MESH OPERATIONS.
Modeling The process of creating 3D Objects
1 Geometry for Game. Geometry Geometry –Position / vertex normals / vertex colors / texture coordinates Topology Topology –Primitive »Lines / triangles.

Week 14 - Wednesday CS361.
Week 12 - Thursday CS361.
Constructing Objects in Computer Graphics
Week 2 - Friday CS361.
Week 11 - Wednesday CS361.
POLYGON MESH Advance Computer Graphics
3D Graphics Rendering PPT By Ricardo Veguilla.
Constructing Objects in Computer Graphics By Andries van Dam©
The Graphics Rendering Pipeline
© University of Wisconsin, CS559 Fall 2004
Chapter 14 Shading Models.
Graphics, Modeling, and Textures
Chapter III Modeling.
Lecture 13 Clipping & Scan Conversion
Chapter 14 Shading Models.
Week 11 - Monday CS361.
Presentation transcript:

Week 11 - Thursday

 What did we talk about last time?  Image processing  Blurring  Edge detection  Color correction  Tone mapping  Lens flare  Bloom  Depth of field  Motion blur  Fog

 As you know, just getting 3D data into a program is tricky  There are a few standard ways  Type in the data (cube examples)  Generate the data procedurally  Visualization of scientific (or other) data as spheres, cubes, or other primitives  Modeling programs  Sampling or scanning the real world  Reconstruction from photographs  Combinations!

And ScanView tool to view the data

 Models created by artists  Moving based on motion capture  supernatural/james-cameron.htm supernatural/james-cameron.htm

 Surfaces often need to be tessellated, broken down into polygons  The surfaces can be  Convex polygons  More complicated polygons  3D surfaces made out of complicated polygons

 For most graphics hardware, polygons must be triangulated into component triangles  "Bowties" have to be converted into triangles, perhaps making a guess about what the modeler meant  The literature contains many triangulation algorithms including the O(n 2 ) ear clipping algorithm

 Data often arrives as quadrilateral meshes  How we break those into triangles can make a big visual difference, depending on vertex colors and texture mapping  Sometimes no triangulation works for texture mapping  It may be necessary to distort the texture to make it work

 A spline is a curve in space that is defined as a piecewise function  Each piece of the curve is often a cubic function  Usually the first and second derivatives of the functions are the same at points where they meet to keep them smooth  Splines are a common tool for defining shapes in 2D and 3D  Artists add control points with handles to change the slope of the curves

 Non-uniform rational basis splines (NURBS) are a very general form of splines  Many 3D modeling program represent surfaces as patches between these splines  Rendering NURBS usually means turning these mathematically precise surfaces into triangles

 Turning the splines into polygons can cause two surfaces to have cracks between them, called edge cracking  Edge stitching makes sure all vertices on a shared edge between surfaces are shared as well  Shading is also an issue for T-vertices  Triangles that share edges should share all the same vertices too

 After generating a polygon mesh, we may want to consolidate it in a few ways  Merging finds shared vertices among faces  Orientation makes sure that all polygons face the same direction  This way, neighboring polygons would not be facing opposite ways from the perspective of culling operations  It may be necessary to generate normals for each vertex based on the surface normals  All the same as the surface for flat surfaces  Interpolated normals on vertices for curving surfaces

 In order to reuse data, we can break groups of triangles into fans, strips, and meshes  A triangle fan has a center vertex shared by all triangles  The data sent to the GPU is the center vertex, the second vertex of the first triangle, the third vertex of the first triangle, and then just one additional vertex per triangle

 A triangle strip is similar to a triangle fan except that the triangles do not all share a common vertex  As before, only a single new vertex is needed for each triangle after the first one  Note that the clockwiseness of vertex order reverses for each triangle  DirectX (and SharpDX) and OpenGL automatically render the vertices of every other triangle in opposite order to perform backface culling properly

 The previous example showed a sequential triangle strip  Generalized triangle strips are more flexible, but we may need to send a vertex more than once or use some other special command, as in the following example  There are algorithms designed to generate the smallest number of strips possible (though reaching the true optimal is NP-hard)

 For a closed surface, a mesh can be more efficient than either fans or strips  For large closed meshes, on average, each vertex is connected to six triangles  Consequently, we may only need to store as little as 0.5 vertices per triangle  More importantly, we only have to do lighting calculations once for each vertex  To get these advantages, our system has to have a good caching algorithm (and cache size) so that a lit, transformed vertex is still in cache the next time we need it

 By now, you're used to vertex buffers  They are a generic way to store model data in a contiguous chunk of memory  The memory could be:  A list of points  A list of line segments  A polyline  A triangle list  A triangle fan  A triangle strip  The size of a vertex is called the stride  If you do not want to repeat information in the vertex buffer, you can use an index buffer to specify which vertices from the vertex buffer to use

 Mesh simplification is a way of reducing polygon count while preserving appearance  Three common kinds:  Static – make several models of different complexity and choose the right one  Dynamic – generate models on the fly, allowing for a continuous spectrum of level of detail (LOD)  View-dependent – change based on the particular view

 Use edge collapses  Merge two vertices into one  There are different strategies for determining which edge to collapse, but we usually look for a "low cost" edge  There are different strategies for determining cost…  Some edges should not be collapsed  If it causes a surface's normal to flip  If it causes edges to cross

 Terrain is highly view dependent  Close things need a lot of detail  Distant mountains may not  Some techniques are just dynamic simplification applied based on distance from the viewer  Others break the terrain into tiles or other divisions  Some features of a terrain heightfield require more detail to look realistic  Special edges may be added in after the fact to connect low detail tiles to high detail tiles

 We're mostly skipping Chapter 13  It's about curves and curved surfaces  One of its focuses is subdividing simple meshes into more complex ones  There are many techniques to do so  Shapes get smoother and blobbier  There are ways to specify that some edges should remain

 Review for Exam 2

 "Normal" office hours canceled today  Finish Project 3  Due tonight by midnight!  Review Chapters 5-10