Noise Based Texture Noise Based Texture CMPS260 Presentation Guoping Xu Mar. 05, 2003.

Slides:



Advertisements
Similar presentations
Procedural Textures Jian Huang, CS594, Fall 2002 This set of slides references slides used at Ohio State and “Texturing and modeling” by Ebert, et. al.
Advertisements

Texture Visual detail without geometry. Texture Mapping desire for heightened realism.
COMPUTER GRAPHICS CS 482 – FALL 2014 OCTOBER 6, 2014 TEXTURE MAPPING TEXTURES BUMP MAPPING ENVIRONMENT MAPPING PROCEDURAL TEXTURING.
University of British Columbia CPSC 314 Computer Graphics Jan-Apr 2005 Tamara Munzner Textures III, Procedural.
Modelling. Outline  Modelling methods  Editing models – adding detail  Polygonal models  Representing curves  Patched surfaces.
Chapter 4 Digital Multimedia, 2nd edition Vector Graphics.
Procedural Modeling L-Systems Procedural Terrain Procedural Behavior Based on the slides from Spring 2007.
Introduction to Volume Visualization Mengxia Zhu Fall 2007.
Texture Mapping from Watt, Ch. 8 Jonathan Han. Topics Discussed Texture Map to Models Bump Maps, Light Maps Environment (Reflection) Mapping 3D Textures.
Course Website: Computer Graphics 11: 3D Object Representations – Octrees & Fractals.
Face Recognition Based on 3D Shape Estimation
Procedural Shape Synthesis on Subdivision Surfaces
Twelve painting with procedures. Overview Making shaded images with procedures Making a more elegant language Making textures with noise functions.
Texture Mapping April 9, The Limits of Geometric Modeling Although graphics cards can render over 10 million polygons per second, that number.
University of British Columbia CPSC 414 Computer Graphics © Tamara Munzner 1 Curves Week 13, Mon 24 Nov 2003.
Perlin Noise CS4300. The Oscar™ To Ken Perlin for the development of Perlin Noise, a technique used to produce natural appearing textures on computer.
1 Computer Graphics Week13 –Shading Models. Shading Models Flat Shading Model: In this technique, each surface is assumed to have one normal vector (usually.
David Runyon Lauren Stana Kelsey Vaughn Molly Shelestak.
Computer Graphics: Programming, Problem Solving, and Visual Communication Steve Cunningham California State University Stanislaus and Grinnell College.
CS-557 Gregory Dudek CD Contents. CS-557 Gregory Dudek Course description Lecture schedule by week 1997 Image Gallery Assignments Page Morphing Notes.
3D Computer Graphics: Textures. Textures: texels Texture is a way of assigning a diffuse color to a pixel – can be with 1, 2 or 3D- can use maps, interpolation.
1 Additional 3D Topics  Splitting polygons  Off screen rendering for capture of rendered images.  Sound in Java 3D scene graphs  Advanced textures.
Advanced Texturing Methods Glenn G. Chappell U. of Alaska Fairbanks CS 381 Lecture Notes Monday, December 8, 2003.
Texture Mapping. 2 The Limits of Geometric Modeling Although graphics cards can render over 10 million polygons per second, that number is insufficient.
1 Texture. 2 Overview Introduction Painted textures Bump mapping Environment mapping Three-dimensional textures Functional textures Antialiasing textures.
Interactive Terrain Synthesis
Procedural Textures.
CSS 522 Topics in Rendering March 01,2011 Scott and Lew.
01/24/05© 2005 University of Wisconsin Last Time Raytracing and PBRT Structure Radiometric quantities.
11/19/02 (c) 2002, University of Wisconsin, CS 559 Last Time Many, many modeling techniques –Polygon meshes –Parametric instancing –Hierarchical modeling.
Noise and Procedural Techniques John Spitzer Simon Green NVIDIA Corporation.
University of British Columbia CPSC 314 Computer Graphics Jan-Apr 2010 Tamara Munzner Textures III Week 10,
COLLEGE OF ENGINEERING UNIVERSITY OF PORTO COMPUTER GRAPHICS AND INTERFACES / GRAPHICS SYSTEMS JGB / AAS 1 Shading (Shading) & Smooth Shading Graphics.
June 9, 2008 Dr. Haim Levkowitz IVPR/CS/UML | 1 Texture.
Subdivision Schemes Basic idea: Start with something coarse, and refine it into smaller pieces for rendering –We have seen how subdivision may be used.
CSC505 Particle Systems. CSC505 Object Representations So far we have represented (rendered) objects with –Lines –Polygons (triangles) –Curves These techniques.
Noises & Turbulences. Why Noises? One of the most popular procedural technique Very few things in nature are regular Great variety of noises exists The.
CSC505 More on Particles Special Effects. CSC505 Special Effects Extensions to the particle engines we looked at last week –Similar in that we are looking.
Computer Graphics 2 Lecture 7: Texture Mapping Benjamin Mora 1 University of Wales Swansea Pr. Min Chen Dr. Benjamin Mora.
CHAPTER 8 Color and Texture Mapping © 2008 Cengage Learning EMEA.
Vector Graphics Digital Multimedia Chap 이병희
1 Graphic Design & Illustration Basic Rendering Techniques Copyright © Texas Education Agency, All rights reserved. Images and other multimedia content.
Create Procedural Textures with Perlin Noises
112/5/ :54 Graphics II Image Based Rendering Session 11.
HEAT TRANSFER FINITE ELEMENT FORMULATION
Procedural Models How to easily generate complex data?
Real-Time Rendering Cody Tankersley.  Term Project Overview ◦ Desired Shaders  What is noise?  A Little History….  Noise Functions ◦ Some Implementation.
Interactive Graphics Lecture 10: Slide 1 Interactive Computer Graphics Lecture 10 Introduction to Surface Construction.
11/6/ :55 Graphics II Introduction to Parametric Curves and Surfaces Session 2.
Animating Fire by Kathleen Marty. How to create fire? Implement the paper: Structural Modeling of Flames for a Production Environment, by Arnauld Lamorlette.
Procedural Content One of Realm of Kaodith’s primary features is the procedurally generated maps. Procedural content allows the user to have access to.
CS654: Digital Image Analysis Lecture 11: Image Transforms.
An Image Synthesizer- Perlin Noise. Outline Noise Introduction Noise Algorithm Noise Texture Example.
67535: Computer Games Programming Week 2: Randomness: Perlin noise and Fractals Lighting: Phong-Blinn-Giraud; HDR Tutorial: Phong lighting in a fragment.
Part II – Photorealistic Rendering (1) Texture (4) CPSC 591/691.
CSE 681 Texture Mapping: Solid Texturing. CSE 681 Texture Mapping Visual complexity on demand Vary display properties over object Location on object used.

Game Design, Development, and Technology
Noise | Course Overview Jim Whitehead
Perlin Noise CSU540.
Procedural Textures.
Introduction to Graphics Modeling
Volumetric Texture Mapping
Texture Mapping COMP575/COMP770.
Sampling Gabor Noise in the Spatial Domain
Real-time Procedural Volumetric Fire
Dr. Jim Rowan ITEC 2110 Vector Graphics II
Texture Mapping: Solid Texturing
Advanced Computer Graphics: Texture
Texture Mapping: Solid Texturing
Presentation transcript:

Noise Based Texture Noise Based Texture CMPS260 Presentation Guoping Xu Mar. 05, 2003

Content Introduction Procedural texture Solid texture Noise Animation

Procedural Techniques Used to produce realistic textures —marble, wood, stone, bricks, etc Used to produce realistic objects —water, smoke, steam, fire, etc Offer flexibility to create objects —the designer is not constrained by the complex laws of physics

Solid texture We can use space function to represent a solid material. Solid texture We will obtain the surface texture if we evaluate this space function at the visible surface points of an object Shape and texture are independent

Noise Why noise? Noise is a texturing primitive, we can use it to create a large variety of natural looking textures. Many things in nature are fractal, they have various levels of detail. So, combining noise into various space functions will produce natural looking procedural textures.

Generating Noise Value Noise Given a pseudorandom number between -1 and 1 at each lattice point, a noise function is computed from these random values Gradient Noise First generate a pseudorandom gradient vector at each lattice point and then use the gradients to generate the stochastic function Value-Gradient Noise A combination of value noise and gradient noise. e.g. weighted sum of two, or cubic Hermite interpolation.

Perlin Noise(1) -Value Noise Perlin Noise function recreates the fractal property by simply adding up noisy functions at a range of different scales Perlin noise is a popular noise To create a Perlin noise function, you will need two things, a Noise Function, and an Interpolation Function [1]

Requirements I–Noise funciton A seeded random number generator Generate the same number( 0 ~ 1 ) for the same seed Sum of noise functions= Perlin Noise Those noises are of different frequency and amplitude frequency = 2 i amplitude = persistence i i is ith noise function being added

Gradient Noise Precompute array of n pseudorandom vectors at lattice points Calculate the noise from the nearest corner gradient vectors according to its location For example, in 3D, find the cube associated to the point, then according to the difference vector to each corner and the gradient there, calculate the noise interested.

Requirements II –Interpolation function(1) We can use different order of interpolation Linear interpolation linearly interpolate between two end point x(t)=a*(1-t)+b*t 0<=t<=1 –not smooth

Interpolation function(2) Cosine interpolation f(t)=(1-cos(  t))/2 x(t)=a*(1-f(t))+b*f(t) 0<=t<=1 much smoother, but need to speedup the cos(  t ) calculation

Interpolation function(3) Cubic interpolation very smooth

Smooth the noise Smooth the noise at by taking account of the influence of neighbors

Application You can use 2D Perlin Noise to landscapes and clouds You can use 3D Perlin Noise to produce volumetric clouds, or animate 2D clouds You can use 4D Perlin Noise to create animated 3D clouds, except that it would be really slow

Sample pictures 1.Marble texture texture=cosine( x + perlin(x,y,z) ) 2.Wood texture G=perlin(x,y,x)*20, grain=g-int(g) 3.Standard 3 dimensional perlin noise. 4 octaves, persistence 0.25 and Cloud using 2D Perlin Noise

Animation Consider 2 ways of animating solid spaces Changing the solid space over time Has time as a parameter that changes the definition of the space over time Moving the point being rendered through the solid space

References Perlin, K., An Image Synthesizer. Proceedings of SIGGRAPH '85 (San Francisco,July ). In Computer Graphics 19, 3 (July 1985), Perlin, K and Hoffert, E., Hypertexture, Computer Graphics, Vol. 23, No. 3, July 1989, Ebert, D., Musgrave, F., etc.,Texturing and Modeling, a Procedural Approach, AP Professional, 1994.

Thank You!