Unity FPS 視点メモ
プレイヤオブジェクト - 視点(空オブジェクト) - カメラ の親子関係
プレイヤオブジェクトにて、WASD で前進と左右移動と、マウスの左右移動でカメラの左右回転をする。
視点にて、マウスの上下移動でカメラの上下回転をする。
using UnityEngine; public class PlayerTest : MonoBehaviour { private float moveSpeed = 0.01f; void Update() { transform.position += transform.TransformDirection(Vector3.forward) * Input.GetAxis("Vertical") * moveSpeed; transform.position += transform.TransformDirection(Vector3.right) * Input.GetAxis("Horizontal") * moveSpeed; float x = Input.GetAxis("Mouse X"); if (x != 0) { transform.Rotate(0, x * 6.0f, 0); } } }
using UnityEngine; public class PointOfViewTest : MonoBehaviour { Camera cam; void Start() { cam = Camera.main; cam.transform.position = transform.position; cam.transform.rotation = transform.rotation; cam.transform.parent = transform; } void Update() { float y = Input.GetAxis("Mouse Y"); if (y != 0) { cam.transform.Rotate(-y * 3.0f, 0, 0); } } }