public void ListPrefabDatabase() { RHZLogger.RHZ_Log("Listing PrefabdataBase prefabFiles Dictionary:"); foreach (KeyValuePair <string, string> kvp in PrefabDatabase.prefabFiles) { RHZLogger.RHZ_Log($"prefabFile: {kvp.Value}"); } }
private void Write(string message, LogType type) { logMessage.Add(new LOG() { message = message, type = type }); if (logMessage.Count == MAXLOG) { RemoveFirstLogEntry(); } RHZLogger.RHZ_Log(message, type); }
private void Write(string message, LogType type, params object[] arg) { logMessage.Add(new LOG() { message = string.Format(message, arg), type = type }); if (logMessage.Count == MAXLOG) { RemoveFirstLogEntry(); } RHZLogger.RHZ_Log(message, type, arg); }
public static List <MaterialInfo> GetRendererInfo(this GameObject gameObject) { if (ShaderPropertyKeywords == null) { ShaderPropertyKeywords = ShaderHelper.CreateShaderPropertyList(); } List <MaterialInfo> materialInfos = new List <MaterialInfo>(); Renderer renderer = gameObject.GetComponent <Renderer>(); if (renderer == null) { renderer = gameObject.GetComponentInChildren <Renderer>(true); } else if (renderer == null) { RHZLogger.RHZ_Error($"Object: {gameObject.name} has no renderers!"); } List <string> keywords = new List <string>(); for (int i = 0; i < renderer.materials.Length; i++) { Material material = renderer.materials[i]; materialInfos.Add(new MaterialInfo(material, i)); int activeIndex = 0; keywords.Clear(); material.GetTexturePropertyNames(keywords); for (int j = 0; j < keywords.Count; j++) { string keyword = keywords[j]; if (material.HasProperty(keyword)) { string value; try { value = material.GetTexture(Shader.PropertyToID(keyword)).name; materialInfos[i].ActiveShaders.Add(new ShaderInfo(material.shader.name, activeIndex, material.shader, keyword, value)); activeIndex++; } catch { } for (int k = 0; k < ShaderPropertyKeywords.Count; k++) { string keyword2 = ShaderPropertyKeywords[j]; try { Color color = material.GetColor(keyword2); //if (color != transparent) //{ materialInfos[i].ActiveShaders.Add(new ShaderInfo(material.shader.name, activeIndex, material.shader, keyword2, color.ToString())); activeIndex++; //} } catch { } } } } foreach (string item in material.shaderKeywords) { materialInfos[i].ShaderKeywords.Add(item); } } return(materialInfos); }