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); }