public void CenterToCamera() { fadingCentre = FadingTransition.FadingCentre.camera; gizmoPos = gizmo.position; //store the gizmo position gizmoRot = gizmo.rotation; //store the gizmo rotation Plane sPlane = new Plane(gizmo.forward, gizmo.position); //fading transition plane float planeDist = sPlane.GetDistanceToPoint(Camera.main.transform.position); if (radiusOrDistanceSlider) { radiusOrDistanceSlider.maxValue = 1.5f * planeDist; radiusOrDistanceSlider.value = planeDist; radiusOrDistanceValueText.text = radiusOrDistanceSlider.value.ToString("0.000"); } distance = planeDist; gizmo.SetParent(Camera.main.transform); gizmo.localRotation = Quaternion.Euler(0, 180, 0); gizmo.localPosition = new Vector3(0, 0, (surfaceType == FadingTransition.SurfaceType.plane) ? planeDist : 0);//move the gizmo on the fading plane to the closest to camera point foreach (Transform t in gizmo) { t.gameObject.SetActive(false); } radiusOrDistanceSlider.transform.parent.gameObject.SetActive(true); radiusOrDistanceTitle.text = (surfaceType == FadingTransition.SurfaceType.plane) ? "plane distance" : "sphere radius"; }
public void CenterToGizmo() { fadingCentre = FadingTransition.FadingCentre.gizmo; gizmo.SetParent(null); gizmo.position = gizmoPos; gizmo.rotation = gizmoRot; foreach (Transform t in gizmo) { t.gameObject.SetActive(true); } if (radiusOrDistanceSlider) { radiusOrDistanceSlider.transform.parent.gameObject.SetActive(surfaceType == FadingTransition.SurfaceType.sphere); } foreach (Transform t in gizmo) { t.gameObject.SetActive(true); } }
void Start() { //get starting values from FadingTransition.instance surfaceType = FadingTransition.instance.surfaceType; fadingCentre = FadingTransition.instance.fadingCentre; // //store initial material values originalMaterials = new Dictionary <Material, Material>(); foreach (Material m in transitionMaterials) { originalMaterials.Add(m, new Material(m)); } // gizmo = FindObjectOfType <GizmoFollow>().transform; gizmoPos = gizmo.position; gizmoRot = gizmo.rotation; if (orientationDropdown) { SwitchCenter(orientationDropdown.value);//get initial values from UI orientationDropdown.onValueChanged.AddListener(SwitchCenter); } else { SwitchCenter((int)fadingCentre); } if (radiusOrDistanceSlider) { radius = radiusOrDistanceSlider.value; //get initial values from UI radiusMax = radiusOrDistanceSlider.maxValue; //get initial values from UI radiusOrDistanceSlider.onValueChanged.AddListener(SetValue); radiusOrDistanceSlider.transform.parent.gameObject.SetActive((fadingCentre == FadingTransition.FadingCentre.camera) || (surfaceType == FadingTransition.SurfaceType.sphere)); } if (spreadSlider) { SetSpread(spreadSlider.value);//get initial values from UI spreadSlider.onValueChanged.AddListener(SetSpread); spreadValue.text = spreadSlider.value.ToString("0.000"); } if (invertToggle) { InvertTransition(invertToggle.isOn);//get initial values from UI invertToggle.onValueChanged.AddListener(InvertTransition); } if (triplanarMappingToggle) { SetTriplanarMapping(triplanarMappingToggle.isOn);//get initial values from UI triplanarMappingToggle.onValueChanged.AddListener(SetTriplanarMapping); } if (noiseScaleWorldSpaceSlider) { SetNoiseScale(noiseScaleWorldSpaceSlider.value);//get initial values from UI noiseScaleWorldSpaceSlider.onValueChanged.AddListener(SetNoiseScale); } if (noiseScaleScreenSpaceSlider) { SetNoiseScreenSpaceScale(noiseScaleScreenSpaceSlider.value);//get initial values from UI noiseScaleScreenSpaceSlider.onValueChanged.AddListener(SetNoiseScreenSpaceScale); } if (surfaceDropdown) { SwitchMode(surfaceDropdown.value);//get initial values from UI surfaceDropdown.onValueChanged.AddListener(SwitchMode); } else { SwitchMode(0); } if (materialDropdown) { ModifyMaterials(materialDropdown.value);//get initial values from UI materialDropdown.onValueChanged.AddListener(ModifyMaterials); } }