public void TestCamera() { FPendingViewTarget newViewTarget = new FPendingViewTarget(); newViewTarget.targetPosition.x = 1000.0f; newViewTarget.targetPosition.y = 2000.0f; newViewTarget.targetPosition.z = 3000.0f; newViewTarget.targetOrientation.pitch = 0.0f; newViewTarget.targetOrientation.yaw = 0.0f; newViewTarget.targetOrientation.roll = 0.0f; newViewTarget.blendParameters.blendType = ECameraBlendType.EBlendType_3; newViewTarget.blendParameters.blendTime = 1.0f; SetViewTarget(ref newViewTarget); FPendingCameraMode newCameraMode = new FPendingCameraMode(); newCameraMode.cameraMode = ECameraMode.ThirdPersonSimple; newCameraMode.parameters.camDistance = 2000.0f; newCameraMode.parameters.camOffset.x = 0.0f; newCameraMode.parameters.camOffset.y = 20.0f; newCameraMode.parameters.camOffset.z = 70.0f; newCameraMode.parameters.desiredFOV = 75.0f; newCameraMode.blendParameters.blendType = ECameraBlendType.EBlendType_2; newCameraMode.blendParameters.blendTime = 1.0f; SetCameraMode(ref newCameraMode); TimeSpan timeDelta = TimeSpan.FromSeconds(1.0f / 60.0f); while (true) { UpdateCamera(timeDelta.Seconds); Thread.Sleep(timeDelta.Milliseconds); } }
private void SetCameraMode(ref FPendingCameraMode newCameraMode) { pendingCameraMode = newCameraMode; pendingCameraMode.bPendingActive = true; currentCameraMode = pendingCameraMode.cameraMode; cameraParameters = newCameraMode.parameters; blendTimeLeft = pendingCameraMode.blendParameters.blendTime; }