diff --git a/Distribution/GameData/ConformalDecals/Plugins/ConformalDecals.dll b/Distribution/GameData/ConformalDecals/Plugins/ConformalDecals.dll index 8bc5936..2b5d460 100644 Binary files a/Distribution/GameData/ConformalDecals/Plugins/ConformalDecals.dll and b/Distribution/GameData/ConformalDecals/Plugins/ConformalDecals.dll differ diff --git a/Source/ConformalDecals/ModuleConformalDecal.cs b/Source/ConformalDecals/ModuleConformalDecal.cs index f6e01fb..0ecffe0 100644 --- a/Source/ConformalDecals/ModuleConformalDecal.cs +++ b/Source/ConformalDecals/ModuleConformalDecal.cs @@ -54,7 +54,7 @@ namespace ConformalDecals { [KSPField] public Vector2 opacityRange = new Vector2(0, 1); [KSPField] public bool cutoffAdjustable = true; - [KSPField] public float defaultCutoff = 0; + [KSPField] public float defaultCutoff; [KSPField] public Vector2 cutoffRange = new Vector2(0, 1); [KSPField] public Rect tileRect = new Rect(-1, -1, 0, 0); @@ -308,13 +308,22 @@ namespace ConformalDecals { // scale or depth values have been changed, so update scale // and update projection matrices if attached UpdateScale(); - UpdateMaterials(); - if (_isAttached) { } + + foreach (var counterpart in part.symmetryCounterparts) { + var decal = counterpart.GetComponent(); + decal.UpdateScale(); + } } protected void OnMaterialTweakEvent(BaseField field, object obj) { materialProperties.SetOpacity(opacity); materialProperties.SetCutoff(cutoff); + + foreach (var counterpart in part.symmetryCounterparts) { + var decal = counterpart.GetComponent(); + decal.materialProperties.SetOpacity(opacity); + decal.materialProperties.SetCutoff(cutoff); + } } protected void OnVariantApplied(Part eventPart, PartVariant variant) {