请问您能为我解释一下这段代码吗?

时间:2013-12-14 20:45:33

标签: c# unity3d monodevelop

最近我开始使用统一游戏制作。我是这个软件的新手,所以我正在做一个由团结提供的Roll-A-Ball项目。但是有一段代码,我很难理解。该代码应该将球移过游戏平面。请你解释一下。

    using UnityEngine;
    using System.Collections;

    public class PlayerController : MonoBehaviour
    {
        public float speed;
        void FixedUpdate()
        {

            float moveHorizontal = Input.GetAxis ("Horizontal");
            float moveVertical = Input.GetAxis ("Vertical");

            Vector3 movement = new Vector3 (moveHorizontal, 0.0f, moveVertical);

            rigidbody.AddForce (movement * speed * Time.deltaTime);

        }

    }

2 个答案:

答案 0 :(得分:2)

我认为这是一个公平的问题,即使你可以通过一些研究找到答案。

Vector3创建一个给定x,y,z坐标的向量。你的'y'是常数(0.0f),因为球在飞机上移动。

moveHorizo​​ntal和moveVertical获取鼠标坐标,并根据该移动刚体(球)。

每天都会调用FixedUpdate。

我希望这会有所帮助。

答案 1 :(得分:-2)

获取X和Y坐标。创建位置并通过调用AddForce以该速度移动球。