Rasagar/Library/PackageCache/com.unity.render-pipelines.universal/Editor/UpgradeCommon.cs
2024-08-26 23:07:20 +03:00

131 lines
3.1 KiB
C#

using UnityEngine.Scripting.APIUpdating;
namespace UnityEditor.Rendering.Universal
{
/// <summary>
/// The surface type for your material.
/// </summary>
public enum UpgradeSurfaceType
{
/// <summary>
/// Use this for opaque surfaces.
/// </summary>
Opaque,
/// <summary>
/// Use this for transparent surfaces.
/// </summary>
Transparent
}
/// <summary>
/// The blend mode for your material.
/// </summary>
public enum UpgradeBlendMode
{
/// <summary>
/// Use this for alpha blend mode.
/// </summary>
Alpha,
/// <summary>
/// Use this for premultiply blend mode.
/// </summary>
Premultiply,
/// <summary>
/// Use this for additive blend mode.
/// </summary>
Additive,
/// <summary>
/// Use this for multiply blend mode.
/// </summary>
Multiply
}
/// <summary>
/// Options for Specular source.
/// </summary>
public enum SpecularSource
{
/// <summary>
/// Use this to use specular texture and color.
/// </summary>
SpecularTextureAndColor,
/// <summary>
/// Use this when not using specular.
/// </summary>
NoSpecular
}
/// <summary>
/// Options to select the texture channel where the smoothness value is stored.
/// </summary>
public enum SmoothnessSource
{
/// <summary>
/// Use this when smoothness is stored in the alpha channel of the Specular Map.
/// </summary>
SpecularAlpha,
/// <summary>
/// Use this when smoothness is stored in the alpha channel of the base Map.
/// </summary>
BaseAlpha,
}
/// <summary>
/// Options to select the source for reflections.
/// </summary>
public enum ReflectionSource
{
/// <summary>
/// Use this when there are no reflections.
/// </summary>
NoReflection,
/// <summary>
/// Use this when the source comes from a cubemap.
/// </summary>
Cubemap,
/// <summary>
/// Use this when the source comes from a reflection probe.
/// </summary>
ReflectionProbe
}
/// <summary>
/// Container for the upgrade parameters.
/// </summary>
public struct UpgradeParams
{
/// <summary>
/// Surface type upgrade parameters.
/// </summary>
public UpgradeSurfaceType surfaceType { get; set; }
/// <summary>
/// Blend mode upgrade parameters.
/// </summary>
public UpgradeBlendMode blendMode { get; set; }
/// <summary>
/// Alpha clip upgrade parameters.
/// </summary>
public bool alphaClip { get; set; }
/// <summary>
/// Specular source upgrade parameters.
/// </summary>
public SpecularSource specularSource { get; set; }
/// <summary>
/// Smoothness source upgrade parameters.
/// </summary>
public SmoothnessSource smoothnessSource { get; set; }
}
}