using UnityEngine;
namespace VRMShaders
{
///
/// ITextureDeserializer 実装者にテクスチャロード処理を委譲するために必要な情報.
///
public sealed class DeserializingTextureInfo
{
///
/// Texture のバイト列
///
public byte[] ImageData { get; }
///
/// Texture の mimeType
///
public string DataMimeType { get; }
///
/// Texture に求められる色空間
///
public ColorSpace ColorSpace { get; }
///
/// Texture に Mipmap が求められるか否か
///
public bool UseMipmap { get; }
///
/// Texture に求められる FilterMode
///
public FilterMode FilterMode { get; }
///
/// Texture に求められる U-Axis の WrapMode
///
public TextureWrapMode WrapModeU { get; }
///
/// Texture に求められる V-Axis の WrapMode
///
public TextureWrapMode WrapModeV { get; }
public DeserializingTextureInfo(byte[] imageData, string dataMimeType, ColorSpace colorSpace, bool useMipmap, FilterMode filterMode, TextureWrapMode wrapModeU, TextureWrapMode wrapModeV)
{
ImageData = imageData;
DataMimeType = dataMimeType;
ColorSpace = colorSpace;
UseMipmap = useMipmap;
FilterMode = filterMode;
WrapModeU = wrapModeU;
WrapModeV = wrapModeV;
}
public DeserializingTextureInfo(byte[] imageData, string dataMimeType, ColorSpace colorSpace, SamplerParam samplerParam)
{
ImageData = imageData;
DataMimeType = dataMimeType;
ColorSpace = colorSpace;
UseMipmap = samplerParam.EnableMipMap;
FilterMode = samplerParam.FilterMode;
WrapModeU = samplerParam.WrapModesU;
WrapModeV = samplerParam.WrapModesV;
}
}
}