private void OnGUISetShader() { DrawMaterialSettings(); if (GUILayout.Button("Set Shader")) { RecordSetShaderAnalytics(); RecordShadingAnalytics(); Material mat = GGriffinSettings.Instance.WizardSettings.GetClonedMaterial(); if (BulkSetShader) { GCommon.ForEachTerrain( BulkSetShaderGroupId, (t) => { if (t.TerrainData == null) { return; } t.TerrainData.Shading.MaterialToRender.shader = mat.shader; t.TerrainData.Shading.UpdateMaterials(); t.TerrainData.SetDirty(GTerrainData.DirtyFlags.Shading); }); } else { terrainData.Shading.MaterialToRender.shader = mat.shader; terrainData.Shading.UpdateMaterials(); } GUtilities.DestroyObject(mat); Close(); } }