void ShowAtlasGUI(int instanceID, bool isMeshRenderer) { if (m_LightmapIndex == null) { return; } Hash128 contentHash = LightmapVisualizationUtility.GetBakedGITextureHash(m_LightmapIndex.intValue, 0, GITextureType.Baked); // if we need to fetch a new texture if (m_CachedBakedTexture.texture == null || m_CachedBakedTexture.contentHash != contentHash) { m_CachedBakedTexture = LightmapVisualizationUtility.GetBakedGITexture(m_LightmapIndex.intValue, 0, GITextureType.Baked); } if (m_CachedBakedTexture.texture == null) { return; } m_ShowBakedLM.value = EditorGUILayout.Foldout(m_ShowBakedLM.value, Styles.atlas, true); if (!m_ShowBakedLM.value) { return; } EditorGUI.indentLevel += 1; GUILayout.BeginHorizontal(); DrawLightmapPreview(m_CachedBakedTexture.texture, false, instanceID); GUILayout.BeginVertical(); GUILayout.Label(Styles.atlasIndex.text + ": " + m_LightmapIndex.intValue); GUILayout.Label(Styles.atlasTilingX.text + ": " + m_LightmapTilingOffsetX.floatValue.ToString(CultureInfo.InvariantCulture.NumberFormat)); GUILayout.Label(Styles.atlasTilingY.text + ": " + m_LightmapTilingOffsetY.floatValue.ToString(CultureInfo.InvariantCulture.NumberFormat)); GUILayout.Label(Styles.atlasOffsetX.text + ": " + m_LightmapTilingOffsetZ.floatValue.ToString(CultureInfo.InvariantCulture.NumberFormat)); GUILayout.Label(Styles.atlasOffsetY.text + ": " + m_LightmapTilingOffsetW.floatValue.ToString(CultureInfo.InvariantCulture.NumberFormat)); var settings = Lightmapping.GetLightingSettingsOrDefaultsFallback(); float lightmapResolution = settings.lightmapResolution * CalcLODScale(isMeshRenderer) * m_LightmapScale.floatValue; if (isMeshRenderer && (m_Renderers != null) && (m_Renderers.Length > 0)) { Transform transform = m_Renderers[0].GetComponent <Transform>(); float lightmapObjectScale = System.Math.Min(System.Math.Min(transform.localScale.x, transform.localScale.y), transform.localScale.z); GUILayout.Label(Styles.lightmapResolution.text + ": " + lightmapResolution.ToString(CultureInfo.InvariantCulture.NumberFormat)); GUILayout.Label(Styles.lightmapObjectScale.text + ": " + lightmapObjectScale.ToString(CultureInfo.InvariantCulture.NumberFormat)); } GUILayout.EndVertical(); GUILayout.FlexibleSpace(); GUILayout.EndHorizontal(); bool showProgressiveInfo = isPrefabAsset || (settings.bakedGI && settings.lightmapper != LightingSettings.Lightmapper.Enlighten); if (showProgressiveInfo && Unsupported.IsDeveloperMode()) { Hash128 instanceHash; Lightmapping.GetPVRInstanceHash(instanceID, out instanceHash); EditorGUILayout.LabelField(Styles.pvrInstanceHash, GUIContent.Temp(instanceHash.ToString())); Hash128 atlasHash; Lightmapping.GetPVRAtlasHash(instanceID, out atlasHash); EditorGUILayout.LabelField(Styles.pvrAtlasHash, GUIContent.Temp(atlasHash.ToString())); int atlasInstanceOffset; Lightmapping.GetPVRAtlasInstanceOffset(instanceID, out atlasInstanceOffset); EditorGUILayout.LabelField(Styles.pvrAtlasInstanceOffset, GUIContent.Temp(atlasInstanceOffset.ToString())); } EditorGUI.indentLevel -= 1; GUILayout.Space(5); }