UW EXTENSION CERTIFICATE PROGRAM IN GAME DEVELOPMENT 2 ND QUARTER: ADVANCED GRAPHICS Textures.

Slides:



Advertisements
Similar presentations
Normal Map Compression with ATI 3Dc™ Jonathan Zarge ATI Research Inc.
Advertisements

Graphics Pipeline.
RealityEngine Graphics Kurt Akeley Silicon Graphics Computer Systems.
03/16/2009Dinesh Manocha, COMP770 Texturing Surface’s texture: its look & feel Graphics: a process that takes a surface and modifies its appearance using.
Texture Mapping. Texturing  process that modifies the appearance of each point on a surface using an image or function  any aspect of appearance can.
Week 7 - Monday.  What did we talk about last time?  Specular shading  Aliasing and antialiasing.
Real-Time Rendering TEXTURING Lecture 02 Marina Gavrilova.
ATEC Procedural Animation Introduction to Procedural Methods in 3D Computer Animation Dr. Midori Kitagawa.
Week 7 - Wednesday.  What did we talk about last time?  Transparency  Gamma correction  Started texturing.
Week 9 - Wednesday.  What did we talk about last time?  Fresnel reflection  Snell's Law  Microgeometry effects  Implementing BRDFs  Image based.
3D Graphics for Game Programming (J. Han) Chapter VIII Image Texturing.
Texture Mapping CPSC /24/03 Abhijeet Ghosh.
X86 and 3D graphics. Quick Intro to 3D Graphics Glossary: –Vertex – point in 3D space –Triangle – 3 connected vertices –Object – list of triangles that.
OpenGL Texture Mapping
OpenGL Texture Mapping April 16, Angel: Interactive Computer Graphics 3E © Addison-Wesley 2002 Basic Stragegy Three steps to applying a texture.
CS 4731: Computer Graphics Lecture 17: Texturing Emmanuel Agu.
Computer Graphics Inf4/MSc Computer Graphics Lecture 11 Texture Mapping.
1 Computer Graphics Week13 –Shading Models. Shading Models Flat Shading Model: In this technique, each surface is assumed to have one normal vector (usually.
Computer Graphics Inf4/MSc Computer Graphics Lecture 9 Antialiasing, Texture Mapping.
Week 8 - Monday.  What did we talk about last time?  Workday  Before that:  Image texturing ▪ Magnification ▪ Minification  Mipmapping  Summed area.
Technology and Historical Overview. Introduction to 3d Computer Graphics  3D computer graphics is the science, study, and method of projecting a mathematical.
Computer Graphics Texture Mapping Eriq Muhammad Adams
UW EXTENSION CERTIFICATE PROGRAM IN GAME DEVELOPMENT 2 ND QUARTER: ADVANCED GRAPHICS Visual quality techniques.
Computer Graphics Texture Mapping
Fundamentals of Computer Graphics Part 9 Discrete Techniques prof.ing.Václav Skala, CSc. University of West Bohemia Plzeň, Czech Republic ©2002 Prepared.
1 SIC / CoC / Georgia Tech MAGIC Lab Rossignac Textures and shadows  Generation  Mipmap  Texture coordinates,
Texture Mapping. Scope Buffers Buffers Various of graphics image Various of graphics image Texture mapping Texture mapping.
Texture Mapping Course: Computer Graphics Presented by Fan Chen
Mapping method Texture Mapping Environmental mapping (sphere mapping) (cube mapping)
09/09/03CS679 - Fall Copyright Univ. of Wisconsin Last Time Event management Lag Group assignment has happened, like it or not.
TERRAIN SET09115 Intro to Graphics Programming. Breakdown  Basics  What do we mean by terrain?  How terrain rendering works  Generating terrain 
CS 4363/6353 TEXTURE MAPPING PART II. WHAT WE KNOW We can open image files for reading We can load them into texture buffers We can link that texture.
09/11/03CS679 - Fall Copyright Univ. of Wisconsin Last Time Graphics Pipeline Texturing Overview Cubic Environment Mapping.
Game Programming (Mapping) Spring.
UW EXTENSION CERTIFICATE PROGRAM IN GAME DEVELOPMENT 2 ND QUARTER: ADVANCED GRAPHICS The Geometry Pipeline.
Texture Mapping Fall, Textures Describe color variation in interior of 3D polygon  When scan converting a polygon, vary pixel colors according.
Texture Mapping. 2 Motivation A typical modern graphics card can handle 10s of millions of polygons a second. How many individual blades of grass are.
CS-378: Game Technology Lecture #4: Texture and Other Maps Prof. Okan Arikan University of Texas, Austin V Lecture #4: Texture and Other Maps.
CS 480/680 Computer Graphics OpenGL Texture Mapping Dr. Frederick C Harris, Jr. Fall 2011.
Advanced Computer Graphics Advanced Shaders CO2409 Computer Graphics Week 16.
Game Programming 06 The Rendering Engine
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.
Advanced Computer Graphics Shadow Techniques CO2409 Computer Graphics Week 20.
09/16/03CS679 - Fall Copyright Univ. of Wisconsin Last Time Environment mapping Light mapping Project Goals for Stage 1.
Lecture 6 Rasterisation, Antialiasing, Texture Mapping,
Computing & Information Sciences Kansas State University Lecture 12 of 42CIS 636/736: (Introduction to) Computer Graphics CIS 636/736 Computer Graphics.
Graphics Graphics Korea University 1 Jang Sumi Texture Mapping Environment Mapping Stencil Buffer.
CSCI 440.  So far we have learned how to  build shapes  create movement  change views  add simple lights  But, our objects still look very cartoonish.
Shadows David Luebke University of Virginia. Shadows An important visual cue, traditionally hard to do in real-time rendering Outline: –Notation –Planar.
CSc4820/6820 Computer Graphics Algorithms Ying Zhu Georgia State University Texture Mapping.
Texturing Tomas Akenine-Möller Department of Computer Engineering Chalmers University of Technology.
Ying Zhu Georgia State University
Week 7 - Wednesday CS361.
Texture Mapping Fall, 2016.
Week 7 - Monday CS361.
The Graphic PipeLine
ATEC Procedural Animation
ATCM 3310 Procedural Animation
Normal Map Compression with ATI 3Dc™
Chapters VIII Image Texturing
Interactive Graphics Algorithms Ying Zhu Georgia State University
UMBC Graphics for Games
3D Game Programming Texture Mapping
Procedural Animation Lecture 6: Mapping
ATCM 6317 Procedural Animation
CS-378: Game Technology Lecture #4: Texture and Other Maps
Adding Surface Detail 고려대학교 컴퓨터 그래픽스 연구실.
3D Game Programming Texture Mapping
Adding Surface Detail 고려대학교 컴퓨터 그래픽스 연구실.
Presentation transcript:

UW EXTENSION CERTIFICATE PROGRAM IN GAME DEVELOPMENT 2 ND QUARTER: ADVANCED GRAPHICS Textures

Goals 1. Understand how textures are laid out and used 2. See the finer points of texturing

Lookup tables  That’s what textures are, pure and simple  They are used to add fine detail to what we render  Many purposes, including:  Albedo maps – diffuse light coefficients  Gloss maps – specular light coefficients  Normal maps – normal vectors used for lighting  Transparency maps – alpha values for transparency  Height maps – detailed surface geometry (engravings)  Emissive maps – colors added after lighting  Lightmaps – precomputed light values  Normalization cubemaps – to avoid the math

Texture addressing modes [D3DTEXTUREADDRESS]  Coordinates in a texture go from (0,0) to (1,1)  What happens with coordinates out of range?  Depends on the addressing mode  Addressing modes (0 <= X < 1)  (Y is calculated similarly)  Clamp: X’ = max(0, min(1, X))  Wrap: X’ = frac(X)  Mirror: X’ = 1 – 2*abs(frac(X/2) – 0.5)  Border: if X is outside [0,1] then color = border

Texture filtering modes [D3DTEXTUREFILTERTYPE]  A texture is composed of discrete pixels  Representing samples within the image  What if coordinates not precisely on the samples?  Depends on the filtering mode  Filtering modes (0 <= X < width)  Point: Fetch(round(X))  Linear: lerp(Fetch(floor(X)), Fetch(floor(X)+1), frac(X))  Anisotropic: Complex filter (slower but higher quality) 012X floor(X)floor(X)+1 round(X)

Texture mipmapping  Large textures, when smaller on screen, look bad  Features appear and disappear as the image moves  This effect is called aliasing  It’s caused by interference of two samples Texture pixels (texels) and screen pixels  Must filter the texture  Using mipmaps: smaller versions of the texture  Mipmap selection is like a third texture coordinate  Addressing mode is always clamp  Filtering mode can be point or linear

Texture type  Regular 2D textures  2D array of colors, use two coordinates normally  Volume textures  3D array of colors, use three coordinates normally  Arranged in memory as an array of images (slices)  Cube textures  6 textures arranged as the faces of a cube  Three coordinates, vector from center of cube to texel  Other types  1D, arrays of textures

Texture format [D3DFORMAT]  Integer vs. floating-point values  Signed vs. unsigned values  Bits per component (4, 8, 16 and other sizes too)  Alpha vs. no-alpha (defaults to 1)  Compression (like normals and lossy codecs)  Palettes (extra lookup indirection)  UYVY (2 components at lower resolution)  Gamma (D3DSAMP_SRGBTEXTURE)

Texture coordinates  Either in the vertices or auto-generated  Sometimes, in the vertices are also generated  For instance, for unique mappings  Coordinate wrapping  Mapping a texture around the model  Coordinates from 0 to 1: what to do when they meet?  Coordinate transformations  Same as world positions Matrix applied Projection (division by W), too, is useful for shadow buffers