isKinematic和usegravity在脚本上的奇怪行为

时间:2017-01-14 22:22:31

标签: c# unity3d unity5

我想做一个关键的摔倒并停在一个特定的点,我的关键是在一个父游戏对象里面,我将一个脚本附加到那个父级和一个rigibody,我启用了引力并且iskinematic是false,在脚本到达时zi上的一个特定点想要将引力重叠为虚假且运动学为真:  这是代码

using UnityEngine;
using System.Collections;

public class keyRotate : MonoBehaviour {

    private Rigidbody rb;
    // Use this for initialization
    void Start () {
        rb = GetComponent<Rigidbody> ();
    }

    // Update is called once per frame
    void Update () {
        transform.Rotate (0f,0f, 90f * Time.deltaTime);
        if (transform.position.y < -277f)
            Debug.Log ("INNN");
            //rb.useGravity = false;
            //rb.isKinematic = true;
    }
}

正在发生的奇怪事情是,当我用rb评论最后两行时,对象掉落并且debug.log显示,当我解开它时,对象停止下降并且调试从不显示,不应该&#39 ;在这种情况下,调试中的消息显示重力的默认值为true,它应该下降:S

1 个答案:

答案 0 :(得分:0)

在if语句中添加括号{}。现在你只需使用if之后的下一行。