/**
* Copyright(c) Live2D Inc. All rights reserved.
*
* Use of this source code is governed by the Live2D Open Software license
* that can be found at https://www.live2d.com/eula/live2d-open-software-license-agreement_en.html.
*/
using UnityEngine;
namespace Live2D.Cubism.Rendering
{
///
/// Default materials.
///
public static class CubismBuiltinMaterials
{
///
/// Default unlit material.
///
public static Material Unlit
{
get { return LoadUnlitMaterial("Unlit"); }
}
///
/// Default unlit, additively blending material.
///
public static Material UnlitAdditive
{
get { return LoadUnlitMaterial("UnlitAdditive"); }
}
///
/// Default unlit, multiply blending material.
///
public static Material UnlitMultiply
{
get { return LoadUnlitMaterial("UnlitMultiply"); }
}
///
/// Default unlit masked material.
///
public static Material UnlitMasked
{
get { return LoadUnlitMaterial("UnlitMasked"); }
}
///
/// Default unlit masked, additively blending material.
///
public static Material UnlitAdditiveMasked
{
get { return LoadUnlitMaterial("UnlitAdditiveMasked"); }
}
///
/// Default unlit masked, multiply blending material.
///
public static Material UnlitMultiplyMasked
{
get { return LoadUnlitMaterial("UnlitMultiplyMasked"); }
}
///
/// Default unlit masked inverted material.
///
public static Material UnlitMaskedInverted
{
get { return LoadUnlitMaterial("UnlitMaskedInverted"); }
}
///
/// Default unlit masked inverted, additively blending material.
///
public static Material UnlitAdditiveMaskedInverted
{
get { return LoadUnlitMaterial("UnlitAdditiveMaskedInverted"); }
}
///
/// Default unlit masked inverted, multiply blending material.
///
public static Material UnlitMultiplyMaskedInverted
{
get { return LoadUnlitMaterial("UnlitMultiplyMaskedInverted"); }
}
///
/// Default unlit material.
///
public static Material UnlitCulling
{
get { return LoadUnlitMaterial("UnlitCulling"); }
}
///
/// Default unlit, additively blending material.
///
public static Material UnlitAdditiveCulling
{
get { return LoadUnlitMaterial("UnlitAdditiveCulling"); }
}
///
/// Default unlit, multiply blending material.
///
public static Material UnlitMultiplyCulling
{
get { return LoadUnlitMaterial("UnlitMultiplyCulling"); }
}
///
/// Default unlit masked material.
///
public static Material UnlitMaskedCulling
{
get { return LoadUnlitMaterial("UnlitMaskedCulling"); }
}
///
/// Default unlit masked, additively blending material.
///
public static Material UnlitAdditiveMaskedCulling
{
get { return LoadUnlitMaterial("UnlitAdditiveMaskedCulling"); }
}
///
/// Default unlit masked, multiply blending material.
///
public static Material UnlitMultiplyMaskedCulling
{
get { return LoadUnlitMaterial("UnlitMultiplyMaskedCulling"); }
}
///
/// Default unlit masked inverted material.
///
public static Material UnlitMaskedInvertedCulling
{
get { return LoadUnlitMaterial("UnlitMaskedInvertedCulling"); }
}
///
/// Default unlit masked inverted, additively blending material.
///
public static Material UnlitAdditiveMaskedInvertedCulling
{
get { return LoadUnlitMaterial("UnlitAdditiveMaskedInvertedCulling"); }
}
///
/// Default unlit masked inverted, multiply blending material.
///
public static Material UnlitMultiplyMaskedInvertedCulling
{
get { return LoadUnlitMaterial("UnlitMultiplyMaskedInvertedCulling"); }
}
///
/// Default mask material.
///
public static Material Mask
{
get { return LoadMaskMaterial(); }
}
///
/// Default culled mask material.
///
public static Material MaskCulling
{
get { return LoadMaskCullingMaterial(); }
}
#region Helper Methods
///
/// Resource directory of builtin s.
///
private const string ResourcesDirectory = "Live2D/Cubism/Materials";
///
/// Loads an unlit material.
///
/// Material name.
/// The material.
private static Material LoadUnlitMaterial(string name)
{
return Resources.Load(ResourcesDirectory + "/" + name);
}
///
/// Loads an mask material.
///
/// The material.
private static Material LoadMaskMaterial()
{
return Resources.Load(ResourcesDirectory + "/Mask");
}
///
/// Loads an mask culling material.
///
/// The material.
private static Material LoadMaskCullingMaterial()
{
return Resources.Load(ResourcesDirectory + "/MaskCulling");
}
#endregion
}
}