UnityEditor.MaterialEditor.DoRenderPreview C# (CSharp) Method

DoRenderPreview() private method

private DoRenderPreview ( ) : void
return void
        private void DoRenderPreview()
        {
            if ((this.m_PreviewUtility.m_RenderTexture.width > 0) && (this.m_PreviewUtility.m_RenderTexture.height > 0))
            {
                Color color;
                Material target = this.target as Material;
                PreviewType previewType = GetPreviewType(target);
                this.m_PreviewUtility.m_Camera.transform.position = (Vector3) (-Vector3.forward * 5f);
                this.m_PreviewUtility.m_Camera.transform.rotation = Quaternion.identity;
                if (this.m_LightMode == 0)
                {
                    this.m_PreviewUtility.m_Light[0].intensity = 1f;
                    this.m_PreviewUtility.m_Light[0].transform.rotation = Quaternion.Euler(30f, 30f, 0f);
                    this.m_PreviewUtility.m_Light[1].intensity = 0f;
                    color = new Color(0.2f, 0.2f, 0.2f, 0f);
                }
                else
                {
                    this.m_PreviewUtility.m_Light[0].intensity = 1f;
                    this.m_PreviewUtility.m_Light[0].transform.rotation = Quaternion.Euler(50f, 50f, 0f);
                    this.m_PreviewUtility.m_Light[1].intensity = 1f;
                    color = new Color(0.2f, 0.2f, 0.2f, 0f);
                }
                InternalEditorUtility.SetCustomLighting(this.m_PreviewUtility.m_Light, color);
                Quaternion identity = Quaternion.identity;
                if (DoesPreviewAllowRotation(previewType))
                {
                    identity = Quaternion.Euler(this.m_PreviewDir.y, 0f, 0f) * Quaternion.Euler(0f, this.m_PreviewDir.x, 0f);
                }
                Mesh mesh = s_Meshes[this.m_SelectedMesh];
                switch (previewType)
                {
                    case PreviewType.Mesh:
                        this.m_PreviewUtility.m_Camera.transform.position = (Vector3) (Quaternion.Inverse(identity) * this.m_PreviewUtility.m_Camera.transform.position);
                        this.m_PreviewUtility.m_Camera.transform.LookAt(Vector3.zero);
                        identity = Quaternion.identity;
                        break;

                    case PreviewType.Plane:
                        mesh = s_PlaneMesh;
                        break;

                    case PreviewType.Skybox:
                        mesh = null;
                        this.m_PreviewUtility.m_Camera.transform.rotation = Quaternion.Inverse(identity);
                        this.m_PreviewUtility.m_Camera.fieldOfView = 120f;
                        break;
                }
                if (mesh != null)
                {
                    this.m_PreviewUtility.DrawMesh(mesh, Vector3.zero, identity, target, 0, null, this.m_ReflectionProbePicker.Target);
                }
                bool fog = RenderSettings.fog;
                Unsupported.SetRenderSettingsUseFogNoDirty(false);
                this.m_PreviewUtility.m_Camera.Render();
                if (previewType == PreviewType.Skybox)
                {
                    GL.sRGBWrite = QualitySettings.activeColorSpace == ColorSpace.Linear;
                    InternalEditorUtility.DrawSkyboxMaterial(target, this.m_PreviewUtility.m_Camera);
                    GL.sRGBWrite = false;
                }
                Unsupported.SetRenderSettingsUseFogNoDirty(fog);
                InternalEditorUtility.RemoveCustomLighting();
            }
        }
MaterialEditor