UniVRM/Assets/VRMShaders/GLTF/IO/Runtime/SamplerParam.cs
2021-05-24 23:28:43 +09:00

39 lines
916 B
C#

using UnityEngine;
namespace VRMShaders
{
public struct SamplerParam
{
public TextureWrapMode WrapModesU;
public TextureWrapMode WrapModesV;
public FilterMode FilterMode;
public bool EnableMipMap;
public static SamplerParam Default => new SamplerParam
{
FilterMode = FilterMode.Bilinear,
WrapModesU = TextureWrapMode.Repeat,
WrapModesV = TextureWrapMode.Repeat,
EnableMipMap = true,
};
}
public static class SamplerParamExtensions
{
public static void SetSampler(this Texture2D texture, in SamplerParam param)
{
if (texture == null)
{
return;
}
texture.wrapModeU = param.WrapModesU;
texture.wrapModeV = param.WrapModesV;
texture.filterMode = param.FilterMode;
}
}
}