public void EditorGeometryUpdate() { if (ObjectsNotNull()) if (fairingVisible != engineFairing.jettisonTransform.gameObject.activeSelf) { geoModule.RebuildAllMeshData(); fairingVisible = !fairingVisible; } }
public void EditorGeometryUpdate() { if (lastAttachState != part.attachState || lastTarget != part.target || !EditorLogic.SortedShipList.Contains(part.target)) { geoModule.RebuildAllMeshData(); lastAttachState = part.attachState; lastTarget = part.target; } }
public void EditorGeometryUpdate() { if (lastAttachState == part.attachState && lastTarget == part.target && EditorLogic.SortedShipList.Contains(part.target)) { return; } geoModule.RebuildAllMeshData(); lastAttachState = part.attachState; lastTarget = part.target; }
public void EditorGeometryUpdate() { List <FairingPanel> panels = fairing.Panels; bool rebuildMesh = false; rebuildMesh = prevPanelBounds.Count == panels.Count; //if bounds count doesn't equal panels count, the number of panels changed if (rebuildMesh) { prevPanelBounds.Clear(); } for (int i = 0; i < panels.Count; i++) //set them back to where they started to prevent voxelization errors { panels[i].SetExplodedView(0); Bounds panelBounds = panels[i].GetBounds(); if (i >= prevPanelBounds.Count) //set new panel bounds { rebuildMesh = true; prevPanelBounds.Add(panelBounds); } else if (panelBounds != prevPanelBounds[i]) { rebuildMesh = true; prevPanelBounds.Add(panelBounds); } } if (rebuildMesh) { geoModule.RebuildAllMeshData(); } }
public void EditorGeometryUpdate() { Transform t = engineFairing.jettisonTransform; if (t == null) { return; } GameObject o = t.gameObject; if (o != null) { if (fairingVisible != engineFairing.jettisonTransform.gameObject.activeSelf) { geoModule.RebuildAllMeshData(); fairingVisible = !fairingVisible; } } }
public void EditorGeometryUpdate() { List <FairingPanel> panels = fairing.Panels; if (panels == null) { return; } //if bounds count doesn't equal panels count, the number of panels changed bool rebuildMesh = prevPanelBounds.Count == panels.Count; if (rebuildMesh) { prevPanelBounds.Clear(); } //set them back to where they started to prevent voxelization errors for (int i = 0; i < panels.Count; i++) { FairingPanel p = panels[i]; var panelBounds = new Bounds(); if (p != null) { p.SetExplodedView(0); p.SetOpacity(1); p.SetTgtExplodedView(0); p.SetTgtOpacity(1); if (p.ColliderContainer) { p.ColliderContainer.SetActive(true); } panelBounds = p.GetBounds(); } if (i >= prevPanelBounds.Count) //set new panel bounds { rebuildMesh = true; prevPanelBounds.Add(panelBounds); } else if (panelBounds != prevPanelBounds[i]) { rebuildMesh = true; prevPanelBounds[i] = panelBounds; } } if (rebuildMesh) { geoModule.RebuildAllMeshData(); } }
private void UpdateGeometryModule(ConstructionEventType type, Part p) { GeometryPartModule g = p.GetComponent <GeometryPartModule>(); if (g != null && g.Ready) { if (type == ConstructionEventType.Unknown) { g.RebuildAllMeshData(); } else { g.EditorUpdate(); } } }
private static void UpdateGeometryModule(ConstructionEventType type, Part p) { if (p is null) { return; } GeometryPartModule g = p.GetComponent <GeometryPartModule>(); if (g == null || !g.Ready) { return; } if (type == ConstructionEventType.Unknown) { g.RebuildAllMeshData(); } else { g.EditorUpdate(); } }