Lecture8 HyperTexture

Information about Lecture8 HyperTexture

Published on January 14, 2008

Author: Raffaele

Source: authorstream.com

Content

Simulation Smoke and Water in CG:  Simulation Smoke and Water in CG Vortex Particle Method, Hyper-Texturing, Cellular Texturing Last Few Times…:  Last Few Times… Moving smoke density (and temperature) Moving fluid velocities (Navier Stokes) How to write a paper Today’s Lecture:  Today’s Lecture Hyper Texturing Cellular Texturing Vortex Particle Method (extension to vorticity confinement) Slide4:  Hyper Texturing Examples of HyperTexture I:  Examples of HyperTexture I Examples of HyperTexture II:  Examples of HyperTexture II Images from Stealth (visual effects by Digital Domain) Examples of HyperTexture III:  Examples of HyperTexture III Ken Perlin received an Academy Award for devising a method for generating textures like this marble which was taken from his 1985 paper. A Soft Shape:  A Soft Shape Consider a sphere-shape with an inner radius, ri, and an outer radius ro: Basic HyperTexture Paradigms:  Basic HyperTexture Paradigms Next we define several basic texture functions... Noise I:  Noise I High Frequency Content in a Controlled Way Noise II:  Noise II Desired Noise-Properties: Noise should be a repeatable pseudorandom function of its inputs Noise should have a known range, e.g. -1 to 1 Noise should be band-limited Noise should not exhibit obvious periodicities or regular patterns Noise should be translationally invariant Noise should be rotationally invariant We will look at noise functions known as lattice noise... Noise III – Value Noise:  Noise III – Value Noise Note that typically your lattice will not be positioned exactly at the same Position and have the same resolution as your density/simulation grid. 1: Generate random numbers at lattice points: 2: Interpolate between the lattice points to obtain a smooth function: Noise IV – Interpolation methods:  Noise IV – Interpolation methods There are many more... See e.g. a numerical analysis book Linear Interpolation: Cosine Interpolation: Cubic Interpolation: Gradient Noise I:  Gradient Noise I Value is zero at all lattice points. One pseudo-random wavelet is centered at each lattice point (wavelet = function that drops off to zero outside some region and that integrates to zero). Wavelet consists of: Radius (which we set equal to 1) A random gradient direction assigned to each lattice point (note: only variation between lattice points) Each point in space is influenced by eight wavelets. Notice that if you sample this noise function exactly at the lattice points you get identically zero – an effect of aliasing Gradient Noise II:  Gradient Noise II Computing the value at a certain point x: Compute which cubical cell x lies in. Compute the wavelet centered on each of the eight vertices of the cubical cell. Sum the wavelets. It is possible to combine the value and gradient noise functions by forming a weighted sum of the two into a Value-Gradient noise. Comparing Noise:  Comparing Noise Value Noise Gradient Noise Value-Gradient Noise Turbulence I:  Turbulence I Fractal Turbulence Turbulence has gradient discontinuities at all scales... Turbulence II:  Turbulence II A turbulent hyper-texture is generated by summing noise at several frequencies and scaling higher frequencies down: Turbulence III:  Turbulence III Example: MINFREQ = 1, MAXFREQ = grid-resolution. Note that there should be some mapping between the density grid and the noise texture (e.g. Gradient noise zero on lattice points). This can be as simple as a non-integral translation in one or more directions. The Bias Function:  The Bias Function The bias function: b lies between 0 and 1. The Gain Function:  The gain function: g lies between 0 and 1. The Gain Function An Example Hyper-Texture:  An Example Hyper-Texture D(x) = sphere(x + x * turbulence(x)) Marble Revisited:  Marble Revisited marble = sin(point.x + turbulence(point)*point.x) The Signed Distance Field (SDF):  The Signed Distance Field (SDF) The surface S is defined as: The unsigned distance field: The signed distance field: where sign(x) is -1 inside and +1 outside. Soft Density Fields from SDFs:  Soft Density Fields from SDFs ri = 0, ro = 10 ri = -10, ro = 10 Hint: How to Create a Hypertextured bunny:  Hint: How to Create a Hypertextured bunny HT-bunny(x) = bunny(x + c*turbulence(x)*n) Where c is a scalar representing the contribution of the turbulence and n is the normal (normalized gradient). Slide27:  Cellular Texturing Cellular Texturing Examples I:  Cellular Texturing Examples I Cellular Texturing Examples II:  Cellular Texturing Examples II Cellular Texturing I:  Cellular Texturing I Let F1(x) be the distance to the closest feature, F2(x) the distance to the second closest feature and so on. Then a cellular texture at a single point x can simply be computed as: Cellular(x) = C1*F1(x) + C2*F2(x) + C3*F3(x) + C4*F4(x) Note that Cellular(x) = F1(x) resembles a Voronoi Diagram. Cellular Texturing II:  Cellular Texturing II The water-like surface can be computed much like turbulence by summing cellular textures at different frequencies: Slide32:  Vortex Particle Method Let’s first recall the vorticity confinement method... Vorticity Confinement I:  Vorticity Confinement I (Slide by Jos Stam, SIGGRAPH 2003) Vorticity Confinement II:  Vorticity Confinement II (Slide by Jos Stam, SIGGRAPH 2003) Vorticity Confinement III:  Vorticity Confinement III (Slide by Jos Stam, SIGGRAPH 2003) What’s Wrong with Vorticity Confinement?:  What’s Wrong with Vorticity Confinement? Too much vorticity confinement causes instabilities and artifacts... Vorticity confinement is hard to control. The degree of vorticity confinement, , is the same at all grid points. Vortex Particle Method:  Vortex Particle Method We want rolling smoke effects that do not have the artifacts of Vorticity confinement alone. Vortex Particle Method was used in Star Wars III. Vortex Particle Method:  Vortex Particle Method The basic idea: Let particles carry vorticity (magnitude and direction) and affect the velocity field computed by the grid based method locally using vorticity confinement. (= a localized vorticity confinement force). Vortex Particle Method:  Vortex Particle Method Recall the momentum conserving part of the Navier Stokes equations: This can be put into vorticity (curl) form by taking the curl on both sides: Vortex Particle Method:  Vortex Particle Method If we only solved for vorticity at the particles, we would need to construct a velocity field u from the vorticity carried by the particles: This is hard! So instead we just let u be computed using the usual grid based method and for the vorticity: We ignore body forces and diffusion in the vorticity equation above! Vorticity is advected: This is done simply by passively advecting the particle position using the velocity field Use the same method for the advection term as for semi-lagrangian advection (here just forward instead of backwards) And stretched: At each step the magnitude of the vorticity is conserved! Vortex Particle Method:  Vortex Particle Method Finally the vorticity of the particles is transferred to the grid using a localized vorticify confinement: Where is a Gaussian kernel: Since the vorticity is largest at the center of the particle, xp, we have that: And finally: Next Time:  Next Time Introduction to Water Simulation How to represent the water surface as a deforming surface: Level Sets

Related presentations


Other presentations created by Raffaele

Biomes freshwater
08. 01. 2008
0 views

Biomes freshwater

phase transformation
09. 01. 2008
0 views

phase transformation

SummerSafety
10. 01. 2008
0 views

SummerSafety

matt nauth
10. 01. 2008
0 views

matt nauth

PhotoReactionIronOxa late
11. 01. 2008
0 views

PhotoReactionIronOxa late

APA 2004
13. 01. 2008
0 views

APA 2004

guineapigs
13. 01. 2008
0 views

guineapigs

Heuristicsstudent
15. 01. 2008
0 views

Heuristicsstudent

Laughing Matter1
17. 01. 2008
0 views

Laughing Matter1

pictorial dictionary
17. 01. 2008
0 views

pictorial dictionary

CS20L Lecture Set 14 Hashing
17. 01. 2008
0 views

CS20L Lecture Set 14 Hashing

ETM Solar
21. 01. 2008
0 views

ETM Solar

51english
22. 01. 2008
0 views

51english

Lambda RED
22. 01. 2008
0 views

Lambda RED

NeillReid012005
25. 01. 2008
0 views

NeillReid012005

Rhyne
30. 01. 2008
0 views

Rhyne

stmgtsupv
07. 02. 2008
0 views

stmgtsupv

reel theory
12. 02. 2008
0 views

reel theory

urbinodek2
25. 02. 2008
0 views

urbinodek2

um rule transitional services
03. 03. 2008
0 views

um rule transitional services

Educ in SA PPt
11. 01. 2008
0 views

Educ in SA PPt

Melnik ASSE 2005 Powerpoint
07. 03. 2008
0 views

Melnik ASSE 2005 Powerpoint

Multi Site Presentation
10. 03. 2008
0 views

Multi Site Presentation

wk11 Antennas
24. 03. 2008
0 views

wk11 Antennas

fifty
28. 01. 2008
0 views

fifty

AGellmann BOPL 060704
08. 04. 2008
0 views

AGellmann BOPL 060704

EURPRE FROMTHEPOUNDTOTHEEURO
15. 04. 2008
0 views

EURPRE FROMTHEPOUNDTOTHEEURO

TomSchaller
09. 01. 2008
0 views

TomSchaller

WholeBodyVibration2
17. 04. 2008
0 views

WholeBodyVibration2

History of Swimming
23. 04. 2008
0 views

History of Swimming

Dr Kathie Cooper
24. 04. 2008
0 views

Dr Kathie Cooper

Dirk
07. 05. 2008
0 views

Dirk

Ch 03
02. 05. 2008
0 views

Ch 03

fourthgrade
22. 01. 2008
0 views

fourthgrade

SWP02
19. 01. 2008
0 views

SWP02

NextGenVisAids
04. 02. 2008
0 views

NextGenVisAids

Emma Bartle
11. 02. 2008
0 views

Emma Bartle

Eurodad INFID presentation 2005
14. 01. 2008
0 views

Eurodad INFID presentation 2005