Class DecalProjector
Decal Projector component.
Implements
Inherited Members
Namespace: UnityEngine.Rendering.HighDefinition
Assembly: Unity.RenderPipelines.HighDefinition.Runtime.dll
Syntax
[ExecuteAlways]
[CanEditMultipleObjects]
[AddComponentMenu("Rendering/HDRP Decal Projector")]
public class DecalProjector : MonoBehaviour, IVersionable<DecalProjector.Version>
Properties
TransparentTextureResolution
Resolution that is used when the projector affects transparency and a shader graph is being used
Declaration
public IntScalableSettingValue TransparentTextureResolution { get; set; }
Property Value
Type | Description |
---|---|
IntScalableSettingValue |
affectsTransparency
Change the transparency. It is only compatible when using HDRP/Decal shader.
Declaration
public bool affectsTransparency { get; set; }
Property Value
Type | Description |
---|---|
bool |
decalLayerMask
The layer of the decal.
Declaration
public RenderingLayerMask decalLayerMask { get; set; }
Property Value
Type | Description |
---|---|
RenderingLayerMask |
drawDistance
Distance from camera at which the Decal is not rendered anymore.
Declaration
public float drawDistance { get; set; }
Property Value
Type | Description |
---|---|
float |
endAngleFade
Angle between decal backward orientation and vertex normal of receiving surface at which the Decal end to fade off.
Declaration
public float endAngleFade { get; set; }
Property Value
Type | Description |
---|---|
float |
fadeFactor
Controls the transparency of the decal.
Declaration
public float fadeFactor { get; set; }
Property Value
Type | Description |
---|---|
float |
fadeScale
Percent of the distance from the camera at which this Decal start to fade off.
Declaration
public float fadeScale { get; set; }
Property Value
Type | Description |
---|---|
float |
material
The material used by the decal. It should be of type HDRP/Decal if you want to have transparency.
Declaration
public Material material { get; set; }
Property Value
Type | Description |
---|---|
Material |
pivot
Change the pivot position. It is an offset between the center of the projection and the transform position.
Declaration
public Vector3 pivot { get; set; }
Property Value
Type | Description |
---|---|
Vector3 |
scaleMode
The scaling mode to apply to decals that use this Decal Projector.
Declaration
public DecalScaleMode scaleMode { get; set; }
Property Value
Type | Description |
---|---|
DecalScaleMode |
size
The size of the projection volume. See also ResizeAroundPivot(Vector3) to rescale relatively to the pivot position.
Declaration
public Vector3 size { get; set; }
Property Value
Type | Description |
---|---|
Vector3 |
startAngleFade
Angle between decal backward orientation and vertex normal of receiving surface at which the Decal start to fade off.
Declaration
public float startAngleFade { get; set; }
Property Value
Type | Description |
---|---|
float |
uvBias
Offset of the UV of the projected texture.
Declaration
public Vector2 uvBias { get; set; }
Property Value
Type | Description |
---|---|
Vector2 |
uvScale
Tilling of the UV of the projected texture.
Declaration
public Vector2 uvScale { get; set; }
Property Value
Type | Description |
---|---|
Vector2 |
Methods
IsValid()
Check if the material is set and if it is different than the default one
Declaration
public bool IsValid()
Returns
Type | Description |
---|---|
bool | True: the material is set and is not the default one |
ResizeAroundPivot(Vector3)
Update the pivot to resize centered on the pivot position.
Declaration
public void ResizeAroundPivot(Vector3 newSize)
Parameters
Type | Name | Description |
---|---|---|
Vector3 | newSize | The new size. |
UpdateTransparentShaderGraphTextures()
If called it will force an update of the shader graph textures in the transparent decal atlas if the DecalProjector has Affects Transparent enabled
Declaration
public void UpdateTransparentShaderGraphTextures()
Events
OnMaterialChange
Event called each time the used material change.
Declaration
public event Action OnMaterialChange
Event Type
Type | Description |
---|---|
Action |