Perlin Noise CS4300. The Oscar™ To Ken Perlin for the development of Perlin Noise, a technique used to produce natural appearing textures on computer.

Slides:



Advertisements
Similar presentations
Cs123 INTRODUCTION TO COMPUTER GRAPHICS Andries van Dam © Andries van Dam Texture Mapping Beautification of Surfaces 1/23.
Advertisements

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.
CS 551 / CS 645 Antialiasing. What is a pixel? A pixel is not… –A box –A disk –A teeny tiny little light A pixel is a point –It has no dimension –It occupies.
COMPUTER GRAPHICS CS 482 – FALL 2014 OCTOBER 6, 2014 TEXTURE MAPPING TEXTURES BUMP MAPPING ENVIRONMENT MAPPING PROCEDURAL TEXTURING.
Graphics. Applications  Digital media  Entertainment  Art  Visualization  Science  Modeling  Games  Software  Virtual Reality.
CS6500 Adv. Computer Graphics © Chun-Fa Chang, Spring 2003 Adv. Computer Graphics CS6500, Spring 2003.
CS6500 Adv. Computer Graphics © Chun-Fa Chang, Spring 2003 Texture Mapping.
BPC: Art and Computation – Spring 2007 Overview of Spring Semester Tools and Technologies Glenn Bresnahan
Video Object Tracking and Replacement for Post TV Production LYU0303 Final Year Project Fall 2003.
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.
Eighteen painting with procedures. Review [bitmap-from-procedure procedure width height] Returns a bitmap width pixels by height pixels Obtains colors.
COMP236: Computer Graphics Spring’2000 Dinesh Manocha.
Texture Mapping Texture Mapping Ltjg Omer Arisut Turkish Navy Turkish Navy Texture Mapping Texture Mapping Ltjg Omer Arisut Turkish Navy Turkish Navy.
History of Computer-aided design (CAD) How did we get from… to here? here Bigkif. “Ivan Sutherland : Sketchpad Demo (1/2)” accessed accessed.
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.
Noise Based Texture Noise Based Texture CMPS260 Presentation Guoping Xu Mar. 05, 2003.
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.
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.
Procedural Textures.
CSS 522 Topics in Rendering March 01,2011 Scott and Lew.
College of Computer and Information Science, Northeastern UniversitySeptember 5, CS5310 Graduate Computer Graphics Prof. Harriet Fell Spring 2011.
Definition of Computer Graphics
Grafis 3D. What is 3D?  3D Image x, y, z Tell a story, more information  2D Image x, y Communicate something simple (ie. cheat)
Noise and Procedural Techniques John Spitzer Simon Green NVIDIA Corporation.
24/02/10 ANIMASI TEKNOLOGI IF.UB. Eriq Muhammad Adams J. -
Linear Interpolation, Brief Introduction to OpenGL Glenn G. Chappell U. of Alaska Fairbanks CS 381 Lecture Notes Monday, September.
ECSE 4750: Computer Graphics Rensselaer Polytechnic Institute Nov 5, 2012 Texture and Texture Mapping.
3D COMPUTER GRAPHICS IMD Chapter 1: 3D Computer Graphics Chapter 1: 1 Lecturer: Norhayati Mohd Amin.
University of Texas at Austin CS384G - Computer Graphics Fall 2008 Don Fussell Texture Mapping.
Zhang & Liang, Computer Graphics Using Java 2D and 3D (c) 2007 Pearson Education, Inc. All rights reserved. 1 Chapter 12 Additional 3D Topics.
Computer Graphics An Introduction. What’s this course all about? 06/10/2015 Lecture 1 2 We will cover… Graphics programming and algorithms Graphics data.
Week 11 - Thursday.  What did we talk about last time?  Image processing  Blurring  Edge detection  Color correction  Tone mapping  Lens flare.
INTRODUCTION INTRODUCTION Computer Graphics: As objects: images generated and/or displayed by computers. As a subject: the science of studying how to generate.
College of Computer and Information Science, Northeastern UniversityOctober 16, CS G140 Graduate Computer Graphics Prof. Harriet Fell Spring 2007.
3D animation is rendered clip of animated 3D objects in a 3D environment. An example: Examples of movies released in 3D are Toy Story, Cars, Shrek, Wall-E,
Noises & Turbulences. Why Noises? One of the most popular procedural technique Very few things in nature are regular Great variety of noises exists The.
Computing & Information Sciences Kansas State University Lecture 10 of 42CIS 636/736: (Introduction to) Computer Graphics CIS 636/736 Computer Graphics.
CS418 Computer Graphics John C. Hart
Data dan Teknologi Multimedia Sesi 07 Nofriyadi Nurdam.
Create Procedural Textures with Perlin Noises
Computer Graphics: Programming, Problem Solving, and Visual Communication Steve Cunningham California State University Stanislaus and Grinnell College.
Aaron Hertzmann New York University
Real-Time Rendering Cody Tankersley.  Term Project Overview ◦ Desired Shaders  What is noise?  A Little History….  Noise Functions ◦ Some Implementation.
Lecture : Mark Anthony P. Cezar.  Definition  Producing pictures or images using a computer  Example  Starship Troopers: Tango-Urilla, Death From.
MIT EECS 6.837, Durand and Cutler Texture Mapping & Other Fun Stuff.
Greg Humphreys CS445: Intro Graphics University of Virginia, Fall 2003 Texture Mapping Greg Humphreys University of Virginia CS 445, Fall 2003.
An Image Synthesizer- Perlin Noise. Outline Noise Introduction Noise Algorithm Noise Texture Example.
CSE 681 Texture Mapping: Solid Texturing. CSE 681 Texture Mapping Visual complexity on demand Vary display properties over object Location on object used.

- Introduction - Graphics Pipeline
Game Design, Development, and Technology
Noise | Course Overview Jim Whitehead
Week 11 - Wednesday CS361.
Perlin Noise CSU540.
Procedural Textures.
painting with procedures
Volumetric Texture Mapping
Texture Mapping COMP575/COMP770.
Introduction to Computer Graphics with WebGL
CS451Real-time Rendering Pipeline
Scientific Visualization I – Unit 6
Procedural Terrain Generation
CS G140 Graduate Computer Graphics
Shading and Surface Characteristics
Presentation transcript:

Perlin Noise CS4300

The Oscar™ To Ken Perlin for the development of Perlin Noise, a technique used to produce natural appearing textures on computer generated surfaces for motion picture visual effects.

The Movies James Cameron Movies (Abyss,Titanic,...) Animated Movies (Lion King, Moses,...) Arnold Movies (T2, True Lies,...) Star Wars Episode I Star Trek Movies Batman Movies and lots of others In fact, after around 1990 or so, every Hollywood effects film has used it.

What is Noise? Noise is a mapping from R n to R - you input an n-dimensional point with real coordinates, and it returns a real value. n=1for animation n=2cheap texture hacks n=3 less-cheap texture hacks n=4time-varying solid textures

Noise is Smooth Randomness

Making Noise 1.Generate random values at grid points. 2.Interpolate smoothly between these values.

Linear Noise

lerp The basic operation of linear interpolation between two values is so commonly used in computer graphics that it is sometimes called a lerp in the jargon of computer graphics. Lerp operations are built into the hardware of all modern computer graphics processors.

lerping lerp(v1, v2, t) = (1 – t)v1 + tv2 P Q (1-t)P + tQ t of the distance from P to Q

2D Linear Noise

3D Linear Noise

Noise is Smooth Randomness

Perlin Noise Sphere

Turbulence or Sum 1/f(noise) noise(p) + ½ noise(2p) + ¼ noise(4p)...

Perlin Sum 1/f(noise) Sphere

Perlin Sum 1/f(|noise|) Sphere

2D Nornalized Turbulence Just Noise

2D Turbulence - Clipped

Marble factorG = sqrt(abs(sin(x + twist*turbulence(x, y, noise)))) color = (0, trunc(factorG*255), 255);

Clouds r = sqrt((x-200/d)*(x-200/d) + (y-200/d)*(y-200/d)); factorB = abs(cos(r + fluff*turbulence(x, y, noise)); color=( *(1 - factorB), *(1 - factorB), 255);

Student Images

Perlin’s Clouds and Corona