本文整理汇总了C#中Material.Clone方法的典型用法代码示例。如果您正苦于以下问题:C# Material.Clone方法的具体用法?C# Material.Clone怎么用?C# Material.Clone使用的例子?那么恭喜您, 这里精选的方法代码示例或许可以为您提供帮助。您也可以进一步了解该方法所在类Material
的用法示例。
在下文中一共展示了Material.Clone方法的2个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的C#代码示例。
示例1: Initialize
public void Initialize(SkinnedMeshRenderer owner, SkinnedMeshRenderer source, Material[] originalMaterials, Material overrideMaterial, int itsa, bool legacy)
{
this.Shutdown();
if (!legacy)
{
this.materials = (Material[])originalMaterials.Clone();
this.initialized = true;
if (!this.SetOverride(originalMaterials, overrideMaterial, itsa))
{
this.materials = null;
}
}
else
{
Transform transforms = owner.transform;
this.renderer = (SkinnedMeshRenderer)UnityEngine.Object.Instantiate(source);
Transform transforms1 = this.renderer.transform;
transforms1.parent = transforms.parent;
transforms1.localPosition = transforms.localPosition;
transforms1.localRotation = transforms.localRotation;
transforms1.localScale = transforms.localScale;
this.materials = (Material[])originalMaterials.Clone();
this.initialized = true;
this.SetOverride(originalMaterials, overrideMaterial, itsa);
this.UpdateMaterials(true);
}
}
示例2: GetMaterialClone
/// <summary>
///
/// </summary>
/// <param name="mat"></param>
/// <returns></returns>
private Material GetMaterialClone(Material mat) {
string clonedName = mat.Name + "_Batched";
Material clonedMat = (Material)MaterialManager.Instance.GetByName(clonedName);
if (clonedMat == null)
clonedMat = mat.Clone(clonedName);
return clonedMat;
}