public override void OnInspectorGUI() { if (m_Images == null) { InitTexturesFromCubemap(); } EditorGUIUtility.labelWidth = 50; var c = target as Cubemap; if (c == null) { return; } GUILayout.BeginVertical(); GUILayout.BeginHorizontal(); ShowFace("Right\n(+X)", CubemapFace.PositiveX); ShowFace("Left\n(-X)", CubemapFace.NegativeX); GUILayout.EndHorizontal(); GUILayout.BeginHorizontal(); ShowFace("Top\n(+Y)", CubemapFace.PositiveY); ShowFace("Bottom\n(-Y)", CubemapFace.NegativeY); GUILayout.EndHorizontal(); GUILayout.BeginHorizontal(); ShowFace("Front\n(+Z)", CubemapFace.PositiveZ); ShowFace("Back\n(-Z)", CubemapFace.NegativeZ); GUILayout.EndHorizontal(); GUILayout.EndVertical(); EditorGUIUtility.labelWidth = 0; EditorGUILayout.Space(); EditorGUI.BeginChangeCheck(); EditorGUILayout.HelpBox("Lowering face size is a destructive operation, you might need to re-assign the textures later to fix resolution issues. It's preferable to use Cubemap texture import type instead of Legacy Cubemap assets.", MessageType.Warning); int faceSize = TextureUtil.GetGPUWidth(c); faceSize = EditorGUILayout.IntPopup("Face size", faceSize, kSizes, kSizesValues); int mipMaps = TextureUtil.GetMipmapCount(c); bool useMipMap = EditorGUILayout.Toggle("MipMaps", mipMaps > 1); bool streamingMipmaps = TextureUtil.GetCubemapStreamingMipmaps(c); if (useMipMap) { streamingMipmaps = EditorGUILayout.Toggle(EditorGUIUtility.TrTextContent("Streaming Mipmaps", "Don't load image data immediately but wait till image data is requested from script."), streamingMipmaps); } bool linear = TextureUtil.GetLinearSampled(c); linear = EditorGUILayout.Toggle("Linear", linear); bool readable = TextureUtil.IsCubemapReadable(c); readable = EditorGUILayout.Toggle("Readable", readable); if (EditorGUI.EndChangeCheck()) { // reformat the cubemap if (TextureUtil.ReformatCubemap(c, faceSize, faceSize, c.format, useMipMap, linear)) { InitTexturesFromCubemap(); } TextureUtil.MarkCubemapReadable(c, readable); TextureUtil.SetCubemapStreamingMipmaps(c, streamingMipmaps); c.Apply(); } }