Unity to Android - 简单if语句不起作用

时间:2016-04-06 21:40:24

标签: c# android unity3d

刚刚在Unity编辑器中测试了我的游戏,一切正常:

void Update () {

        if (transform.position.y < -3f) {

            Debug.Log ("game over!");
            prepareGame ();


        }

    }

一切正常,当y低于-3但是......

时执行if

当我导出游戏并在android上测试时,if语句永远不会 被叫!

我对droid版本进行了测试,值Y低于-3但仍然如此 如果永远不会被召唤,游戏永远不会结束......为什么?

1 个答案:

答案 0 :(得分:1)

不比较浮动值的最佳做法。

解决方案:

1)使用Mathf.Approximately(float a,float b)link

2)使用Mathf.RoundToInt(float f)link

3)使用触发器。这可能超出了您对此解决方案的需求

我没有足够的代表链接#3但查找Collider.OnTriggerEnter(Collider)