static public void DebugLog(MatShaderList list) { for (int i = 0; i < list.shaders.Count; i++) { Debug.Log(list.mats[i] + " " + list.shaders[i]); } }
static public void ResetMatRecursively(Transform root, MatShaderList list, int num = 0) { foreach (Transform child in root) { if (child.GetComponent <Renderer>() != null) { foreach (Material mat in child.GetComponent <Renderer>().materials) { //mat.SetColor("_TintColor", color); for (int i = 0; i < list.mats.Count; i++) { if (mat == list.mats[i]) { mat.shader = list.shaders[i]; list.RemoveAt(i); break; } } num += 1; } } //recurse. ResetMatRecursively(child, list, num); } }
public static void DebugLog(MatShaderList list) { Debug.Log("array length="+list.shaders.Count); //~ Debug.Log("array length="+list.mats.Count); //~ Debug.Log("array length="); for(int i=0; i<list.shaders.Count; i++){ Debug.Log(list.mats[i]+" "+list.shaders[i]); } }
static public void DebugLog(MatShaderList list) { Debug.Log("array length=" + list.shaders.Count); //~ Debug.Log("array length="+list.mats.Count); //~ Debug.Log("array length="); for (int i = 0; i < list.shaders.Count; i++) { Debug.Log(list.mats[i] + " " + list.shaders[i]); } }
public static void ResetMatRecursively(Transform root, MatShaderList list, int num=0) { foreach(Transform child in root) { if(child.renderer!=null){ foreach(Material mat in child.renderer.materials){ //mat.SetColor("_TintColor", color); for(int i=0; i<list.mats.Count; i++){ if(mat==list.mats[i]){ mat.shader=list.shaders[i]; list.RemoveAt(i); break; } } num+=1; } } //recurse. ResetMatRecursively(child, list, num); } }
static public MatShaderList SetMat2AdditiveRecursively(Transform root, MatShaderList list) { if (list == null) { list = new MatShaderList(); } foreach (Transform child in root) { if (child.GetComponent <Renderer>() != null) { foreach (Material mat in child.GetComponent <Renderer>().materials) { list.Add(mat, mat.shader); mat.shader = Shader.Find("Particles/Additive"); } } //recurse. list = SetMat2AdditiveRecursively(child, list); } return(list); }
public static MatShaderList SetMat2AdditiveRecursively(Transform root, MatShaderList list) { if(list==null){ list=new MatShaderList(); } foreach(Transform child in root) { if(child.renderer!=null){ foreach(Material mat in child.renderer.materials){ list.Add(mat, mat.shader); mat.shader=Shader.Find("Particles/Additive"); } } //recurse. list=SetMat2AdditiveRecursively(child, list); } return list; }
public static void DebugLog(MatShaderList list) { for(int i=0; i<list.shaders.Count; i++){ Debug.Log(list.mats[i]+" "+list.shaders[i]); } }