Difference between revisions of "Texture atlas"

From polycount
Jump to: navigation, search
(Packing Tools)
(Tutorials: Tiling within subUV or pseudo-volume textures)
 
(8 intermediate revisions by 2 users not shown)
Line 5: Line 5:
 
Each of the textures can be [[Tiling|tiled]] with themselves, just like a regular tiling texture.  
 
Each of the textures can be [[Tiling|tiled]] with themselves, just like a regular tiling texture.  
  
The textures can either be cropped out of the atlas by adding more edges to the model and splicing up the [[Texture Coordinates|texture coordinates]] (at the expense of increasing the [[Polygon_Count#Triangle_Count_vs._Vertex_Count|vertex count]]), or the textures can be cropped out using a [[Shaders|shader]] (at the expense of increasing the shader instructions).
+
The textures can either be cropped out of the atlas by adding more edges to the model and cutting up the [[Texture Coordinates|texture coordinates]] (at the expense of increasing the [[Polygon_Count#Triangle_Count_vs._Vertex_Count|vertex count]]), or the textures can be arranged as [http://udn.epicgames.com/Three/TerrainAdvancedTextures.html#Texture%20Packing:%20Implementing%20large%20texture%20tile%20sets sub-tiles] and cropped out using a [[Shaders|shader]] (at the expense of increasing the shader instructions).
  
 
__TOC__
 
__TOC__
Line 18: Line 18:
 
|}
 
|}
  
== Tutorials ==
+
=== Tutorials ==
 +
* 2016-10-07 [https://shaderbits.com/blog/tiling-within-subuv-or-volume-textures Tiling within subUV or pseudo-volume textures] - by [https://shaderbits.com/ Ryan Brucks]
 +
* 2015-06-26 [https://forum.allegorithmic.com/index.php?topic=5840.0 Substance Designer: Creating a texture atlas] - by [https://www.artstation.com/wesmcdermott Wes McDermott]
 
* 2013-04-08 [http://oliverm-h.blogspot.com/2013/04/how-to-create-ue3udk-texture-atlases.html How to create UE3/UDK Texture Atlases (tileable)] - by [http://oliverm-h.blogspot.com/ 'mAlkAv!An'], using a custom HLSL node to apply separate UVs for texturing vs. mipmapping.
 
* 2013-04-08 [http://oliverm-h.blogspot.com/2013/04/how-to-create-ue3udk-texture-atlases.html How to create UE3/UDK Texture Atlases (tileable)] - by [http://oliverm-h.blogspot.com/ 'mAlkAv!An'], using a custom HLSL node to apply separate UVs for texturing vs. mipmapping.
 
* 2013-04-02 [http://udn.epicgames.com/Three/TerrainAdvancedTextures.html#Texture%20Packing:%20Implementing%20large%20texture%20tile%20sets UDN - Three - TerrainAdvancedTextures - Texture Packing: Implementing large texture tile sets]
 
* 2013-04-02 [http://udn.epicgames.com/Three/TerrainAdvancedTextures.html#Texture%20Packing:%20Implementing%20large%20texture%20tile%20sets UDN - Three - TerrainAdvancedTextures - Texture Packing: Implementing large texture tile sets]
Line 33: Line 35:
 
* 2010-11-08 [http://www.polycount.com/forum/showthread.php?t=78192 Work-flow for large texture atlases] from the Polycount forum
 
* 2010-11-08 [http://www.polycount.com/forum/showthread.php?t=78192 Work-flow for large texture atlases] from the Polycount forum
 
* 2010-06-27 [http://www.philipk.net/tutorials/modular_sets/modular_sets.html  Working with Modular Sets] - by [http://www.philipk.net Philip 'PhilipK' Klevestav], how to design and texture modular sci-fi wall panels.
 
* 2010-06-27 [http://www.philipk.net/tutorials/modular_sets/modular_sets.html  Working with Modular Sets] - by [http://www.philipk.net Philip 'PhilipK' Klevestav], how to design and texture modular sci-fi wall panels.
* 2010-03-25 [http://www.chrisalbeluhn.com/Building_Layout_Guideline_Tutorial.html Visually Appealing Building Guide] - by [http://www.chrisalbeluhn.com Christopher Albeluhn], an excellent breakdown of how to create visual interest with game buildings. [http://www.chrisalbeluhn.com/3D_Tutorials.html Additional tutorials here].
+
* 2010-03-25 [https://www.chrisalbeluhn.com/visually-appealing-building-guide Visually Appealing Building Guide] - by [http://www.chrisalbeluhn.com Christopher Albeluhn], an excellent breakdown of how to create visual interest with game buildings. [https://www.chrisalbeluhn.com/tutorials/ Additional tutorials here].
* 2008-06-26 [http://boards.polycount.net/showthread.php?t=54178 Mod Facade Challenge] - by [http://www.linkedin.com/in/earthquake Joe 'EarthQuake' Wilson], breaking up a building into modular pieces and designing the texture sheet.
+
* 2008-06-26 [http://polycount.com/discussion/54178 Mod Facade Challenge] - by [http://www.linkedin.com/in/earthquake Joe 'EarthQuake' Wilson], breaking up a building into modular pieces and designing the texture sheet.
 
* 2006-11-08 [http://www.game-artist.net/forums/tutorials/182-step-step-techniques-tiling-textures-3ds-max.html Creating tiling textures in 3dsmax] - by [http://chrisholden.net/ Chris 'cholden' Holden]
 
* 2006-11-08 [http://www.game-artist.net/forums/tutorials/182-step-step-techniques-tiling-textures-3ds-max.html Creating tiling textures in 3dsmax] - by [http://chrisholden.net/ Chris 'cholden' Holden]
 
* 2006-01-26 [http://www.gamasutra.com/view/feature/2530/practical_texture_atlases.php Practical Texture Atlases] on Gamasutra by [http://www.haemimontgames.com/company/keypeople.html Ivan-Assen Ivanov]
 
* 2006-01-26 [http://www.gamasutra.com/view/feature/2530/practical_texture_atlases.php Practical Texture Atlases] on Gamasutra by [http://www.haemimontgames.com/company/keypeople.html Ivan-Assen Ivanov]
* 2005-12-20 [http://poopinmymouth.com/process/tips/thirding.jpg Thirding - Utilizing your texture space for environment work] - by [http://poopinmymouth.com/ Ben 'poopinmymouth' Mathis]
+
* 2005-12-20 [http://poopinmymouth.com/tutorials/thirding-textures-tip.html Thirding - Utilizing your texture space for environment work] - by [http://poopinmymouth.com/ Ben 'poopinmymouth' Mathis]
 
+
== More Info ==
+
* [[MultiTexture]]
+
* [[:Category:EnvironmentModularity]] has info about designing modular textures and assets.
+
* [[TextureCoordinates]] talks about planning your UV layout.
+
* [[Light map]] has information about packing UVs.
+
  
 
== Gutters ==
 
== Gutters ==
Line 61: Line 57:
 
* [http://boards.polycount.net/showthread.php?t=52415 Normalize UVs Maxscript] for 3ds Max
 
* [http://boards.polycount.net/showthread.php?t=52415 Normalize UVs Maxscript] for 3ds Max
 
* [http://developer.nvidia.com/object/texture_atlas_tools.html Texture Atlas Tools] by Nvidia
 
* [http://developer.nvidia.com/object/texture_atlas_tools.html Texture Atlas Tools] by Nvidia
 +
 +
== More Info ==
 +
* [[ChannelPacking]]
 +
* [[Modular_environments]]
 +
* [[MultiTexture]]
 +
* [[TextureCoordinates]]
  
 
----
 
----
 
[[Category:Texturing]] [[Category:TextureTechnique]] [[Category:Glossary]]
 
[[Category:Texturing]] [[Category:TextureTechnique]] [[Category:Glossary]]

Latest revision as of 13:51, 21 June 2020

A Texture Atlas describes the method of packing many separate textures together into a single texture. Other common names for this are "decal sheet", "packed texture".

Atlases save texture fetches, which can help improve the frame rate.

Each of the textures can be tiled with themselves, just like a regular tiling texture.

The textures can either be cropped out of the atlas by adding more edges to the model and cutting up the texture coordinates (at the expense of increasing the vertex count), or the textures can be arranged as sub-tiles and cropped out using a shader (at the expense of increasing the shader instructions).

Atlas Methods

There are two common atlas methods: one divides a single bitmap into multiple sub-maps (this is usually what artists mean when they say "atlas"), the other method packs different grayscale maps into each color channel (this can be called a multimap or channel packing). The two methods are not exclusive, they can also be used together in the same bitmap.

An atlas of sub-maps.
Image by Stefan Morrell.
Channel packing and sub-maps, in the same texture layout.
Image by Tor "Snefer" Frick.

= Tutorials

Gutters

When a game model is textured using a single texture sheet, the texture will have typically have UV'd areas (UV shells) and blank areas between them (gutters).

The width of the gutter needs to be wide enough to accommodate how much EdgePadding you need. This varies depending on how large the texture is and the texture filtering type used by the game renderer.

Packing Tools

More Info


Personal tools
Namespaces

Variants
Actions
Navigation
Tools