public void ApplyToPoly(ref PolyHydra poly, AppearancePresets aPresets) { poly.PolyType = PolyType; poly.BypassOps = BypassOps; poly.TwoSided = TwoSided; poly.ConwayOperators = new List <PolyHydra.ConwayOperator>(); poly.GridType = GridType; poly.PrismP = PrismP; poly.PrismQ = PrismQ; poly.PresetName = Name; aPresets.ApplyPresetToPoly(AppearancePresetName); for (var index = 0; index < Ops.Length; index++) { var presetOp = Ops[index]; var op = new PolyHydra.ConwayOperator { opType = presetOp.OpType, faceSelections = presetOp.FaceSelections, amount = presetOp.Amount, randomize = presetOp.Randomize, disabled = presetOp.Disabled }; poly.ConwayOperators.Add(op); } }
public void CreateFromPoly(string presetName, PolyHydra poly) { Name = presetName; AppearancePresetName = poly.APresetName; PolyType = poly.PolyType; GridType = poly.GridType; BypassOps = poly.BypassOps; PrismP = poly.PrismP; PrismQ = poly.PrismP; TwoSided = poly.TwoSided; Ops = new Op[poly.ConwayOperators.Count]; for (var index = 0; index < poly.ConwayOperators.Count; index++) { var polyOp = poly.ConwayOperators[index]; var op = new Op { OpType = polyOp.opType, FaceSelections = polyOp.faceSelections, Amount = polyOp.amount, Randomize = polyOp.randomize, Disabled = polyOp.disabled }; Ops[index] = op; } }
public override void OnInspectorGUI() { GUI.enabled = EditorApplication.isPlaying; PolyHydra ui = (PolyHydra)target; if (GUILayout.Button("Sync UI to Inspector")) { ui.polyUI.InitUI(); } GUI.enabled = true; DrawDefaultInspector(); }
public void ApplyToPoly(ref PolyHydra poly, GameObject LightsParent, Camera CurrentCamera) { poly.gameObject.GetComponent <MeshRenderer>().material = PolyhedronMaterial; poly.ColorMethod = PolyhedronColorMethod; poly.APresetName = Name; CurrentCamera.backgroundColor = CameraBackgroundColor; if (SkyboxMaterial != null) { RenderSettings.ambientMode = AmbientMode.Skybox; RenderSettings.skybox = SkyboxMaterial; } else { RenderSettings.ambientMode = AmbientMode.Flat; RenderSettings.skybox = null; } RenderSettings.ambientSkyColor = SkyboxColor; if (ReflectionCubemap != null) { RenderSettings.defaultReflectionMode = DefaultReflectionMode.Custom; RenderSettings.customReflection = ReflectionCubemap; } else { RenderSettings.defaultReflectionMode = DefaultReflectionMode.Skybox; RenderSettings.customReflection = null; } RenderSettings.skybox = SkyboxMaterial; var lights = LightsParent.GetComponentsInChildren <Light>(includeInactive: true); foreach (var light in lights) { if (ActiveLights.Contains(light)) { light.gameObject.SetActive(true); } else { light.gameObject.SetActive(false); } } }