Interactive Terrain Synthesis

Slides:



Advertisements
Similar presentations
Geometry Clipmaps: Terrain Rendering Using Nested Regular Grids
Advertisements

Computer graphics & visualization. Image Synthesis – WS 07/08 Dr. Jens Krüger – Computer Graphics and Visualization Group Our GPU Photon Tracing Pipeline.
Procedural Textures. Noise in glman  glman automatically creates 2D and 3D textures (with default sizes 64x64 and 64x64x64) named  Noise2  Noise3 
Task Challenge \nted Challenge \nted Achievements Demo Game Terrains How can we create more interesting game terrains?
Computer Vision Lecture 7: The Fourier Transform
Wavelets Fast Multiresolution Image Querying Jacobs et.al. SIGGRAPH95.
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.
COMPUTER GRAPHICS CS 482 – FALL 2014 OCTOBER 6, 2014 TEXTURE MAPPING TEXTURES BUMP MAPPING ENVIRONMENT MAPPING PROCEDURAL TEXTURING.
Computer graphics & visualization Pre-Computed Radiance Transfer PRT.
Deformable Terrain Generation for Real-Time Simulation With Atmospheric and Geomorphological Processes By Peter Sbarski ( ) Supervisors: Jon McCormack.
Chapter 9: Recursive Methods and Fractals E. Angel and D. Shreiner: Interactive Computer Graphics 6E © Addison-Wesley Mohan Sridharan Based on Slides.
1GR2-00 GR2 Advanced Computer Graphics AGR Lecture 12 Solid Textures Bump Mapping Environment Mapping.
Order-Independent Texture Synthesis Li-Yi Wei Marc Levoy Gcafe 1/30/2003.
Procedural Modeling L-Systems Procedural Terrain Procedural Behavior Based on the slides from Spring 2007.
Interactive Mesh Sculpting Using a Haptic Device.
Procedural Shape Synthesis on Subdivision Surfaces
CSCE 641 Computer Graphics: Fourier Transform Jinxiang Chai.
TEXTURE SYNTHESIS PEI YEAN LEE. What is texture? Images containing repeating patterns Local & stationary.
Texture Reading: Chapter 9 (skip 9.4) Key issue: How do we represent texture? Topics: –Texture segmentation –Texture-based matching –Texture synthesis.
Texture Mapping April 9, The Limits of Geometric Modeling Although graphics cards can render over 10 million polygons per second, that number.
Texture mapping. Adds realism to computer graphics Texture mapping applies a pattern of color Bump mapping alters the surface Mapping is cheaper than.
Real-time Crowd Movement On Large Scale Terrains Speaker: Alvin Date:4/26/2004From:TPCG03.
Computational Photography: Fourier Transform Jinxiang Chai.
Multifractals in Real World
Computer graphics & visualization. Game Design - Rendering Smoke & Clouds Jürgen Treml Talk Overview 1.Introduction to Clouds.
10/21/03CS679 - Fall Copyright Univ. of Wisconsin Last Time Terrain Dynamic LOD.
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.
Procedural and Fractal Terrains
1 Texture. 2 Overview Introduction Painted textures Bump mapping Environment mapping Three-dimensional textures Functional textures Antialiasing textures.
Procedural terrain on the GPU Chalmers University of Technology Advanced computer graphics – DAT205 David Sundelius Adam Scott.
Procedural Textures.
Computer graphics & visualization REYES Render Everything Your Eyes Ever Saw.
Noise and Procedural Techniques John Spitzer Simon Green NVIDIA Corporation.
Graphics Graphics Korea University cgvr.korea.ac.kr Model Construction 고려대학교 컴퓨터 그래픽스 연구실.
Model Construction 김 성 남. Contents What is Modeling? Model Construction - Interactive modeling tools - Scanning tools - Computer vision -
A Fast Simulation Method Using Overlapping Grids for Interactions between Smoke and Rigid Objects Yoshinori Dobashi (Hokkaido University) Tsuyoshi Yamamoto.
Computer Graphics. Requirements Prerequisites Prerequisites CS 255 : Data Structures CS 255 : Data Structures Math 253 Math 253 Experience with C Programming.
Shading CMSC 435/634. RenderMan Light Displacement Surface Volume Imager.
Diane Marinkas CDA 6938 April 30, Outline Motivation Algorithm CPU Implementation GPU Implementation Performance Lessons Learned Future Work.
1 Introduction to Computer Graphics with WebGL Ed Angel Professor Emeritus of Computer Science Founding Director, Arts, Research, Technology and Science.
Shading CMSC 435/634.
Procedural Haptic Texture Jeremy Shopf Marc Olano University of Maryland, Baltimore County.
Fractals smooth surfaces and regular shapes - Euclidean-geometry methods -object shapes were described with equations natural objects - have irregular.
Noises & Turbulences. Why Noises? One of the most popular procedural technique Very few things in nature are regular Great variety of noises exists The.
Advances in digital image compression techniques Guojun Lu, Computer Communications, Vol. 16, No. 4, Apr, 1993, pp
Create Procedural Textures with Perlin Noises
Making World Planet Simulation By Gustav Olsson. Project Goals  Render a planet with terrain  Terrain  Atmospheric scattering in real time  Water.
Maya 8 at a Glance Chapter 4: Creating Textures. Shaders 2 Lambert: No highlights Phong: Distinct specular highlights Phong E: Greater controls for softer.
Jens Krüger & Polina Kondratieva – Computer Graphics and Visualization Group computer graphics & visualization 3D Rendering Praktikum: Shader Gallery The.
CSC/FAR 020, Computer Graphics, October 20, 2014 Dr. Dale E. Parson Outline for week 8, Type tools.
Real-Time Rendering Cody Tankersley.  Term Project Overview ◦ Desired Shaders  What is noise?  A Little History….  Noise Functions ◦ Some Implementation.
Three-Dimensional Object Representation
MSIM 842 VISUALIZATION II INSTRUCTOR: JESSICA R. CROUCH 1 A Particle System for Interactive Visualization of 3D Flows Jens Krüger Peter Kipfer.
Linear Algebra Operators for GPU Implementation of Numerical Algorithms J. Krüger R. Westermann computer graphics & visualization Technical University.
Particles and their home in Geometry Shaders Paul Taylor 2010.
Making waves Alain Fournier, UBC. Making Waves: What is the goal §Computable model §Geometry in familiar form §Realistic shape §Realistic motion §Depth.
An Image Synthesizer- Perlin Noise. Outline Noise Introduction Noise Algorithm Noise Texture Example.
A novel approach to visualizing dark matter simulations

CIS 781 Fractal Terrains.
Game Design, Development, and Technology
Computer Graphics.
Generating Terrains via Marching Cube Algorithm for Games
Shading CMSC 435/634.
Sampling Gabor Noise in the Spatial Domain
CSCE 643 Computer Vision: Thinking in Frequency
Computer Graphics Lecture 15.
Particle Systems - A Technique for Modeling a Class of Fuzzy Objects
Presentation transcript:

Interactive Terrain Synthesis Image Synthesis Interactive Terrain Synthesis

Fractal Terrain Synthesis Goals: Generation of fractal terrain Non-repetitive, infinite extent Interactive frame rates Real-time editable Methods Rescale & Add on GPU

Fractal terrain synthesis Stochastic Fractals „Statistical“ Self-Similarity (Stochastic Fractals) If blown up in scale, any part appears statistically similar to the whole Simulation of Fractal Brownian motion (FBm) Movement of small particles of solid matter in liquid Probability as a tool for modelling Modelling of (dynamic) natural phenomena Terrains, clouds, water etc. Modelling and rendering of solid textures Marble, wood etc. Procedural shaders

Rescale-and-Add Noise synthesis by point evaluation Summation of scaled and dilated noise functions

Rescale-and-Add Add weighted noise octaves to simulate 1/f-noise 1/f noise: as frequency increases, amplitude decreases 25 24 23 22 21 20

Rescale-and-Add Another method to simulate 1/f-noise = Generate noisy copies on-the-fly from a base random texture 20 21 22 = • • • 23 24

Rescale-and-Add H(x,y): synthesized height field F(x,y): basis function n: number of octaves

Rescale And Add Basis function(s) F: Filtered white noise, Perlin noise, images, … Affects basic appearance of terrain Reformulation yields more intuitive parameters: r: roughness l: lacunarity (fractal gap) o: octaves

Rescale And Add - Parameters Roughness r

Rescale And Add - Parameters Lacunarity l

Rescale And Add - Parameters Octaves o

Multifractals and other tricks… Substitute basis function by convex combination: with and More editing possibilities, more realism Add low frequency base geometry Edit basic terrain via base geometry Edit appearance via basis functions Close to spatial and frequency domain editing paradigm Use „odd“ lacunarity / roughness like 2.173482...  breaks up repetitions

Rotations & Translations Warp domain with pseudo-random rotations: Substitutes height field H(x,y)  H( Rot(x,y)+T(x,y) ) Some basic math involved. Key ideas: Rotation and Translation depend on octave Levels are warped against each other Rotation and Translation depend on roughness Emphasize or de-emphasize high roughness Avoid sine / cosine computations Rotation expressed via unit vector (no explicit angle) Entries are treated as cos(),sin()

Rotations & Translations

Domain Warping

GPU Implementation Tileable textures Basis functions Weights for multifractal Low frequency basis height field Final height field

Demo

Conclusion Terrain visualization: Terrain Synthesis: Major challenge: data volume GPU-friendly compression beyond S3TC needed GPU-friendly geometry compression needed In research… Terrain Synthesis: So far, can achieve ~30fps Faster soon due to improved vertex texture fetches Powerful, interactive WYSIWYG editing tools Editing of basis functions makes sense, now Future direction: fractal geotypical texture synthesis Anti-aliasing for some cases still hard