Presentation is loading. Please wait.

Presentation is loading. Please wait.

Real-Time Rendering Cody Tankersley.  Term Project Overview ◦ Desired Shaders  What is noise?  A Little History….  Noise Functions ◦ Some Implementation.

Similar presentations


Presentation on theme: "Real-Time Rendering Cody Tankersley.  Term Project Overview ◦ Desired Shaders  What is noise?  A Little History….  Noise Functions ◦ Some Implementation."— Presentation transcript:

1 Real-Time Rendering Cody Tankersley

2  Term Project Overview ◦ Desired Shaders  What is noise?  A Little History….  Noise Functions ◦ Some Implementation Details  CPU vs GPU Noise  Applications that love noise!  References  Demos!  Administrative ‘Stuffz’ Some really cool noise [4]

3  Goal: Create an universe in real-time  Techniques: ◦ Noise – Perlin, Simplex, Basic ◦ Particle Systems  Effects Modeled: ◦ Variety of planet types (rock, gas, water, etc) ◦ Semi-realistic orbital paths ◦ Various other elements (black holes, comets, ‘twinkling’ stars, and more)

4  Sun Shader ◦ Animated sun spots  Rock Shader ◦ Model rocky planets  Water Shader ◦ Model water-based planets  Gas Shader ◦ Model gas-based planets  Other Possible Shaders ◦ Sun flare shader, molten shader, black hole shader, and more

5  Pseudo-Random Numbers  Way Too Many Definitions…. ◦ Wavelength (distance) ◦ Amplitude (max to min) ◦ Frequency ( 1 / wavelength) ◦ Octaves (values per iteration) ◦ Gradients ◦ Simplex (funny ‘squashed’ shapes) Noise [2]

6  Ken Perlin ◦ http://cs.nyu.edu/~perlin/ http://cs.nyu.edu/~perlin/  Why he studied noise  How and why noise has evolved More noise [4]

7  Perlin Noise (1984) ◦ O(2 n )  Simplex (2001) ◦ O(n 2 ) 3D Perlin Noise vs3D Simplex Noise [1]

8  Perlin Noise ◦ Generate random numbers (per iteration) ◦ Sample by gradient ◦ Smooth (or don’t) ◦ Interpolate ◦ Add value to total  Simplex Noise ◦ Generate random numbers (per iteration) ◦ Sample by gradient (or bits) ◦ Sum ◦ Add value to total

9  CPU Generation  GPU Generation ◦ Textures for storage Different interpolation Techniques [4]

10  Texturing ◦ e.g. Clouds / Wood / Marble / Etc  Particle Systems ◦ Who doesn’t love fire and smoke?  Object Placement ◦ Random map generation  There’s always more… ◦ ….I’m just not familiar with them clouds [4]

11  [1] S. Gustavson, “Simplex Noise Demystified,” http://staffwww.itn.liu.se/~stegu/simplexnoise/simplexnoise.pdf (accessed Oct. 5, 2011).  [2] H. Tulleken, “How to Use Perlin Noise in Your Games,” http://devmag.org.za/2009/04/25/perlin-noise/ (accessed Oct. 5, 2011).  [3] K. Perlin, “Implementing Improved Perlin Noise,” GPU Gems, Pearson Education, Inc, Upper Saddle River, New Jersey, 2005, ch. 5.  [4] K. Perlin, “Making Noise,” http://www.noisemachine.com/talk1/9.html (accessed Oct. 5, 2011).  [5] H. Elias, “Perlin Noise,” http://freespace.virgin.net/hugo.elias/models/m_perlin.htm (accessed Oct. 5, 2011).

12 Ahh, fire! [4]

13  Required Shaders ◦ Sun Shader ◦ Water/Ice Planet Shader ◦ Rock Planet Shader ◦ Gas Planet Shader  Desired ◦ Sun Flare Particle Shader ◦ Molten Planet Shader ◦ Black Hole Shader ◦ Comet Shader ◦ Simplex / Perlin / Basic Noise implementations of all planets


Download ppt "Real-Time Rendering Cody Tankersley.  Term Project Overview ◦ Desired Shaders  What is noise?  A Little History….  Noise Functions ◦ Some Implementation."

Similar presentations


Ads by Google