我是靠谱客的博主 仁爱含羞草,最近开发中收集的这篇文章主要介绍Unity编写第一人称控制器,觉得挺不错的,现在分享给大家,希望可以做个参考。

概述

[RequireComponent (typeof(CharacterController))]
[RequireComponent (typeof(Rigidbody))]
public class FirstPerson : MonoBehaviour {
//移动的速度
public float speed;
//鼠标的水平偏移量
float offsetMouseX;
//鼠标在竖直方向上的偏移量
float offsetMouseY;
//人称控制器在水平方向上的旋转角度
public float rotateX;
private CharacterController m_CharacterController;
private float horizontal;
private float vertical;
private Camera m_mianCamera;
// Use this for initialization
void Start () {
m_CharacterController = GetComponent<CharacterController>();
m_mianCamera = GameObject.FindGameObjectWithTag("MainCamera").GetComponent<Camera>();
}
// Update is called once per frame
void Update () {
horizontal = Input.GetAxis("Horizontal");
vertical = Input.GetAxis("Vertical");
//控制第一人称控制器的移动效方向
Vector3 direction = (transform.forward * vertical + horizontal * transform.right).normalized;
m_CharacterController.SimpleMove(direction * speed * Time.deltaTime);
//第一人称控制器左右旋转
offsetMouseX = Input.GetAxis("Mouse X");
m_CharacterController.transform.Rotate(Vector3.up * offsetMouseX * rotateX * Time.deltaTime);
//第一人称控制器抬头低头看
offsetMouseY = Input.GetAxis("Mouse Y");
Vector3 cameraRotateAngle = -offsetMouseY * Vector3.right;
m_mianCamera.transform.eulerAngles += cameraRotateAngle;
}

最后

以上就是仁爱含羞草为你收集整理的Unity编写第一人称控制器的全部内容,希望文章能够帮你解决Unity编写第一人称控制器所遇到的程序开发问题。

如果觉得靠谱客网站的内容还不错,欢迎将靠谱客网站推荐给程序员好友。

本图文内容来源于网友提供,作为学习参考使用,或来自网络收集整理,版权属于原作者所有。
点赞(44)

评论列表共有 0 条评论

立即
投稿
返回
顶部