1
play

1 Plan for today Approaches to modeling in CG 1st half How does - PDF document

Before we begin Paper summaries for today? Procedural Modeling Announcement Announcement Were looking for a few good programmers! Career Fair ACM Programming Contest Wednesday, September 27th Teams up to 3 people


  1. Before we begin  Paper summaries for today? Procedural Modeling Announcement Announcement  We’re looking for a few good programmers!  Career Fair  ACM Programming Contest  Wednesday, September 27th  Teams up to 3 people  Local Tryouts: Sept 22nd at 5pm (ICL4)  10am -- 4pm  Gordon Field House  Free food will be served  Contact : Paul Tymann (ptt@cs.rit.edu)  By Sept 18th (if interested)  http://www.cs.rit.edu/~icpc  http://www.rit.edu/co-op/careers Logistics Computer Graphics as Virtual Photography  Reminder real camera photo Photographic Photography: scene (captures processing print  Project Proposals due next Monday light) processing  Raytracer Checkpoint 1 due Wednesday. camera Computer 3D synthetic tone model Graphics: models image reproduction (focuses simulated lighting) 1

  2. Plan for today Approaches to modeling in CG  1st half  How does one describe reality?  Procedural Models  Empirical -- Use measured data  Fixed model  2nd Half  Procedural Modeling  Intro to Camera Models  Physical simulation  Heuristic  Questions? Procedural Models Proceduralism in Computer Graphics  Fixed models/primitives not robust enough  Several Heuristic methods  Quest for extensibility and programmability  Fractals  Use a function or procedure to define the  Fractal terrains surface or structure of an object.  L-Systems  Procedural Methods  Volumetric Models  Shading  Hypertexture  Modeling  Animation Why Fractals? Fractals  A language of form for shapes and  Procedural way to add complexity to a scene phenomena common in Nature  Elements of nature posses fractal properties.  “Geometrical complex object, the  Used to model nature complexity of which arises through the  Terrain repetition of form over some range of  Clouds scale”.  Coastlines  Statistical self-similarity at all scales  Trees / Landscaping 2

  3. Fractals Fractals – The Mandelbrot Set Foley/VanDam/Feiner/Hughes  Repetition of some underlying shape (basis function) at different scales  Kock Snowflake Applet  http://www.arcytech.org/java/fractals/koch.shtml Fractals - Mandelbrot Set Fractals  Fractals - Mandelbrot Set  Plot of a recursive mathematical function in the complex plane  http://www.math.utah.edu/~pa/math/man  Z n = Z n-1 2 + C delbrot/mandelbrot.html  For each complex number, the function will:  Fractint  Move quickly to infinity (outside of the set)  Move slowly to infinity (on the border of the set)  Remain near the origin (inside the set)  Create image by coloring based on how many iterations it takes to indicate divergence towards infinity.  Function is self-similar as we zoom into different areas of the plot on the complex plane. Fractal Terrain Fractal Terrain  Fractals -- a simple example  Fractals - a simple example Foley/VanDam/Feiner/Hughes [Fournier82] 3

  4. Fractal Terrain Fractal Terrain  Paul Bourke  Fractals - extend to 2d Foley/VanDam/Feiner/Hughes Fractal Terrain Fractal Terrain Fractal Terrain Fractal Terrain -Vol Libre Ridge  my favorite fractal landscape [F. Kenton Musgrave] Foley/VanDam/Feiner/Hughes 4

  5. Fractals Fractal Modeling  Fractal comes from fractal dimension  Fractal modeling  Like Mandelbrot set, can zoom infinitely a.b  Render at resolution that is most appropriate  Instant anti-aliasing. a = Euclidean dimension b = fraction of filling up next dimension  Can model a whole planet procedurally Fractal Modeling Fractal Modeling  http://www.pandromeda.com  Explore fractal worlds on-line F.K. Musgrave  Mojo World [Musgrave] Grammar Based Systems Grammar Based Systems - Example  Building of models based on formal language grammars Characters: {A, B,[, ]} Iterations:  Method for creating fractals Rules: A -> AA 0: B B->A[B]AA[B]  Grammar consists of: 1: A[B]AA[B] Start word B  Set of characters 2: AA[A[B]AA[B]]AAAA[A[B]AA[B]]  Productions rules  Starting word 5

  6. Grammar Based Systems Grammar Based Systems  But how does this help us create models?  Assign a drawing action to each character:  L-Systems  L-System (Lindenmeyer) used to create tree-like  F=F[+F]F[-F]F structures:  Applet  F move forward and draw  http://www-sfb288.math.tu-  f move forward and do not draw berlin.de/vgp/javaview/vgp/tutor/l  + increase angle with angle increment system/PaLSystem.html  - decrease angle by angle increment  [ push state (i.e. branch)  ] pop state (i.e finish branch) L-System Ferns L-Systems - Trees Foley/VanDam/Feiner/Hughes L-System Trees Grammar-Based Systems  For more info:  Prusinkiewicz, Lindenmayer systems, fractals, and plants  Prusinkiewicz and Lindenmeyer, The Algoritmic Beauty of Plants  Questions? Foley/VanDam/Feiner/Hughes 6

  7. Volumetric Models Hypertexture [Perlin89]  Not all objects are “solid” models  Extension of procedural textures  Between surface + texture, i.e., spatial  water filling/volumetric  fire  Objects modeled as distribution of density  clouds  hard region - objects completely solid  Rain  soft region - object shape is malleable using a  Objects exists in a volume toolkit of shaping functions and CSG style operators to combine shapes  Hypertexture Hypertexture Hypertexture  Toolbox of base DMFs  D(x) - Object Density Function over R 3  Bias – up / down control  D ( x ) for all points x in 3D space [0,1]  Gain – controls gradiant  Density of 3D shape  Noise (controlled randomness)  D ( x ) = 0 for all points outside the surface  Won Ken an Academy Award!  D ( x ) = 1 for hard region of the object  Turbulence  0 < D ( x ) < 1 for soft region of the object  Sum of noise at variety of frequencies (fuzzy region)  Mathematical functions Hypertexture Noise Examples Hypertexture Example - Fire Red = low density Yellow = high Noisy 2* frequency, 1/2 amplitude [Perlin89] D ( x ) = sphere(x ( 1 + turbulence ( x ))) [Perlin89] High Amplitude, Noisy Sphere Fractal, noise - Σ many f’s 7

  8. Hypertexture Example - Fur/Hair Animated Examples Here noise displaces x before projecting; http://www.kenmusgrave.com/animations.html uses variable to control curliness [Perlin89] Tribble Procedural Models  Summary  Use of a function to define objects  Types  Fractals/L-Systems  Volumetric Models  Hypertexture  Good for  Natural objects  Landscapes  Non-solid type objects  Break. 8

Download Presentation
Download Policy: The content available on the website is offered to you 'AS IS' for your personal information and use only. It cannot be commercialized, licensed, or distributed on other websites without prior consent from the author. To download a presentation, simply click this link. If you encounter any difficulties during the download process, it's possible that the publisher has removed the file from their server.

Recommend


More recommend