m behaviour > behavior |
Automated: update 'HighPriorityIntegration' description |
||
(6 intermediate revisions by 4 users not shown) | |||
Line 9: | Line 9: | ||
<!--T:2--> | <!--T:2--> | ||
PBS Metallic is a [https://en.wikipedia.org/wiki/Physically_based_rendering physically-based] material that uses a | PBS Metallic is a [https://en.wikipedia.org/wiki/Physically_based_rendering physically-based] material that uses a Metallic-Smoothness (MS) map to store data about the metallicity and smoothness of an object. It is based on the Unity 5 Standard PBR Setup. | ||
For information about the maps and their properties read on! | For information about the maps and their properties read on! | ||
== Usage == <!--T:3--> | == Usage == <!--T:3--> | ||
{{Table ComponentFields | {{Table ComponentFields | ||
|HighPriorityIntegration|Bool| | |HighPriorityIntegration|Bool|{{Asset HighPriorityIntegration Field}} | ||
|_shader|Shader| | |_shader|{{RootFieldType|AssetRef`1|[[Type:Shader|Shader]]}}|TypeAdv1=true| | ||
|TextureScale|Float2| | |TextureScale|Float2| | ||
|TextureOffset|Float2| | |TextureOffset|Float2| | ||
|DetailTextureScale|Float2| | |DetailTextureScale|Float2| | ||
|DetailTextureOffset|Float2| | |DetailTextureOffset|Float2| | ||
|AlbedoColor| | |AlbedoColor|ColorX| | ||
|AlbedoTexture|ITexture2D| | |AlbedoTexture|{{RootFieldType|AssetRef`1|[[Type:ITexture2D|ITexture2D]]}}|TypeAdv7=true| | ||
|EmissiveColor| | |EmissiveColor|ColorX| | ||
|EmissiveMap|ITexture2D| | |EmissiveMap|{{RootFieldType|AssetRef`1|[[Type:ITexture2D|ITexture2D]]}}|TypeAdv9=true| | ||
|NormalScale|Float| | |NormalScale|Float| | ||
|NormalMap|ITexture2D| | |NormalMap|{{RootFieldType|AssetRef`1|[[Type:ITexture2D|ITexture2D]]}}|TypeAdv11=true| | ||
|HeightMap|ITexture2D| | |HeightMap|{{RootFieldType|AssetRef`1|[[Type:ITexture2D|ITexture2D]]}}|TypeAdv12=true| | ||
|HeightScale|Float| | |HeightScale|Float| | ||
|OcclusionMap|ITexture2D| | |OcclusionMap|{{RootFieldType|AssetRef`1|[[Type:ITexture2D|ITexture2D]]}}|TypeAdv14=true| | ||
|DetailAlbedoTexture|ITexture2D| | |DetailAlbedoTexture|{{RootFieldType|AssetRef`1|[[Type:ITexture2D|ITexture2D]]}}|TypeAdv15=true| | ||
|DetailNormalMap|ITexture2D| | |DetailNormalMap|{{RootFieldType|AssetRef`1|[[Type:ITexture2D|ITexture2D]]}}|TypeAdv16=true| | ||
|DetailNormalScale|Float| | |DetailNormalScale|Float| | ||
|BlendMode|BlendMode| | |BlendMode|BlendMode| | ||
|AlphaCutoff|Float| | |AlphaCutoff|Float| | ||
|OffsetFactor|Float| | |OffsetFactor|Float| | ||
|OffsetUnits|Float| | |OffsetUnits|Float| | ||
|RenderQueue|Int| | |RenderQueue|Int| | ||
|Metallic|Float| | |Metallic|Float| | ||
|Smoothness|Float| | |Smoothness|Float| | ||
|MetallicMap|ITexture2D| | |MetallicMap|{{RootFieldType|AssetRef`1|[[Type:ITexture2D|ITexture2D]]}}|TypeAdv25=true| | ||
}} | }} | ||
Line 48: | Line 48: | ||
This Material type uses a Metallic Map for determining: | This Material type uses a Metallic Map for determining: | ||
* Metallic Levels | * Metallic Levels | ||
* Ambient Occlusion/Height | |||
* Smoothness | * Smoothness | ||
Line 54: | Line 55: | ||
* '''R(Red Channel)''': Metallic | * '''R(Red Channel)''': Metallic | ||
** The Red Channel determines how metallic a material is. | ** The Red Channel determines how metallic a material is. | ||
** Metals are usually 1 in this channel and non-metals are 0 | ** Metals are usually 1 in this channel and non-metals (also known as dielectrics) are 0 | ||
** When choosing Metallic values, do remember that items in the real world aren't perfect. Imperfections and randomness is good! | ** When choosing Metallic values, do remember that items in the real world aren't perfect. Imperfections and randomness is good! A common misconception is that pixels within a metallic map must be pure 0 or 1 values, however this is not the case. If you were able to zoom in far enough into a material you could observe pure metal and pure non-metal parts (rust would be metal with a separate layer of oxidized material), but with textures, you only have a limited number of pixels to represent individual characteristics of materials. When authoring these textures, what you are actually doing is describing the average characteristic in the area of interest. It is therefore accurate to describe materials such as rust as somewhere between 0 and 1 on average in an area depending on how much oxidation versus metal there is. | ||
* '''G (Green Channel)''': Ambient Occlusion/Height | |||
** This allows you to pack either the Ambient Occlusion or the Height map data into one image and re-use it in those inputs to the material, depending on which you prefer to use. | |||
* '''Alpha''': Smoothness | * '''Alpha''': Smoothness | ||
** High Alpha means High Smoothness | ** High Alpha means High Smoothness | ||
Line 90: | Line 93: | ||
</translate> | </translate> | ||
[[Category:Components{{#translation:}}| | [[Category:Components{{#translation:}}|PBS Metallic]] | ||
[[Category:Components:Assets:Materials{{#translation:}}| | [[Category:Components:Assets:Materials{{#translation:}}|PBS Metallic]] | ||
[[Category:Materials:PBS]] | [[Category:Materials{{#translation:}}|PBS Metallic]] |
Revision as of 11:59, 1 August 2024
This article or section is a Stub. You can help the Resonite Wiki by expanding it.
PBS Metallic is a physically-based material that uses a Metallic-Smoothness (MS) map to store data about the metallicity and smoothness of an object. It is based on the Unity 5 Standard PBR Setup.
For information about the maps and their properties read on!
Usage
Name | Type | Description |
---|---|---|
persistent
|
Bool | Determines whether or not this item will be saved to the server. |
UpdateOrder
|
Int | Controls the order in which this component is updated. |
Enabled
|
Bool | Controls whether or not this component is enabled. |
HighPriorityIntegration
|
Bool | If true, integrating this asset (e.g. processing procedural assets) gets higher priority than assets with this flag off. An example is user laser procedural meshes. |
_shader
|
Shader | |
TextureScale
|
Float2 | |
TextureOffset
|
Float2 | |
DetailTextureScale
|
Float2 | |
DetailTextureOffset
|
Float2 | |
AlbedoColor
|
ColorX | |
AlbedoTexture
|
ITexture2D | |
EmissiveColor
|
ColorX | |
EmissiveMap
|
ITexture2D | |
NormalScale
|
Float | |
NormalMap
|
ITexture2D | |
HeightMap
|
ITexture2D | |
HeightScale
|
Float | |
OcclusionMap
|
ITexture2D | |
DetailAlbedoTexture
|
ITexture2D | |
DetailNormalMap
|
ITexture2D | |
DetailNormalScale
|
Float | |
BlendMode
|
BlendMode | |
AlphaCutoff
|
Float | |
OffsetFactor
|
Float | |
OffsetUnits
|
Float | |
RenderQueue
|
Int | |
Metallic
|
Float | |
Smoothness
|
Float | |
MetallicMap
|
ITexture2D |
Behavior
Metallic Maps
This Material type uses a Metallic Map for determining:
- Metallic Levels
- Ambient Occlusion/Height
- Smoothness
This information is packed into different channels within the Metallic Map using the following pattern:
- R(Red Channel): Metallic
- The Red Channel determines how metallic a material is.
- Metals are usually 1 in this channel and non-metals (also known as dielectrics) are 0
- When choosing Metallic values, do remember that items in the real world aren't perfect. Imperfections and randomness is good! A common misconception is that pixels within a metallic map must be pure 0 or 1 values, however this is not the case. If you were able to zoom in far enough into a material you could observe pure metal and pure non-metal parts (rust would be metal with a separate layer of oxidized material), but with textures, you only have a limited number of pixels to represent individual characteristics of materials. When authoring these textures, what you are actually doing is describing the average characteristic in the area of interest. It is therefore accurate to describe materials such as rust as somewhere between 0 and 1 on average in an area depending on how much oxidation versus metal there is.
- G (Green Channel): Ambient Occlusion/Height
- This allows you to pack either the Ambient Occlusion or the Height map data into one image and re-use it in those inputs to the material, depending on which you prefer to use.
- Alpha: Smoothness
- High Alpha means High Smoothness
- Low Alpha is Low Smoothness
Resonite uses the Unity Standard Shader Maps for this Material, for more information please see this guide for more information.
Other Maps
TODO
Unity declares Green : Occlusion and Height as interchangeable and usable for both slots
https://forum.unity.com/threads/standard-shader-metallic-texture-packing.314283/
R: Metalness
G: Occlusion/Height
A: Smoothness
Examples
Further Reading
You may be interested in the following other pages:
- PBS Specular - Documentation on Resonite's PBS Specular Material. This is often paired or compared to PBS Metallic.