29 lines
913 B
C#
29 lines
913 B
C#
using UnityEngine;
|
|
using UnityEngine.UI;
|
|
|
|
namespace SpriteShadersUltimate
|
|
{
|
|
[AddComponentMenu("Sprite Shaders Ultimate/Utility/Material Instancer SSU")]
|
|
public class MaterialInstancerSSU : InstancerSSU
|
|
{
|
|
private void Awake()
|
|
{
|
|
var graphic = GetComponent<Graphic>();
|
|
if (graphic != null)
|
|
{
|
|
graphic.material = Instantiate(graphic.material);
|
|
runtimeMaterial = graphic.materialForRendering;
|
|
}
|
|
|
|
var renderer = GetComponent<Renderer>();
|
|
if (renderer != null)
|
|
{
|
|
var materials = renderer.sharedMaterials;
|
|
for (var n = 0; n < materials.Length; n++) materials[n] = Instantiate(materials[n]);
|
|
|
|
renderer.materials = renderer.sharedMaterials = materials;
|
|
runtimeMaterial = materials[0];
|
|
}
|
|
}
|
|
}
|
|
} |