Download presentation

Presentation is loading. Please wait.

Published byIsaac Weber Modified over 3 years ago

2
What Well Be Covering Today: Modified Butterfly Subdivision Texturing and Antialiasing Global Illumination via Radiosity

3
Modified Butterfly Subdivision Based on Dyn/Levin/Gregory Butterfly Subdivision Adds rules for non-regular vertices –Standard Butterfly is not C 1 at k=3 or k>7

4
Mesh Data Structure List of vertices Each vertex has a set edges (vertices it is connected to) –sorted in order around vertex –Not guaranteed CCW (normal problems)

5
Vertex Normals Formulas from SIG2000 course notes Problems with boundary edge rules –Possibly due to bad vertex orientation

6
Starfish-like Thing

7
Frog-ish Head

8
Anti-Aliasing Standard OpenGL Accumulation Buffer techniques Helpful Tip: Dont save your antialiasing example pictures as JPEGs

9
Texture Mapping Calculate vertex texture coordinates using spherical projection Issues to Deal with: –Texture coordinate problems –Polar Distortion

10
Wrapped Texture Coordinates Vertices can only have one texture coordinate –Some need two Two Solutions: –Duplicate vertices (bad, fast) –Detect & Fix at render time (good, slow)

11
At-Pole Texture Coordinates Singularity at poles –entire line of texture on one point –OpenGL cannot handle this gracefully Again, can be detected and corrected at render-time

12
Polar Distortion Problem Texture mapped like lines of lattitude / longitude Lines get closer at poles Distort texture to counter this effect WARNING: distorted texture will not tile!

13
Polar Distortion Solution

14
Son Of Frog-ish Head

15
Radiosity Progressive Refinement (Shooting) –My machine only has 256 MB of RAM –Large Scenes == Thrashing –Throw away form factors after each shot Use hemicube to calculate form factors –Projecting faces – easy way and hard way

16
Form Factors the Hard Way Clip and project each poly onto faces of hemicube (geometrically) Find pixels that intersect projected poly A HUGE WASTE OF PROGRAMMING EFFORT (and its really slow, too)

17
Form Factors the Easy Way Use OpenGLs Z-buffer –Encode each face with a color –Graphics Hardware speeds this up Can be less accurate than geometric method –Standard Z-Buffer accuracy problem

18
Other Implementation Issues Use double precision! –Dealing with summation of lots of tiny values –Single precision loses light –Particularly for Fqs in HemiCube OpenGL and multi-threading do not really mix together so nicely…

19
Progressive Refinement

20
Low Hemicube Resolution

21
Radiosity On Butterfly Surfaces

Similar presentations

OK

Graphic Rendering Tasks 1. If Clipping was not in the Pipeline If the clipping step was not in the graphics pipeline then all objects or part of objects.

Graphic Rendering Tasks 1. If Clipping was not in the Pipeline If the clipping step was not in the graphics pipeline then all objects or part of objects.

© 2017 SlidePlayer.com Inc.

All rights reserved.

Ads by Google

Ppt on technical analysis of stocks Ppt on maple syrup urine disease Ppt on linear power supply Ppt on global warming for class 7 Ppt on limits and derivatives calculus Ppt on india vision 2020 Ppt on australian continent flags Ppt on ms access 2007 File type ppt on cybercrime law Ppt on computer languages popularity