Difference between revisions of "Texture atlas"

From polycount
Jump to: navigation, search
(How to create UE3/UDK Texture Atlases (tileable))
(Tutorials: Tiling within subUV or pseudo-volume textures)
 
(36 intermediate revisions by 4 users not shown)
Line 1: Line 1:
__NOTOC__
+
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".
= Texture Atlas =
+
When many separate textures are packed together into a single texture, this is called a ''texture atlas''. Other common names for this are decal sheet, packed texture.
+
  
 +
Atlases save texture fetches, which can help improve the [[FPS|frame rate]].
 +
 +
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 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__
 +
 +
== 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 [[ChannelPacking|channel packing]]). The two methods are not exclusive, they can also be used together in the same bitmap.
 +
 +
{| cellpadding="2" cellspacing="0"
 +
| [[Image:Stefan-Morrell_modular-texture.jpg|thumb|300px|An atlas of sub-maps.<br/>Image by [http://stefan-morrell.cgsociety.org/gallery/ Stefan Morrell].]]
 +
| [[Image:SneferTileExplain.jpg|thumb|200px|Channel packing and sub-maps, in the same texture layout.<br/>Image by [http://www.torfrick.com/ Tor "Snefer" Frick].]]
 +
|-
 +
|}
 +
 +
=== 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.
* 2011-10-09 [http://www.polycount.com/forum/showthread.php?t=89682 An exercise in modular textures - Scifi lab UDK] - by [http://www.torfrick.com/ Tor 'Snefer' Frick], an exercise in extreme texture atlasing, packing multiple maps into the four channels of a texture file.
+
* 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://forums.epicgames.com/threads/710560-The-WIP-Thread?p=31189949&viewfull=1#post31189949 UDK - how to solve 'frac' artifacts and mipmapping seams] - how to implement sub-tiles in UDK, and solve seams.
 +
* 2013-03-13 [http://www.georgesokol.blogspot.com/2013/03/pro-tip-easy-way-to-work-with-seperate.html An easy way to work with separate channels in a "combined texture"] - by [http://www.georgesokol.blogspot.com George "gsokol" Sokol], using Photoshop's Layer Style to improve the texture editing process for [[ChannelPacking|channel packing]].
 +
* 2012-06-07 [http://www.polycount.com/forum/showthread.php?t=100388 The Desert(What can you do with no diffuse maps?)] Polycount forum thread. Vertex blending using multiple [[ChannelPacking|channel packed]] modulation textures, in UDK. See also [http://artisaverb.info/DitchingDiffuse.html Ditching Diffuse Maps: A foray into artistic reasoning and technical details behind "procedural" texturing, with practical examples on today's tech] by [http://artisaverb.info/ Andrew 'd1ver' Maximov].
 +
* 2012-05-28 [http://www.polycount.com/forum/showthread.php?p=1595258#post1595258 UDK The Dunes] Polycount Forum thread. Using two 256x256 textures to texture an entire scene, one as a normal map and the other [[ChannelPacking|channel packed]] to store four textures.
 +
* 2012-05-01 [http://www.digitaltutors.com/tutorial/688-Multi-Tile-Texture-Workflows Digital-Tutors: Multi-Tile Texture Workflows Tutorial] ($) - by Justin Marshall / Digital Tutors, using UV organization to assign multiple textures to a single character, and how it works in various 3D apps.
 +
* 2011-10-19 [http://www.polycount.com/forum/showthread.php?t=90092 UDK - Material - Multi-UV Changes] - more UDK techniques for sub-tiles.
 +
* 2011-10-09 [http://www.polycount.com/forum/showthread.php?t=89682 An exercise in modular textures - Scifi lab UDK] - by [http://www.torfrick.com/ Tor 'Snefer' Frick], an exercise in extreme texture [[ChannelPacking|channel packing]], packing multiple maps into the four channels of a texture file.
 +
* 2011-09-26 [http://mtnphil.wordpress.com/2011/09/26/terrain-texture-atlas-construction/ Terrain texture atlas construction] - how to properly compile sub-tiles into a large texture sheet.
 
* 2010-12-20 [http://www.polycount.com/forum/showthread.php?t=79374 UV tiling tricks within 0 to 1 space] from the Polycount forum
 
* 2010-12-20 [http://www.polycount.com/forum/showthread.php?t=79374 UV tiling tricks within 0 to 1 space] from the Polycount forum
* 2010-12-17 [http://www.3dmotive.com/product-modular-building-udk Modular Building Workflow] - ($) a 3dmotive tutorial by [http://www.tylerwanlass.com/ Tyler Wanlass], covers planning and workflow for modular buildings using Photoshop, 3ds Max, and UDK.
+
* 2010-12-17 [https://www.3dmotive.com/f101001 Modular Building Workflow] - ($) a 3dmotive tutorial by [http://www.tylerwanlass.com/ Tyler Wanlass], covers planning and workflow for modular buildings using Photoshop, 3ds Max, and UDK.
 
* 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]
* [[Category:EnvironmentModularity]] has info about designing modular textures and assets.
+
* [[TextureCoordinates]] talks about planning your UV layout.
+
* [[LightMap]] has information about packing UVs.
+
  
 
== Gutters ==
 
== Gutters ==
When a game model is textured using a single texture sheet, the texture will have typically have UV'd areas ([[UVShell|UV shells]]) and blank areas between them (gutters).  
+
When a game model is textured using a single texture sheet, the texture will have typically have UV'd areas ([[Texture Coordinates|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 [[TextureFiltering|texture filtering]] type used by the game renderer.
+
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|texture filtering]] type used by the game renderer.
  
 
== Packing Tools ==
 
== Packing Tools ==
* [http://www.polycount.com/forum/showthread.php?t=80723 Decent UV Packing Script/Tool?] thread on the Polycount forum.
+
*2015-05-17 [https://vimeo.com/126382588 Easy Atlas] uses Photoshop and Maya.
 +
*2014-09-25 [http://www.polycount.com/forum/showthread.php?p=2143621#post2143621 MapToAtlas] 3ds Max script by [http://www.juantwo.com/ Juan "monster" Martinez]
 +
* [http://www.polycount.com/forum/showthread.php?t=80723 Decent UV Packing Script/Tool?] thread on the Polycount forum
 
* [http://www.uvlayout.com/index.php?option=com_wrapper&Itemid=98 Headus UVLayout] ($)  
 
* [http://www.uvlayout.com/index.php?option=com_wrapper&Itemid=98 Headus UVLayout] ($)  
 
* [http://www.pixologic.com/zbrush/features/UV-Master/ UV Master] script for ZBrush
 
* [http://www.pixologic.com/zbrush/features/UV-Master/ UV Master] script for ZBrush
Line 32: 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:TextureTechnique]] [[Category:Glossary]]
+
[[Category:Texturing]] [[Category:TextureTechnique]] [[Category:Glossary]]

Latest revision as of 14: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