Difference between revisions of "Texturing"

From polycount
Jump to: navigation, search
(more rewrite)
(cleanup)
Line 1: Line 1:
= Texturing =
 
Texturing refers to the act of producing 2d images for use with 3d models. Commonly referred to as maps or sometimes as "skins" work in conjunction with [[Material|materials]] and [[Shaders]] to produce the final rendering inside a game engine on a game model that has a [[UV map|UV Layout]]. Multiple [[Texture Types|texture types]] are often used to control different parameters or channels of the shader, such as [[Normal map]]s or [[Specular map]]s. A variety of techniques and [[Tools]] are used to make textures: painted by hand in a traditional 2d package, painted in 3d directly on models, created parametrically, or [[Baking]] image data from one model to another.
 
  
(a couple of 2d/newbie-friendly tutorial links should go here)
+
Texturing refers to the act of producing 2d images for use with 3d models. Commonly referred to as "maps" or "skins".  
See the [[TexturingTutorials|texturing tutorial]] for more links.
+
  
== Texture Types ==
+
 
Depending on the engine and visual style, different types of maps are used for different effects. [[Vertex color]]s are optionally used to control additional effects, such as blending between two images in the same model. Images are made up of [[Pixel]]s and are split up into Red, Green and Blue components, also known as channels, and may additionally have an Alpha channel which can be used to store [[Opacity map|opacity]] or another type of map or mask. Masks are images or layers used to control "How much of What", such as [[Specular  map]]s or [[Gloss map]]s, and are typically (but not always) greyscale (pixels only utilizing one channel).
+
== Texture Techniques ==
 +
Textures work in conjunction with [[Material|Materials]] and [[Shaders]] to produce the final rendering. The game model needs [[Texture_Coordinates]] to wrap the texture onto the model. Multiple [[Texture Types]] are often used to control different parameters or channels of the shader, such as [[Normal map]] or [[Specular_color_map]]. A variety of techniques and [[Tools]] are used to make textures: painted by hand in a traditional 2d package, painted in 3d directly on models, created parametrically, or [[Normal_map#Baking|baking]] image data from one model to another.
 +
 
 +
Artists need to make choices about the formatting of their textures, usually during the planning stage before creating the model/texture. Here is some technical information on 2d images.
 +
 
 +
=== Texture Types ===
 +
Depending on the engine and visual style, different types of maps are used for different effects. [[Vertex color]] is optionally used to control additional effects, such as blending between two images in the same model. Images are made up of [[Pixel]]s and are split up into Red, Green and Blue components, also known as channels, and may additionally have an Alpha channel which can be used to store [[Transparency_map|opacity]] or another type of map or mask. Masks are images or layers used to control "How much of What", such as [[Specular_color_map]]s or [[Specular_gloss_map]]s, and are typically (but not always) greyscale (pixels only utilizing one channel).
  
 
For the average prop, arrangements of map types might use Diffuse/Specular/Normal for a current-gen game. [[PBR|Physical Based Rendering]] setup might be Albedo/Microsurface/Reflectivity/Normal for a next-gen shader.
 
For the average prop, arrangements of map types might use Diffuse/Specular/Normal for a current-gen game. [[PBR|Physical Based Rendering]] setup might be Albedo/Microsurface/Reflectivity/Normal for a next-gen shader.
Line 14: Line 17:
 
For an expanded list, see [[Texture types]].
 
For an expanded list, see [[Texture types]].
  
== Tutorials ==
+
=== Texture Size ===
There are many ways to create textures for 3d models using the various [[Tools|tools]] available to us.
+
The dimensions of the image, how the model is [[Texture Coordinates|unwrapped]], the scale of the model and scene scale all equate to the resolution of the textured model when seen in-game. It is important that all objects in the scene have similar texture scaling to keep the overall look consistent; a low-resolution image looks jarring when placed next to a high-resolution one. Texture size is the first place to start for this decision, determining [[Texel|texel]], the ratio between UV space/Texture resolution/Scene and object scale when uv unwrapping the model is the second.
 
+
 
+
 
+
== Technical ==
+
todo: technical info: dimensions, bit depth, channels, pixel/texel, format(and page for format types).
+
 
+
Often, artists need to make choices about the formatting of their textures, usually during the planning stage before creating the model/texture. Here is some technical information on 2d images.
+
 
+
'''Size''': The dimensions of the image, how the model is [[Texture Coordinates|unwrapped]], the scale of the model and scene scale all equate to the resolution of the textured model when seen in-game. It is important that all objects in the scene have similar texture scaling to keep the overall look consistent; a low-resolution image looks jarring when placed next to a high-resolution one. Texture size is the first place to start for this decision, determining [[Texel|texel]], the ratio between UV space/Texture resolution/Scene and object scale when uv unwrapping the model is the second.
+
  
 
Images store pixels in two dimensions, and can be square or rectangular. Most engines require dimensions to be in powers of two: 2,4,8,16,3164,128,256,512,1024,2048,4096. Other engines may not require it, but an off-sized image can potentially harm performance.
 
Images store pixels in two dimensions, and can be square or rectangular. Most engines require dimensions to be in powers of two: 2,4,8,16,3164,128,256,512,1024,2048,4096. Other engines may not require it, but an off-sized image can potentially harm performance.
  
'''Channels''' refers to the color components in the image. Red, Green and Blue (RGB) are each stored as data in separate indices and some software can display each as a greyscale image. An additional channel named Alpha can also be present, but not always rendered into the composite. Some formats store other channel types, such as HSL (Hue, Saturation, Luminance), CYMK (Cyan, Yellow, Magenta, Chroma/Black), or simply luminance or alpha.
+
* [http://www.polycount.com/forum/showthread.php?t=134911 How often are 4096 textures used in next-gen gaming] on the Polycount Forum
  
 +
=== Texture Channels ===
 +
Channels are the color components in the image. Red, Green and Blue (RGB) are each stored as data in separate indices and some software can display each as a greyscale image. An additional channel named Alpha can also be present, but not always rendered into the composite. Some formats store other channel types, such as HSL (Hue, Saturation, Luminance), CYMK (Cyan, Yellow, Magenta, Chroma/Black), or simply luminance or alpha.
  
'''[[BitDepth|Bit depth]]''' is how much data is allotted to each pixel either in memory or in the file. More bits per pixel (bpp) increases the number of colors available for each channel. The 1 bit type has two colors, black and white (or off and on), and is often used for transparent alpha testing - a simple sorting for whether or not a pixel is visible. 8 bits gives 256 colors per channel (16.7 million RGB colors), and is often the default mode for most applications. However, higher bpp means increased file size and memory use. It's not uncommon for a format to store colors unequally: 5 bits red, 6 bits green, 5 bits blue, for an example of a total 16 bit storage. Compression is another method to decrease the file size.
 
  
'''Compression'''
+
=== Bit Depth ===
 +
[[BitDepth|Bit depth]] is how much data is allotted to each pixel either in memory or in the file. More bits per pixel (bpp) increases the number of colors available for each channel. The 1 bit type has two colors, black and white (or off and on), and is often used for transparent alpha testing - a simple sorting for whether or not a pixel is visible. 8 bits gives 256 colors per channel (16.7 million RGB colors), and is often the default mode for most applications. However, higher bpp means increased file size and memory use. It's not uncommon for a format to store colors unequally: 5 bits red, 6 bits green, 5 bits blue, for an example of a total 16 bit storage. Compression is another method to decrease the file size.
  
 +
=== Texture Compression ===
  
(the following is the old wiki page, will clean up as pages are written)
 
  
== Related Pages ==
+
=== Texture Photography ===
 +
* [http://renderhjs.net/shoebox/ ShoeBox: Mask Image] - by ''[http://renderhjs.net Hendrik-Jan "renderhjs" Schoenmaker]''
 +
* [http://udn.epicgames.com/Three/TakingBetterPhotosForTextures.html Taking Better Photos for Textures] - by ''[http://www.mutantspoon.com/ Jordan Walker]''
 +
* [http://boards.polycount.net/showthread.php?t=65262 Better Sharpening in Photoshop] - by ''[http://poopinmymouth.com Ben "poopinmymouth" Mathis]''
 +
* [http://cgtextures.com/content.php?action=tutorials Texture Photography & Processing Tutorials]
  
 +
== More Information ==
 
* [[CharacterSculpting]] and [[EnvironmentSculpting]] have information on 3D sculpting.
 
* [[CharacterSculpting]] and [[EnvironmentSculpting]] have information on 3D sculpting.
* [[Category:Concept]] has drawing and painting fundamentals.  
+
* [[:Category:Concept]] has drawing and painting fundamentals.  
 
+
* [[TexturingTutorials]]  
== Texture Sizes ==
+
* [http://www.polycount.com/forum/showthread.php?t=134911 How often are 4096 textures used in next-gen gaming] on the Polycount Forum
+
  
== Texture Photography ==
 
{| border="1" cellpadding="2" cellspacing="0"
 
|  [http://renderhjs.net/shoebox/ ShoeBox: Mask Image] - by ''[http://renderhjs.net Hendrik-Jan "renderhjs" Schoenmaker]''
 
|-
 
|  [http://udn.epicgames.com/Three/TakingBetterPhotosForTextures.html Taking Better Photos for Textures] - by ''[http://www.mutantspoon.com/ Jordan Walker]''
 
|-
 
|  [http://boards.polycount.net/showthread.php?t=65262 Better Sharpening in Photoshop] - by ''[http://poopinmymouth.com Ben "poopinmymouth" Mathis]''
 
|-
 
|  [http://cgtextures.com/content.php?action=tutorials Texture Photography & Processing Tutorials]
 
|}
 
  
 +
----
 
[[Category:Discipline]] [[Category:Texturing]]
 
[[Category:Discipline]] [[Category:Texturing]]

Revision as of 17:15, 25 September 2014

Texturing refers to the act of producing 2d images for use with 3d models. Commonly referred to as "maps" or "skins".


Texture Techniques

Textures work in conjunction with Materials and Shaders to produce the final rendering. The game model needs Texture_Coordinates to wrap the texture onto the model. Multiple Texture Types are often used to control different parameters or channels of the shader, such as Normal map or Specular_color_map. A variety of techniques and Tools are used to make textures: painted by hand in a traditional 2d package, painted in 3d directly on models, created parametrically, or baking image data from one model to another.

Artists need to make choices about the formatting of their textures, usually during the planning stage before creating the model/texture. Here is some technical information on 2d images.

Texture Types

Depending on the engine and visual style, different types of maps are used for different effects. Vertex color is optionally used to control additional effects, such as blending between two images in the same model. Images are made up of Pixels and are split up into Red, Green and Blue components, also known as channels, and may additionally have an Alpha channel which can be used to store opacity or another type of map or mask. Masks are images or layers used to control "How much of What", such as Specular_color_maps or Specular_gloss_maps, and are typically (but not always) greyscale (pixels only utilizing one channel).

For the average prop, arrangements of map types might use Diffuse/Specular/Normal for a current-gen game. Physical Based Rendering setup might be Albedo/Microsurface/Reflectivity/Normal for a next-gen shader.

Other surfaces need more specialized shaders and textures, such as Skin or water.

For an expanded list, see Texture types.

Texture Size

The dimensions of the image, how the model is unwrapped, the scale of the model and scene scale all equate to the resolution of the textured model when seen in-game. It is important that all objects in the scene have similar texture scaling to keep the overall look consistent; a low-resolution image looks jarring when placed next to a high-resolution one. Texture size is the first place to start for this decision, determining texel, the ratio between UV space/Texture resolution/Scene and object scale when uv unwrapping the model is the second.

Images store pixels in two dimensions, and can be square or rectangular. Most engines require dimensions to be in powers of two: 2,4,8,16,3164,128,256,512,1024,2048,4096. Other engines may not require it, but an off-sized image can potentially harm performance.

Texture Channels

Channels are the color components in the image. Red, Green and Blue (RGB) are each stored as data in separate indices and some software can display each as a greyscale image. An additional channel named Alpha can also be present, but not always rendered into the composite. Some formats store other channel types, such as HSL (Hue, Saturation, Luminance), CYMK (Cyan, Yellow, Magenta, Chroma/Black), or simply luminance or alpha.


Bit Depth

Bit depth is how much data is allotted to each pixel either in memory or in the file. More bits per pixel (bpp) increases the number of colors available for each channel. The 1 bit type has two colors, black and white (or off and on), and is often used for transparent alpha testing - a simple sorting for whether or not a pixel is visible. 8 bits gives 256 colors per channel (16.7 million RGB colors), and is often the default mode for most applications. However, higher bpp means increased file size and memory use. It's not uncommon for a format to store colors unequally: 5 bits red, 6 bits green, 5 bits blue, for an example of a total 16 bit storage. Compression is another method to decrease the file size.

Texture Compression

Texture Photography

More Information



Personal tools
Namespaces

Variants
Actions
Navigation
Tools