Overview. Hierarchy. Level of detail hierarchy Texture maps Procedural shading and texturing Texture synthesis and noise.

Similar documents
Texture. Texture Maps

Texture. Detail Representation

Multiple Importance Sampling

Computer Graphics. - Texturing Methods -

CIS 536/636 Introduction to Computer Graphics. Kansas State University. CIS 536/636 Introduction to Computer Graphics

More Texture Mapping. Texture Mapping 1/46

Announcements. Written Assignment 2 is out see the web page. Computer Graphics

CSE528 Computer Graphics: Theory, Algorithms, and Applications

Shading Languages. Seminar Computer Graphics. Markus Kummerer

Texture Mapping II. Light maps Environment Maps Projective Textures Bump Maps Displacement Maps Solid Textures Mipmaps Shadows 1. 7.

Shading. Flat shading Gouraud shading Phong shading

Bump Mapping Which one of these two image has a better visual effect?

CG Surfaces: Materials, Shading, and Texturing

Advanced Shading and Texturing

Today. Global illumination. Shading. Interactive applications. Rendering pipeline. Computergrafik. Shading Introduction Local shading models

3D Rasterization II COS 426

CMSC427 Shading Intro. Credit: slides from Dr. Zwicker

Reading. Texture Mapping. Non-parametric texture mapping. Texture mapping. Required. Angel, 8.6, 8.7, 8.9, Recommended

Texture-Mapping Tricks. How Bad Does it Look? We've Seen this Sort of Thing Before. Sampling Texture Maps

Complex Shading Algorithms

Texture and other Mappings

Texture mapping. Computer Graphics CSE 167 Lecture 9

Recollection. Models Pixels. Model transformation Viewport transformation Clipping Rasterization Texturing + Lights & shadows

Reading. Texture Mapping. Non-parametric texture mapping. Texture mapping. Required. Angel, 8.6, 8.7, 8.9, 8.10,

Topics and things to know about them:

Overview. Radiometry and Photometry. Foundations of Computer Graphics (Spring 2012)

Computer Graphics. Lecture 14 Bump-mapping, Global Illumination (1)

Radiance. Radiance properties. Radiance properties. Computer Graphics (Fall 2008)

Texture. Texture Mapping. Texture Mapping. CS 475 / CS 675 Computer Graphics. Lecture 11 : Texture

CS 475 / CS 675 Computer Graphics. Lecture 11 : Texture

Ray Tracing: Special Topics CSCI 4239/5239 Advanced Computer Graphics Spring 2018

Computer Graphics. - Texturing - Philipp Slusallek

CS348B: Image Synthesis

02 Shading and Frames. Steve Marschner CS5625 Spring 2016

Today. Global illumination. Shading. Interactive applications. Rendering pipeline. Computergrafik. Shading Introduction Local shading models

CS 354R: Computer Game Technology

Global Illumination The Game of Light Transport. Jian Huang

CMSC427 Final Practice v2 Fall 2017

BRDF Computer Graphics (Spring 2008)

Lecture 10: Shading Languages. Kayvon Fatahalian CMU : Graphics and Imaging Architectures (Fall 2011)

Lecture 4: Reflection Models

Assignment #2. (Due date: 11/6/2012)

Evolution of Imaging Technology in Computer Graphics. Related Areas

Topic 12: Texture Mapping. Motivation Sources of texture Texture coordinates Bump mapping, mip-mapping & env mapping

CS 5625 Lec 2: Shading Models

Other Rendering Techniques CSE 872 Fall Intro You have seen Scanline converter (+z-buffer) Painter s algorithm Radiosity CSE 872 Fall

Topic 11: Texture Mapping 11/13/2017. Texture sources: Solid textures. Texture sources: Synthesized

LEVEL 1 ANIMATION ACADEMY2010

Shading. Brian Curless CSE 557 Autumn 2017

Soft shadows. Steve Marschner Cornell University CS 569 Spring 2008, 21 February

Shading / Light. Thanks to Srinivas Narasimhan, Langer-Zucker, Henrik Wann Jensen, Ravi Ramamoorthi, Hanrahan, Preetham

Shading. Brian Curless CSE 457 Spring 2017

Topic 11: Texture Mapping 10/21/2015. Photographs. Solid textures. Procedural

REYES REYES REYES. Goals of REYES. REYES Design Principles

w Foley, Section16.1 Reading

Computergrafik. Matthias Zwicker Universität Bern Herbst 2016

+ = To Do. Adding Visual Detail. Texture Mapping. Parameterization. Option: Varieties of projections. Foundations of Computer Graphics (Fall 2012)

CS130 : Computer Graphics Lecture 8: Lighting and Shading. Tamar Shinar Computer Science & Engineering UC Riverside

Texture Mapping. Reading. Implementing texture mapping. Texture mapping. Daniel Leventhal Adapted from Brian Curless CSE 457 Autumn 2011.

Anselmo Lastra, Steve Molnar, Marc Olano, Yulan Wang. Marc Olano, Yulan Wang University of North Carolina at Chapel Hill

Spring 2012 Final. CS184 - Foundations of Computer Graphics. University of California at Berkeley

Electromagnetic waves and power spectrum. Rays. Rays. CS348B Lecture 4 Pat Hanrahan, Spring 2002

Zeyang Li Carnegie Mellon University

TEXTURE MAPPING. DVA338 Computer Graphics Thomas Larsson, Afshin Ameri

Render - Cycles Render Engine - Nodes

Chapter 1 Introduction. Marc Olano

Complex Features on a Surface. CITS4241 Visualisation Lectures 22 & 23. Texture mapping techniques. Texture mapping techniques

Computer Graphics 7 - Texture mapping, bump mapping and antialiasing

Texture Mapping. Brian Curless CSE 457 Spring 2016

CS 5600 Spring

Shading. Reading. Pinhole camera. Basic 3D graphics. Brian Curless CSE 557 Fall Required: Shirley, Chapter 10

Image-Based Lighting. Inserting Synthetic Objects

Texture Mapping. Brian Curless CSE 457 Spring 2015

Computer Graphics (CS 543) Lecture 10: Normal Maps, Parametrization, Tone Mapping

CS 130 Final. Fall 2015

Image-Based Lighting

Einführung in Visual Computing

Introduction to Visualization and Computer Graphics

The 7d plenoptic function, indexing all light.

Hardware-Assisted Relief Texture Mapping

CSE 167: Lecture #7: Color and Shading. Jürgen P. Schulze, Ph.D. University of California, San Diego Fall Quarter 2011

Shadow and Environment Maps

CS 428: Fall Introduction to. Texture mapping and filtering. Andrew Nealen, Rutgers, /18/2010 1

Real-Time Rendering (Echtzeitgraphik) Dr. Michael Wimmer

CS 498 VR. Lecture 19-4/9/18. go.illinois.edu/vrlect19

rendering equation computer graphics rendering equation 2009 fabio pellacini 1

COMPUTER GRAPHICS AND INTERACTION

The Design of RenderMan

+ = To Do. Texture Mapping. Adding Visual Detail. Parameterization. Option: Varieties of projections. Computer Graphics. geometry

Advanced Maya Texturing and Lighting

Volume Illumination & Vector Field Visualisation

CS 431/636 Advanced Rendering Techniques

CSCI 4972/6963 Advanced Computer Graphics Quiz 2 Tuesday April 17, 2007 noon-1:30pm

COMP environment mapping Mar. 12, r = 2n(n v) v

History of computer graphics

CMSC427 Advanced shading getting global illumination by local methods. Credit: slides Prof. Zwicker

Local vs. Global Illumination & Radiosity

Real-Time Shadows. Last Time? Textures can Alias. Schedule. Questions? Quiz 1: Tuesday October 26 th, in class (1 week from today!

Image Based Lighting with Near Light Sources

Image Based Lighting with Near Light Sources

Transcription:

Overview Level of detail hierarchy Texture maps Procedural shading and texturing Texture synthesis and noise Hierarchy Physics Computer Graphics Geometrical optics Macro-structures Transport Micro-structures Microfacets Physical optics Kirchoff approx. Quantum optics Geometry Displacement (P) maps Bump (N) maps Texels (BRDF) Texture Page 1

Texture Maps How is texture mapped to the surface? Dimensionality: 1D, 2D, 3D Texture coordinates (s,t) Surface parameters (u,v) Direction vectors: reflection R, normal N, halfway H Projection: cylinder Developable surface: polyhedral net Reparameterize a surface: old-fashion model decal What does texture control? Surface color and opacity Illumination functions: environment maps, shadow maps Reflection functions: reflectance maps Perturb geometry: bump and displacement maps History Catmull/Williams 1974 - basic idea Blinn and Newell 1976 - basic idea, reflection maps Blinn 1978 - bump mapping Williams 1978, Reeves et al. 1987 - shadow maps Smith 1980, Heckbert 1983 - texture mapped polygons Williams 1983 - mipmaps Miller and Hoffman 1984 - illumination and reflectance Perlin 1985, Peachey 1985 - solid textures Greene 1986 - environment maps/world projections Akeley 1993 - Reality Engine Page 2

Tom Porter s Bowling Pin RenderMan Companion, Pls. 12 & 13 Direction Maps Many ways to map directions to images... Methods: Gazing Ball (N) Create by photographing a reflective sphere Fisheye Lens Standard camera lens Cubical Environment Map (R) Create with a rendering program, photography... Lattitude-Longitude (Map Projections) Create by painting Issues: Non-linear mapping - expensive, curved lines Area distortion - spatially varying resolution Convert between maps using image warp Page 3

Cubical Environment Map Note: Easy to produce with rendering system Possible to produce from photographs Uniform resolution Simple texture coordinates calculation Gazing Ball Note: Photograph of reflective ball Reflection indexed by normal Maps entire field of view to circle Resolution function of orientation; maximum head-on Alternatives: Fish eye, map projections Page 4

Reflectance Maps Integrate over a hemisphere: BRDF * L Very low resolution often sufficient: At NYIT 49x49 Reflectance Maps Reflectance map For a given viewing direction For each normal direction For each incoming direction (hemispherical integral) Evaluate reflection equation Reflection functions Diffuse: Irradiance map Glossy: Radiance map Anisotropic: for each tangent direction Mirror: Reflection map related to environment map Illumination functions Environment maps Procedural light sources Page 5

Quake Light Maps * Lower resolution Illumination Maps * = reflectance irradiance radiosity Page 6

Shadow Maps May incorporate shadow maps into lighting calculations Correct Shadow Maps Step 1: Create z-buffer of scene as seen from light source Step 2. Render scene as seen from the eye For each light Transform point into light coordinates return (zl < zbuffer[xl][yl] )? 1 : 0 Page 7

Displacement/Bump Mapping Offset surface position Displacement P (u, v) = P(u,v) + h(u, v)n( u,v) Perturb normal P(u, v) N(u,v) = u P(u,v) v From Blinn 1976 Shading and Texturing Language Flexibility Create procedural texture models Modulate multiple parameters Control over mapping Texture access float/color texture( image, s, t,...) point bump( heights, N, Ps, Pt, s, t,...) float/color environment( cubefaces, D,...) float shadow( depths, P,...) Page 8

Abstract Shading Model Volume Atmosphere Light Source Camera Surface Reflection Volume Texture Displacement Volume Deformation Light Surface Camera Light Shader State L N light bulb( float intensity = 1; color filament = TUNGSTEN ) { illuminate( P ) Cl = intensity * filament / (L.L); } Pu P,(u,v),.. Pv Page 9

Barzel s UberLight.sl Inconsistent Shadows Projected Shadow Matte Projected Texture Example of a complex shader UberLight( ) { Clip to near/far planes Clip to shape boundary foreach superelliptical blocker atten *= foreach cookie texture atten *= foreach slide texture color *= foreach noise texture atten, color *= foreach shadow map atten, color *= Calculate intensity fall-off Calculate beam distribution } Surface Shader N L surface diffuse() { color Ci = 0; illuminance( P, N, Pi/2 ) Ci += Cs * Cl * N.L; } I Pu P,u,v,.. Pv Page 10

RenderMan Surface Shader surface corrode(float Ks=0.4, Ka=0.1, rough=0.25) { float i, freq=1, turb=0; // compute fractal texture for( i=0; i<6; i++ ) { turb += 1/freq*noise(freq*P); freq *= 2; } // perturb surface P -= turb * normalize(n); N = faceforward(normalize(calculatenormal(p))); } // compute reflection and final color Ci = Cs*(Ka*ambient()+Ks*specular(N,I,rough)); Perlin s Noise Function 1. Generate a table of random numbers 2. Hash a 3D lattice into a table entry 3. Use random values as the gradient 4. Perform cubic interpolation Page 11

Turbulence fbm // compute fractal texture for( i=0; i<6; i++ ) { turb += 1/freq*noise(freq*P); freq *= 2; } + + + + + = Images from http://freespace.virgin.net/hugo.elias/models/m_perlin.htm Examples Wood and Stone RenderMan Companion Marble Ken Perlin Page 12

Examples (continued) Cloud David Ebert Page 13