Download presentation
Presentation is loading. Please wait.
Published byBritney Chapman Modified over 9 years ago
1
Pattern Based Procedural Textures Sylvain Lefebvre Fabrice Neyret iMAGIS - GRAVIR / IMAG - INRIA http://www-imagis.imag.fr/Membres/Sylvain.Lefebvre/pattern
2
Overview Motivations Previous Work Contributions Our Framework –Case study –Results Conclusion
3
Motivations Texturing large areas –Landscapes in simulators –Video games Requirements High resolution and low memory cost Avoiding periodicity User control
4
Previous work Large explicit texture Extensions –Clipmaps [Tanner et al. 98] –Texture Compression –Empty space compression [Kraus Ertl 02] Drawbacks –Memory cost –Lossy Compression
5
Previous work Procedural textures –[Perlin 85] [Worley 96] [Ebert 94] Drawbacks –Calculation cost –Control by the artist uneasy –Not all materials
6
Previous work Pattern based texturing –Aperiodic tiling [Stam 97] –Triangular patterns [Neyret Cani 99] –Virtual atlases [Soler 02] –Sparse convolutions [Lewis 89, Erbert 94] Drawbacks –Mesh dependency –Local variations uneasy
7
Previous work Pattern based texturing –Aperiodic tiling [Stam 97] –Triangular patterns [Neyret Cani 99] –Virtual atlases [Soler 02] –Sparse convolutions [Lewis 89, Erbert 94] Drawbacks –Mesh dependency –Local variations uneasy
8
Previous work Pattern based texturing –Aperiodic tiling [Stam 97] –Triangular patterns [Neyret Cani 99] –Virtual atlases [Soler 02] –Sparse convolutions [Lewis 89, Erbert 94] Drawbacks –Mesh dependency –Local variations uneasy
9
Contributions Framework for creating very large virtual textures by combining patterns –No constraint on mesh (texture space) –Low memory cost Runs on today graphics hardware As generic as possible
10
Method overview Texture coordinates pattern Texture space (u,v)
11
Method overview Texture coordinates pattern color Texture space (u,v) color
12
Method overview Texture coordinates pattern color Texture space (u,v) color
13
Method overview Texture coordinates color Corresponds to hardware fragment program CPU Software Vertex Program Rasterisation Interpolation Fragment Program Tests & Blending Matrices, lights, … Textures Frame Buffer Programmable Graphics Hardware
14
Our Framework Set of basic blocks 1 block = 1 functionality Textures by combining blocks
15
Overview Motivations Previous Work Contributions Our Framework –Case study –Results Conclusion
16
Case study Aperiodic tiling –N x N virtual cells –T x T patterns –3 blocks Virtual Tile Map Virtual Indirection Map Reference Texture u glob color u tile gp T N NT
17
Aperiodic tiling Virtual Tile Map –cell index g –relative coordinates u tile Virtual Tile Map Virtual Indirection Map Reference Texture u glob color u tile gp T N NT u glob u tile gg+1 g-1
18
Aperiodic tiling Virtual Indirection Map –random index p from g (aperiodic) –uses permutation table Virtual Tile Map Virtual Indirection Map Reference Texture u glob color u tile gp T N NT
19
Aperiodic tiling Reference Texture Virtual Tile Map Virtual Indirection Map Reference Texture u glob color u tile gp T N NT p color
20
Aperiodic tiling Virtual Tile Map Virtual Indirection Map Reference Texture u glob color u tile gp T N NT
21
Blocks –Pattern choice and positioning –Transitions between neighboring patterns –Animation
22
Blocks –Pattern choice and positioning –Transitions between neighboring patterns –Animation
23
Blocks –Pattern choice and positioning –Transitions between neighboring patterns –Animation
24
Overview Motivations Previous Work Contributions Our Framework –Case study –Results Conclusion
25
Probability distribution control Areas map Interpolation of probabilities
26
Probability distribution control Areas map Interpolation of probabilities Virtual resolution = 4096 ²
27
Transitions Textures from Warcraft ® III: Reign of Chaos™ © Blizzard Entertainment ®. All rights reserved. only one quad
28
Transitions only one quad Textures from Warcraft ® III: Reign of Chaos™ © Blizzard Entertainment ®. All rights reserved.
29
Random positioning
30
Animations
31
Using explicit positonning Memory cost = pattern + 16x16 positionning map
32
Performances 1.1 fps8.5 fps15.5 fps24.5 fps640x480 5 fps36 fps73 fps113 fps320x200 391075Tex. lookups 512 instr.117 instr.65 instr.56 instr.Code length Dithered Areas Map & transitions Dithered Areas Map Areas mapAperiodic tiling Measures on GeForce FX prototype (half speed) 32 bits precision texture covers full screen
33
Filtering MIP – mapping Close view point –Linear interpolation Far view point –Indirection average color Issue in general with indirections
34
Conclusion Framework Runs on hardware Allows very large aperiodic textures Low memory cost Filtering issue Exploiting the framework Tiling with edge constraints
35
Acknoledgements NVidia for the GeForce FX prototype Blizzard Entertainment for texture data
36
Thank you ! Questions ? http://www-imagis.imag.fr/Membres/Sylvain.Lefebvre/pattern
37
Pattern Based Procedural Textures Sylvain Lefebvre Fabrice Neyret iMAGIS - GRAVIR / IMAG - INRIA http://www-imagis.imag.fr/Membres/Sylvain.Lefebvre/pattern
Similar presentations
© 2024 SlidePlayer.com. Inc.
All rights reserved.