private void Reset() { // Apply default properties when created or reset in the editor. duration = 0.4f; curve = new AnimationCurve(new Keyframe[] { new Keyframe(0f, 0f, 3.00052f, 3.00052f), new Keyframe(1f, 1f, 0.05463887f, 0.05463887f) }); presentedCanvasOffScreenLocation = OffScreenLocation.Right; animatePresentingCanvas = true; presentingCanvasOffScreenLocation = OffScreenLocation.Left; presentingCanvasParallaxScalar = 0.4f; description = "The slide transition animation presents content by sliding it in " + "from an off-screen location. It dismisses content by performing the reverse - " + "sliding it to an off-screen location.\n\nIn addition to the presented canvas " + "controller, the presenting canvas controller can also be animated to and from " + "an off-screen location. This gives the appearance of the " + "content sliding out as the presented content slides in.\n\nWith the " + "'presentingCanvasParallaxScalar' property, you can scale the amount by which " + "the presenter moves, creating parallax effects. A value of 1 will animate " + "fully to the off-screen location (no parallax), whilst 0.5 would animate " + "halfway to the off-screen location.A value of 0 has the same effect as " + "disabling 'animatePresentingCanvas'."; }
private Vector3 PositionForCanvasControllerAtLocation(CanvasController canvasController, OffScreenLocation location) { Vector3 position = Vector3.zero; switch (location) { case OffScreenLocation.Left: { position = canvasController.OffScreenLeftContentPosition(); break; } case OffScreenLocation.Top: { position = canvasController.OffScreenTopContentPosition(); break; } case OffScreenLocation.Right: { position = canvasController.OffScreenRightContentPosition(); break; } case OffScreenLocation.Bottom: { position = canvasController.OffScreenBottomContentPosition(); break; } } return(position); }