[Unity菜鸟] Character控制移动

1. 给角色加角色控制器组件,然后用以下代码可以控制角色移动和跳跃

    float  speed  = 6.0f;
    float jumpSpeed  = 8.0f;
    float gravity  = 20.0f;

    private Vector3 moveDirection = Vector3.zero;

    void Start()
    {
       // gameObject.rigidbody = false;
    }
    void Update()
    {
        CharacterController controller = GetComponent<CharacterController>();

        if(controller.isGrounded)
        {
	        moveDirection =new Vector3(Input.GetAxis("Horizontal"), 0, Input.GetAxis("Vertical")); //Allows for player input
	        moveDirection = transform.TransformDirection(moveDirection); //How to move
	        moveDirection *= speed; //How fast to move
	
	        if(Input.GetButton("Jump"))
	        {
		        moveDirection.y = jumpSpeed;
	        }
        }
        //Apply gravity
        moveDirection.y -= gravity * Time.deltaTime;

        //Move the controller
        controller.Move(moveDirection * Time.deltaTime);	
	
    }

 

2. 添加角色控制器后人物下陷问题

[Unity菜鸟] Character控制移动,,5-wow.com

郑重声明:本站内容如果来自互联网及其他传播媒体,其版权均属原媒体及文章作者所有。转载目的在于传递更多信息及用于网络分享,并不代表本站赞同其观点和对其真实性负责,也不构成任何其他建议。