Exemple #1
0
        public static bool PreviewShaderToggle_PEGI(this PlaytimePainter painter)
        {
            bool changed = false;

            if (painter.IsTerrainHeightTexture())
            {
                Texture tht = painter.terrainHeightTexture;

                if (tht != null)
                {
                    if ((!painter.IsOriginalShader) && (pegi.Click(icon.PreviewShader.getIcon(), "Applies changes made on Texture to Actual physical Unity Terrain.", 45)))
                    {
                        painter.Preview_To_UnityTerrain();
                        painter.Unity_To_Preview();

                        painter.MatDta.usePreviewShader = false;
                        painter.SetOriginalShaderOnThis();

                        changed = true;
                    }
                    PainterCamera.Data.brushConfig.MaskSet(BrushMask.A, true);

                    if (tht.GetImgData() != null)
                    {
                        if ((painter.IsOriginalShader) && (pegi.Click(icon.OriginalShader.getIcon(), "Applies changes made in Unity terrain Editor", 45)))
                        {
                            painter.Unity_To_Preview();

                            painter.SetPreviewShader();

                            changed = true;
                        }
                    }
                }
            }
            else
            {
                if ((painter.IsOriginalShader) && (pegi.Click(icon.OriginalShader.getIcon(), "Switch To Preview Shader", 45)))
                {
                    painter.SetPreviewShader();
                    changed = true;
                }

                if ((!painter.IsOriginalShader) && (pegi.Click(icon.PreviewShader.getIcon(), "Return to Original Shader", 45)))
                {
                    painter.MatDta.usePreviewShader = false;
                    painter.SetOriginalShaderOnThis();
                    changed = true;
                }
            }
            return(changed);
        }