Example #1
0
        private void SetCameraMode(ref FPendingCameraMode newCameraMode)
        {
            pendingCameraMode = newCameraMode;
            pendingCameraMode.bPendingActive = true;

            currentCameraMode = pendingCameraMode.cameraMode;
            cameraParameters  = newCameraMode.parameters;
            blendTimeLeft     = pendingCameraMode.blendParameters.blendTime;
        }
Example #2
0
 private void DesiredVT(ECameraMode currentCameraMode)
 {
     if (currentCameraMode == ECameraMode.FirstPersonMode)
     {
         desiredVT.POV.position    = MathLib.AddVectors(currentVT.targetPosition, MathLib.VectorOrientationTransform(cameraParameters.firstPersonEyesPositionOffset, currentVT.targetOrientation));
         desiredVT.POV.orientation = currentVT.targetOrientation;
     }
     if (currentCameraMode == ECameraMode.ThirdPersonSimple)
     {
         desiredVT.POV.orientation = currentVT.targetOrientation;
         desiredVT.POV.position    = MathLib.AddVectors(currentVT.targetPosition, MathLib.VectorOrientationTransform(cameraParameters.camOffset, currentVT.targetOrientation));
         desiredVT.POV.position    = MathLib.SubtractVectors(desiredVT.POV.position, MathLib.VectorUniformScale(MathLib.OrientationToVector(currentVT.targetOrientation), cameraParameters.camDistance));
     }
     if (currentCameraMode == ECameraMode.DirectorCam)
     {
         float alpha = 1;
         desiredVT.POV.orientation = MathLib.OrientationLerp(currentVT.targetOrientation, MathLib.VectorToOrientation(cameraParameters.lookAtTarget), alpha);
         desiredVT.POV.position    = MathLib.AddVectors(currentVT.targetPosition, MathLib.VectorOrientationTransform(cameraParameters.camPosition, currentVT.targetOrientation));
     }
 }