¼ÎÀÌ´õ µ¿ÀûÀ¸·Î ºÙÀ̱⽺ũ¸³Æ®¿¡¼ ¼ÎÀÌ´õ¸¦ µ¿ÀûÀ¸·Î Àû¿ëÇÒ·Á¸é material.shader¸¦ ¼³Á¤ÇÏ¸é µÈ´Ù. transform.GetComponent<Renderer>().material.shader = Shader.Find("Custom/TestSurf");
¼ÎÀÌ´õ º¯¼ö Á¢±Ù¼ÎÀÌ´õ º¯¼öÀÇ °ªÀ» ¾ò¾î¿À°í ¼³Á¤ÇÑ´Ù.//°ª ¾ò¾î¿À±â
float f = transform.GetComponent<Renderer>().material.GetFloat("_ColorStrength"); //°ª ¼³Á¤ transform.GetComponent<Renderer>().material.SetFloat("_ColorStrength", 0.5f); Shader Àüü ¼Ò½ºShader "Custom/TestSurf" {
Properties { _ColorStrength ("Color Strength", Float) = 1.0 } SubShader { CGPROGRAM #pragma surface surf NoLighting noambient float _ColorStrength; struct Input { float4 c : Color; }; fixed4 LightingNoLighting(SurfaceOutput s, fixed3 lightDir, fixed atten){ fixed4 c; c.rgb = s.Albedo; c.a = s.Alpha; return c; } void surf (Input input, inout SurfaceOutput o) { o.Albedo = _ColorStrength; } ENDCG } } ½ºÅ©¸³Æ® Àüü ¼Ò½ºusing UnityEngine;
using System.Collections; public class CylinderScript : MonoBehaviour { // Use this for initialization void Start () { transform.GetComponent<Renderer>().material.shader = Shader.Find("Custom/TestSurf"); float f = transform.GetComponent<Renderer>().material.GetFloat("_ColorStrength"); Debug.Log ("ColorStreangth value is " + f); } // Update is called once per frame void Update () { transform.GetComponent<Renderer>().material.SetFloat("_ColorStrength", 0.5f); } } ÂüÁ¶) http://www.devkorea.co.kr/reference/Documentation/ScriptReference/Material.SetColor.html |