GetGITexture() private method

private GetGITexture ( GITextureType textureType ) : Texture2D
textureType GITextureType
return UnityEngine.Texture2D
        public void ObjectPreview(Rect r)
        {
            if (r.height > 0f)
            {
                if (s_Styles == null)
                {
                    s_Styles = new Styles();
                }
                List <Texture2D> list = new List <Texture2D>();
                foreach (GITextureType type in this.kObjectPreviewTextureTypes)
                {
                    list.Add(LightmapVisualizationUtility.GetGITexture(type));
                }
                if (list.Count != 0)
                {
                    Rect rect3;
                    Rect rect9;
                    if (this.m_ZoomablePreview == null)
                    {
                        this.m_ZoomablePreview           = new ZoomableArea(true);
                        this.m_ZoomablePreview.hRangeMin = 0f;
                        this.m_ZoomablePreview.vRangeMin = 0f;
                        this.m_ZoomablePreview.hRangeMax = 1f;
                        this.m_ZoomablePreview.vRangeMax = 1f;
                        this.m_ZoomablePreview.SetShownHRange(0f, 1f);
                        this.m_ZoomablePreview.SetShownVRange(0f, 1f);
                        this.m_ZoomablePreview.uniformScale    = true;
                        this.m_ZoomablePreview.scaleWithWindow = true;
                    }
                    GUI.Box(r, string.Empty, "PreBackground");
                    Rect position = new Rect(r);
                    position.y++;
                    position.height = 18f;
                    GUI.Box(position, string.Empty, EditorStyles.toolbar);
                    Rect rect2 = new Rect(r);
                    rect2.y++;
                    rect2.height = 18f;
                    rect2.width  = 120f;
                    rect3        = new Rect(r)
                    {
                        yMin  = rect3.yMin + rect2.height,
                        yMax  = rect3.yMax - 14f,
                        width = rect3.width - 11f
                    };
                    int index = Array.IndexOf <GUIContent>(kObjectPreviewTextureOptions, this.m_SelectedObjectPreviewTexture);
                    if (index < 0)
                    {
                        index = 0;
                    }
                    index = EditorGUI.Popup(rect2, index, kObjectPreviewTextureOptions, EditorStyles.toolbarPopup);
                    if (index >= kObjectPreviewTextureOptions.Length)
                    {
                        index = 0;
                    }
                    this.m_SelectedObjectPreviewTexture = kObjectPreviewTextureOptions[index];
                    LightmapType       lightmapType = ((this.kObjectPreviewTextureTypes[index] != GITextureType.Baked) && (this.kObjectPreviewTextureTypes[index] != GITextureType.BakedDirectional)) ? LightmapType.DynamicLightmap : LightmapType.StaticLightmap;
                    SerializedProperty property     = new SerializedObject(LightmapEditorSettings.GetLightmapSettings()).FindProperty("m_LightmapsMode");
                    bool flag = ((this.kObjectPreviewTextureTypes[index] == GITextureType.Baked) || (this.kObjectPreviewTextureTypes[index] == GITextureType.BakedDirectional)) && (property.intValue == 2);
                    if (flag)
                    {
                        GUIContent content = GUIContent.Temp("Indirect");
                        Rect       rect4   = rect2;
                        rect4.x    += rect2.width;
                        rect4.width = EditorStyles.toolbarButton.CalcSize(content).x;
                        this.m_HasSeparateIndirectUV = GUI.Toggle(rect4, this.m_HasSeparateIndirectUV, content.text, EditorStyles.toolbarButton);
                    }
                    switch (Event.current.type)
                    {
                    case EventType.ValidateCommand:
                    case EventType.ExecuteCommand:
                        if (Event.current.commandName == "FrameSelected")
                        {
                            Rect    rect5;
                            Vector4 lightmapTilingOffset = LightmapVisualizationUtility.GetLightmapTilingOffset(lightmapType);
                            Vector2 lhs     = new Vector2(lightmapTilingOffset.z, lightmapTilingOffset.w);
                            Vector2 vector3 = lhs + new Vector2(lightmapTilingOffset.x, lightmapTilingOffset.y);
                            lhs     = Vector2.Max(lhs, Vector2.zero);
                            vector3 = Vector2.Min(vector3, Vector2.one);
                            float num3 = 1f - lhs.y;
                            lhs.y     = 1f - vector3.y;
                            vector3.y = num3;
                            rect5     = new Rect(lhs.x, lhs.y, vector3.x - lhs.x, vector3.y - lhs.y)
                            {
                                x = rect5.x - (Mathf.Clamp(rect5.height - rect5.width, 0f, float.MaxValue) / 2f),
                                y = rect5.y - (Mathf.Clamp(rect5.width - rect5.height, 0f, float.MaxValue) / 2f)
                            };
                            float num5 = Mathf.Max(rect5.width, rect5.height);
                            rect5.height = num5;
                            rect5.width  = num5;
                            if (flag && this.m_HasSeparateIndirectUV)
                            {
                                rect5.x += 0.5f;
                            }
                            this.m_ZoomablePreview.shownArea = rect5;
                            Event.current.Use();
                        }
                        break;

                    case EventType.Repaint:
                    {
                        Texture2D texture = list[index];
                        if ((texture != null) && (Event.current.type == EventType.Repaint))
                        {
                            Rect rect7;
                            Rect rect8;
                            Rect rect = new Rect(0f, 0f, (float)texture.width, (float)texture.height);
                            rect  = this.ResizeRectToFit(rect, rect3);
                            rect  = this.CenterToRect(rect, rect3);
                            rect  = this.ScaleRectByZoomableArea(rect, this.m_ZoomablePreview);
                            rect7 = new Rect(rect)
                            {
                                x = rect7.x + 3f,
                                y = rect7.y + (rect3.y + 20f)
                            };
                            rect8 = new Rect(rect3)
                            {
                                y = rect8.y + (rect2.height + 3f)
                            };
                            float num4 = rect8.y - 14f;
                            rect7.y -= num4;
                            rect8.y -= num4;
                            UnityEngine.FilterMode filterMode = texture.filterMode;
                            texture.filterMode = UnityEngine.FilterMode.Point;
                            GITextureType textureType    = this.kObjectPreviewTextureTypes[index];
                            bool          drawSpecularUV = flag && this.m_HasSeparateIndirectUV;
                            LightmapVisualizationUtility.DrawTextureWithUVOverlay(texture, Selection.activeGameObject, rect8, rect7, textureType, drawSpecularUV);
                            texture.filterMode = filterMode;
                        }
                        break;
                    }
                    }
                    if (this.m_PreviousSelection != Selection.activeInstanceID)
                    {
                        this.m_PreviousSelection = Selection.activeInstanceID;
                        this.m_ZoomablePreview.SetShownHRange(0f, 1f);
                        this.m_ZoomablePreview.SetShownVRange(0f, 1f);
                    }
                    rect9 = new Rect(r)
                    {
                        yMin = rect9.yMin + rect2.height
                    };
                    this.m_ZoomablePreview.rect = rect9;
                    this.m_ZoomablePreview.BeginViewGUI();
                    this.m_ZoomablePreview.EndViewGUI();
                    GUILayoutUtility.GetRect(r.width, r.height);
                }
            }
        }
示例#2
0
        public void ObjectPreview(Rect r)
        {
            if (r.height <= 0f)
            {
                return;
            }
            if (LightingWindowObjectTab.s_Styles == null)
            {
                LightingWindowObjectTab.s_Styles = new LightingWindowObjectTab.Styles();
            }
            List <Texture2D> list = new List <Texture2D>();

            GITextureType[] array = this.kObjectPreviewTextureTypes;
            for (int i = 0; i < array.Length; i++)
            {
                GITextureType textureType = array[i];
                list.Add(LightmapVisualizationUtility.GetGITexture(textureType));
            }
            if (list.Count == 0)
            {
                return;
            }
            if (this.m_ZoomablePreview == null)
            {
                this.m_ZoomablePreview           = new ZoomableArea(true);
                this.m_ZoomablePreview.hRangeMin = 0f;
                this.m_ZoomablePreview.vRangeMin = 0f;
                this.m_ZoomablePreview.hRangeMax = 1f;
                this.m_ZoomablePreview.vRangeMax = 1f;
                this.m_ZoomablePreview.SetShownHRange(0f, 1f);
                this.m_ZoomablePreview.SetShownVRange(0f, 1f);
                this.m_ZoomablePreview.uniformScale    = true;
                this.m_ZoomablePreview.scaleWithWindow = true;
            }
            GUI.Box(r, string.Empty, "PreBackground");
            Rect position = new Rect(r);

            position.y     += 1f;
            position.height = 18f;
            GUI.Box(position, string.Empty, EditorStyles.toolbar);
            Rect rect = new Rect(r);

            rect.y     += 1f;
            rect.height = 18f;
            rect.width  = 120f;
            Rect rect2 = new Rect(r);

            rect2.yMin  += rect.height;
            rect2.yMax  -= 14f;
            rect2.width -= 11f;
            int num = Array.IndexOf <GUIContent>(LightingWindowObjectTab.kObjectPreviewTextureOptions, this.m_SelectedObjectPreviewTexture);

            if (num < 0)
            {
                num = 0;
            }
            num = EditorGUI.Popup(rect, num, LightingWindowObjectTab.kObjectPreviewTextureOptions, EditorStyles.toolbarPopup);
            if (num >= LightingWindowObjectTab.kObjectPreviewTextureOptions.Length)
            {
                num = 0;
            }
            this.m_SelectedObjectPreviewTexture = LightingWindowObjectTab.kObjectPreviewTextureOptions[num];
            LightmapType       lightmapType       = (this.kObjectPreviewTextureTypes[num] != GITextureType.Baked && this.kObjectPreviewTextureTypes[num] != GITextureType.BakedDirectional) ? LightmapType.DynamicLightmap : LightmapType.StaticLightmap;
            SerializedObject   serializedObject   = new SerializedObject(LightmapEditorSettings.GetLightmapSettings());
            SerializedProperty serializedProperty = serializedObject.FindProperty("m_LightmapsMode");
            bool flag = (this.kObjectPreviewTextureTypes[num] == GITextureType.Baked || this.kObjectPreviewTextureTypes[num] == GITextureType.BakedDirectional) && serializedProperty.intValue == 2;

            if (flag)
            {
                GUIContent gUIContent = GUIContent.Temp("Indirect");
                Rect       position2  = rect;
                position2.x    += rect.width;
                position2.width = EditorStyles.toolbarButton.CalcSize(gUIContent).x;
                this.m_HasSeparateIndirectUV = GUI.Toggle(position2, this.m_HasSeparateIndirectUV, gUIContent.text, EditorStyles.toolbarButton);
            }
            Event     current = Event.current;
            EventType type    = current.type;

            if (type != EventType.ValidateCommand && type != EventType.ExecuteCommand)
            {
                if (type == EventType.Repaint)
                {
                    Texture2D texture2D = list[num];
                    if (texture2D && Event.current.type == EventType.Repaint)
                    {
                        Rect rect3 = new Rect(0f, 0f, (float)texture2D.width, (float)texture2D.height);
                        rect3 = this.ResizeRectToFit(rect3, rect2);
                        rect3 = this.CenterToRect(rect3, rect2);
                        rect3 = this.ScaleRectByZoomableArea(rect3, this.m_ZoomablePreview);
                        Rect position3 = new Rect(rect3);
                        position3.x += 3f;
                        position3.y += rect2.y + 20f;
                        Rect drawableArea = new Rect(rect2);
                        drawableArea.y += rect.height + 3f;
                        float num2 = drawableArea.y - 14f;
                        position3.y         -= num2;
                        drawableArea.y      -= num2;
                        texture2D.filterMode = FilterMode.Point;
                        GITextureType textureType2   = this.kObjectPreviewTextureTypes[num];
                        bool          drawSpecularUV = flag && this.m_HasSeparateIndirectUV;
                        LightmapVisualizationUtility.DrawTextureWithUVOverlay(texture2D, Selection.activeGameObject, drawableArea, position3, textureType2, drawSpecularUV);
                    }
                }
            }
            else
            {
                if (Event.current.commandName == "FrameSelected")
                {
                    Vector4 lightmapTilingOffset = LightmapVisualizationUtility.GetLightmapTilingOffset(lightmapType);
                    Vector2 vector = new Vector2(lightmapTilingOffset.z, lightmapTilingOffset.w);
                    Vector2 lhs    = vector + new Vector2(lightmapTilingOffset.x, lightmapTilingOffset.y);
                    vector = Vector2.Max(vector, Vector2.zero);
                    lhs    = Vector2.Min(lhs, Vector2.one);
                    float y = 1f - vector.y;
                    vector.y = 1f - lhs.y;
                    lhs.y    = y;
                    Rect shownArea = new Rect(vector.x, vector.y, lhs.x - vector.x, lhs.y - vector.y);
                    shownArea.x -= Mathf.Clamp(shownArea.height - shownArea.width, 0f, 3.40282347E+38f) / 2f;
                    shownArea.y -= Mathf.Clamp(shownArea.width - shownArea.height, 0f, 3.40282347E+38f) / 2f;
                    float num3 = Mathf.Max(shownArea.width, shownArea.height);
                    shownArea.height = num3;
                    shownArea.width  = num3;
                    if (flag && this.m_HasSeparateIndirectUV)
                    {
                        shownArea.x += 0.5f;
                    }
                    this.m_ZoomablePreview.shownArea = shownArea;
                    Event.current.Use();
                }
            }
            if (this.m_PreviousSelection != Selection.activeInstanceID)
            {
                this.m_PreviousSelection = Selection.activeInstanceID;
                this.m_ZoomablePreview.SetShownHRange(0f, 1f);
                this.m_ZoomablePreview.SetShownVRange(0f, 1f);
            }
            Rect rect4 = new Rect(r);

            rect4.yMin += rect.height;
            this.m_ZoomablePreview.rect = rect4;
            this.m_ZoomablePreview.BeginViewGUI();
            this.m_ZoomablePreview.EndViewGUI();
            GUILayoutUtility.GetRect(r.width, r.height);
        }
示例#3
0
 public void ObjectPreview(Rect r)
 {
     if (r.height > 0f)
     {
         List <Texture2D> list  = new List <Texture2D>();
         GITextureType[]  array = this.kObjectPreviewTextureTypes;
         for (int i = 0; i < array.Length; i++)
         {
             GITextureType textureType = array[i];
             list.Add(LightmapVisualizationUtility.GetGITexture(textureType));
         }
         if (list.Count != 0)
         {
             if (this.m_ZoomablePreview == null)
             {
                 this.m_ZoomablePreview           = new ZoomableArea(true);
                 this.m_ZoomablePreview.hRangeMin = 0f;
                 this.m_ZoomablePreview.vRangeMin = 0f;
                 this.m_ZoomablePreview.hRangeMax = 1f;
                 this.m_ZoomablePreview.vRangeMax = 1f;
                 this.m_ZoomablePreview.SetShownHRange(0f, 1f);
                 this.m_ZoomablePreview.SetShownVRange(0f, 1f);
                 this.m_ZoomablePreview.uniformScale    = true;
                 this.m_ZoomablePreview.scaleWithWindow = true;
             }
             GUI.Box(r, "", "PreBackground");
             Rect position = new Rect(r);
             position.y     += 1f;
             position.height = 18f;
             GUI.Box(position, "", EditorStyles.toolbar);
             Rect position2 = new Rect(r);
             position2.y     += 1f;
             position2.height = 18f;
             position2.width  = 120f;
             Rect rect = new Rect(r);
             rect.yMin  += position2.height;
             rect.yMax  -= 14f;
             rect.width -= 11f;
             int num = Array.IndexOf <GUIContent>(LightingWindowObjectTab.kObjectPreviewTextureOptions, this.m_SelectedObjectPreviewTexture);
             if (num < 0)
             {
                 num = 0;
             }
             num = EditorGUI.Popup(position2, num, LightingWindowObjectTab.kObjectPreviewTextureOptions, EditorStyles.toolbarPopup);
             if (num >= LightingWindowObjectTab.kObjectPreviewTextureOptions.Length)
             {
                 num = 0;
             }
             this.m_SelectedObjectPreviewTexture = LightingWindowObjectTab.kObjectPreviewTextureOptions[num];
             LightmapType lightmapType = (this.kObjectPreviewTextureTypes[num] != GITextureType.BakedShadowMask && this.kObjectPreviewTextureTypes[num] != GITextureType.Baked && this.kObjectPreviewTextureTypes[num] != GITextureType.BakedDirectional && this.kObjectPreviewTextureTypes[num] != GITextureType.BakedCharting) ? LightmapType.DynamicLightmap : LightmapType.StaticLightmap;
             Event        current      = Event.current;
             EventType    type         = current.type;
             if (type != EventType.ValidateCommand && type != EventType.ExecuteCommand)
             {
                 if (type == EventType.Repaint)
                 {
                     Texture2D texture2D = list[num];
                     if (texture2D && Event.current.type == EventType.Repaint)
                     {
                         Rect rect2 = new Rect(0f, 0f, (float)texture2D.width, (float)texture2D.height);
                         rect2 = this.ResizeRectToFit(rect2, rect);
                         rect2 = this.CenterToRect(rect2, rect);
                         rect2 = this.ScaleRectByZoomableArea(rect2, this.m_ZoomablePreview);
                         Rect position3 = new Rect(rect2);
                         position3.x += 3f;
                         position3.y += rect.y + 20f;
                         Rect drawableArea = new Rect(rect);
                         drawableArea.y += position2.height + 3f;
                         float num2 = drawableArea.y - 14f;
                         position3.y    -= num2;
                         drawableArea.y -= num2;
                         FilterMode filterMode = texture2D.filterMode;
                         texture2D.filterMode = FilterMode.Point;
                         GITextureType textureType2 = this.kObjectPreviewTextureTypes[num];
                         LightmapVisualizationUtility.DrawTextureWithUVOverlay(texture2D, Selection.activeGameObject, drawableArea, position3, textureType2);
                         texture2D.filterMode = filterMode;
                     }
                 }
             }
             else if (Event.current.commandName == "FrameSelected")
             {
                 Vector4 lightmapTilingOffset = LightmapVisualizationUtility.GetLightmapTilingOffset(lightmapType);
                 Vector2 vector = new Vector2(lightmapTilingOffset.z, lightmapTilingOffset.w);
                 Vector2 lhs    = vector + new Vector2(lightmapTilingOffset.x, lightmapTilingOffset.y);
                 vector = Vector2.Max(vector, Vector2.zero);
                 lhs    = Vector2.Min(lhs, Vector2.one);
                 float y = 1f - vector.y;
                 vector.y = 1f - lhs.y;
                 lhs.y    = y;
                 Rect shownArea = new Rect(vector.x, vector.y, lhs.x - vector.x, lhs.y - vector.y);
                 shownArea.x -= Mathf.Clamp(shownArea.height - shownArea.width, 0f, 3.40282347E+38f) / 2f;
                 shownArea.y -= Mathf.Clamp(shownArea.width - shownArea.height, 0f, 3.40282347E+38f) / 2f;
                 float num3 = Mathf.Max(shownArea.width, shownArea.height);
                 shownArea.height = num3;
                 shownArea.width  = num3;
                 this.m_ZoomablePreview.shownArea = shownArea;
                 Event.current.Use();
             }
             if (this.m_PreviousSelection != Selection.activeInstanceID)
             {
                 this.m_PreviousSelection = Selection.activeInstanceID;
                 this.m_ZoomablePreview.SetShownHRange(0f, 1f);
                 this.m_ZoomablePreview.SetShownVRange(0f, 1f);
             }
             Rect rect3 = new Rect(r);
             rect3.yMin += position2.height;
             this.m_ZoomablePreview.rect = rect3;
             this.m_ZoomablePreview.BeginViewGUI();
             this.m_ZoomablePreview.EndViewGUI();
             GUILayoutUtility.GetRect(r.width, r.height);
         }
     }
 }
        public void ObjectPreview(Rect r)
        {
            if ((double)r.height <= 0.0)
            {
                return;
            }
            if (LightingWindowObjectTab.s_Styles == null)
            {
                LightingWindowObjectTab.s_Styles = new LightingWindowObjectTab.Styles();
            }
            List <Texture2D> texture2DList = new List <Texture2D>();

            foreach (GITextureType previewTextureType in this.kObjectPreviewTextureTypes)
            {
                texture2DList.Add(LightmapVisualizationUtility.GetGITexture(previewTextureType));
            }
            if (texture2DList.Count == 0)
            {
                return;
            }
            if (this.m_ZoomablePreview == null)
            {
                this.m_ZoomablePreview           = new ZoomableArea(true);
                this.m_ZoomablePreview.hRangeMin = 0.0f;
                this.m_ZoomablePreview.vRangeMin = 0.0f;
                this.m_ZoomablePreview.hRangeMax = 1f;
                this.m_ZoomablePreview.vRangeMax = 1f;
                this.m_ZoomablePreview.SetShownHRange(0.0f, 1f);
                this.m_ZoomablePreview.SetShownVRange(0.0f, 1f);
                this.m_ZoomablePreview.uniformScale    = true;
                this.m_ZoomablePreview.scaleWithWindow = true;
            }
            GUI.Box(r, string.Empty, (GUIStyle)"PreBackground");
            Rect position1 = new Rect(r);

            ++position1.y;
            position1.height = 18f;
            GUI.Box(position1, string.Empty, EditorStyles.toolbar);
            Rect position2 = new Rect(r);

            ++position2.y;
            position2.height = 18f;
            position2.width  = 120f;
            Rect rect1 = new Rect(r);

            rect1.yMin  += position2.height;
            rect1.yMax  -= 14f;
            rect1.width -= 11f;
            int selectedIndex = Array.IndexOf <GUIContent>(LightingWindowObjectTab.kObjectPreviewTextureOptions, this.m_SelectedObjectPreviewTexture);

            if (selectedIndex < 0)
            {
                selectedIndex = 0;
            }
            int index = EditorGUI.Popup(position2, selectedIndex, LightingWindowObjectTab.kObjectPreviewTextureOptions, EditorStyles.toolbarPopup);

            if (index >= LightingWindowObjectTab.kObjectPreviewTextureOptions.Length)
            {
                index = 0;
            }
            this.m_SelectedObjectPreviewTexture = LightingWindowObjectTab.kObjectPreviewTextureOptions[index];
            LightmapType       lightmapType = this.kObjectPreviewTextureTypes[index] == GITextureType.Baked || this.kObjectPreviewTextureTypes[index] == GITextureType.BakedDirectional ? LightmapType.StaticLightmap : LightmapType.DynamicLightmap;
            SerializedProperty property     = new SerializedObject(LightmapEditorSettings.GetLightmapSettings()).FindProperty("m_LightmapsMode");
            bool flag = (this.kObjectPreviewTextureTypes[index] == GITextureType.Baked || this.kObjectPreviewTextureTypes[index] == GITextureType.BakedDirectional) && property.intValue == 2;

            if (flag)
            {
                GUIContent content   = GUIContent.Temp("Indirect");
                Rect       position3 = position2;
                position3.x    += position2.width;
                position3.width = EditorStyles.toolbarButton.CalcSize(content).x;
                this.m_HasSeparateIndirectUV = GUI.Toggle(position3, this.m_HasSeparateIndirectUV, content.text, EditorStyles.toolbarButton);
            }
            switch (Event.current.type)
            {
            case EventType.ValidateCommand:
            case EventType.ExecuteCommand:
                if (Event.current.commandName == "FrameSelected")
                {
                    Vector4 lightmapTilingOffset = LightmapVisualizationUtility.GetLightmapTilingOffset(lightmapType);
                    Vector2 lhs1 = new Vector2(lightmapTilingOffset.z, lightmapTilingOffset.w);
                    Vector2 lhs2 = lhs1 + new Vector2(lightmapTilingOffset.x, lightmapTilingOffset.y);
                    lhs1 = Vector2.Max(lhs1, Vector2.zero);
                    Vector2 vector2 = Vector2.Min(lhs2, Vector2.one);
                    float   num1    = 1f - lhs1.y;
                    lhs1.y    = 1f - vector2.y;
                    vector2.y = num1;
                    Rect rect2 = new Rect(lhs1.x, lhs1.y, vector2.x - lhs1.x, vector2.y - lhs1.y);
                    rect2.x -= Mathf.Clamp(rect2.height - rect2.width, 0.0f, float.MaxValue) / 2f;
                    rect2.y -= Mathf.Clamp(rect2.width - rect2.height, 0.0f, float.MaxValue) / 2f;
                    // ISSUE: explicit reference operation
                    // ISSUE: variable of a reference type
                    Rect& local = @rect2;
                    float num2  = Mathf.Max(rect2.width, rect2.height);
                    rect2.height = num2;
                    double num3 = (double)num2;
                    // ISSUE: explicit reference operation
                    (^ local).width = (float)num3;
                    if (flag && this.m_HasSeparateIndirectUV)
                    {
                        rect2.x += 0.5f;
                    }
                    this.m_ZoomablePreview.shownArea = rect2;
                    Event.current.Use();
                    break;
                }
                break;

            case EventType.Repaint:
                Texture2D texture = texture2DList[index];
                if ((bool)((UnityEngine.Object)texture) && Event.current.type == EventType.Repaint)
                {
                    Rect position3 = new Rect(this.ScaleRectByZoomableArea(this.CenterToRect(this.ResizeRectToFit(new Rect(0.0f, 0.0f, (float)texture.width, (float)texture.height), rect1), rect1), this.m_ZoomablePreview));
                    position3.x += 3f;
                    position3.y += rect1.y + 20f;
                    Rect drawableArea = new Rect(rect1);
                    drawableArea.y += position2.height + 3f;
                    float num = drawableArea.y - 14f;
                    position3.y    -= num;
                    drawableArea.y -= num;
                    UnityEngine.FilterMode filterMode = texture.filterMode;
                    texture.filterMode = UnityEngine.FilterMode.Point;
                    GITextureType previewTextureType = this.kObjectPreviewTextureTypes[index];
                    bool          drawSpecularUV     = flag && this.m_HasSeparateIndirectUV;
                    LightmapVisualizationUtility.DrawTextureWithUVOverlay(texture, Selection.activeGameObject, drawableArea, position3, previewTextureType, drawSpecularUV);
                    texture.filterMode = filterMode;
                    break;
                }
                break;
            }
            if (this.m_PreviousSelection != Selection.activeInstanceID)
            {
                this.m_PreviousSelection = Selection.activeInstanceID;
                this.m_ZoomablePreview.SetShownHRange(0.0f, 1f);
                this.m_ZoomablePreview.SetShownVRange(0.0f, 1f);
            }
            Rect rect3 = new Rect(r);

            rect3.yMin += position2.height;
            this.m_ZoomablePreview.rect = rect3;
            this.m_ZoomablePreview.BeginViewGUI();
            this.m_ZoomablePreview.EndViewGUI();
            GUILayoutUtility.GetRect(r.width, r.height);
        }