2016-04-15 70 views
-1

我已经尝试检查文档,它似乎对我来说是正确的,但当我尝试构建此项目时仍然出现错误。我不知道如何处理input.getaxis(“垂直”)中的错误?

using UnityEngine; 
using System.Collections; 

public class PlayerController : MonoBehaviour { 
    private Rigidbody rb; 

    void Start() { 
     rb = GetComponent<Rigidbody>(); 
    } 

    void FixedUpdate() { 
     Input side = Input.GetAxis("Horizontal"); 
     Input up = Input.GetAxis("Vertical"); 

     Vector3 movement = new Vector3 (side, 0.0f, up); 
     rb.AddForce (movement); 
    } 
} 
+1

那么是什么错误? –

回答

0

你的错误是这两行:

Input side = Input.GetAxis("Horizontal"); 
Input up = Input.GetAxis("Vertical"); 

Input.GetAxis回报float但你将其赋值给Input这是一个float和不甚至没有存在。因此,请将Input sideInput up替换为float sidefloat up

public class PlayerController : MonoBehaviour { 

    // Use this for initialization 

    private Rigidbody rb; 

    void Start() 
    { 

     rb = GetComponent<Rigidbody>(); 

    } 

    // Update is called once per frame 



    void FixedUpdate() 
    { 

     float side = Input.GetAxis("Horizontal"); 
     float up = Input.GetAxis("Vertical"); 

     Vector3 movement = new Vector3(side, 0.0f, up); 

     rb.AddForce(movement); 


    } 
} 
相关问题