You cannot select more than 25 topics
			Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
		
		
		
		
		
			
		
			
				
	
	
		
			42 lines
		
	
	
		
			975 B
		
	
	
	
		
			C#
		
	
			
		
		
	
	
			42 lines
		
	
	
		
			975 B
		
	
	
	
		
			C#
		
	
using UnityEngine;
 | 
						|
using System.Collections;
 | 
						|
 | 
						|
namespace RootMotion {
 | 
						|
 | 
						|
	/// <summary>
 | 
						|
	/// The very simple FPS camera.
 | 
						|
	/// </summary>
 | 
						|
	public class CameraControllerFPS: MonoBehaviour {
 | 
						|
 | 
						|
		public float rotationSensitivity = 3f;
 | 
						|
		public float yMinLimit = -89f;
 | 
						|
		public float yMaxLimit = 89f;
 | 
						|
 | 
						|
		private float x, y;
 | 
						|
 | 
						|
		void Awake () {
 | 
						|
			Vector3 angles = transform.eulerAngles;
 | 
						|
			x = angles.y;
 | 
						|
			y = angles.x;
 | 
						|
		}
 | 
						|
 | 
						|
		public void LateUpdate() {
 | 
						|
			Cursor.lockState = CursorLockMode.Locked;
 | 
						|
 | 
						|
			x += Input.GetAxis("Mouse X") * rotationSensitivity;
 | 
						|
			y = ClampAngle(y - Input.GetAxis("Mouse Y") * rotationSensitivity, yMinLimit, yMaxLimit);
 | 
						|
 | 
						|
			// Rotation
 | 
						|
			transform.rotation = Quaternion.AngleAxis(x, Vector3.up) * Quaternion.AngleAxis(y, Vector3.right);
 | 
						|
		}
 | 
						|
 | 
						|
		// Clamping Euler angles
 | 
						|
		private float ClampAngle (float angle, float min, float max) {
 | 
						|
			if (angle < -360) angle += 360;
 | 
						|
			if (angle > 360) angle -= 360;
 | 
						|
			return Mathf.Clamp (angle, min, max);
 | 
						|
		}
 | 
						|
 | 
						|
	}
 | 
						|
}
 |