【问题标题】:Unity3D Rigidbody Constraints Get PropertyUnity3D刚体约束获取属性
【发布时间】:2013-11-04 14:02:40
【问题描述】:

我正在尝试在 Unity3d 上做一些简单的事情,其中​​之一是检查刚体约束是否已启用冻结位置 X、Y、Z 角度。我在网上登记,但所有的问题都是如何添加属性并且找不到如何获取属性。如果有人能告诉我,我会很高兴。

【问题讨论】:

    标签: unity3d constraints


    【解决方案1】:

    对于 x 位置,它应该是:

    if((rigidbody.constraints & RigidbodyConstraints.FreezePositionX) == RigidbodyConstraints.FreezePositionX) 
    {
        // x-position is frozen
    }
    

    其他选项见http://docs.unity3d.com/Documentation/ScriptReference/RigidbodyConstraints.html

    也尝试搜索 bitflag 教程 :)

    编辑:修复丢失的括号

    【讨论】:

    • error CS0019: Operator &' cannot be applied to operands of type UnityEngine.RigidbodyConstraints' and `bool' ::: 当我执行以下代码时
    • 你说得对,我错过了一对括号,编译器将 RigidbodyConstraints.FreezePositionX 与 RigidbodyConstraints.FreezePositionX 进行了比较,这显然是正确的,然后尝试应用 &-operator 导致:if(rigidbody .constraints & true)
    • 不工作......同样的问题运算符 & 不能被施用于约束
    • 这很奇怪,因为这次我在发布之前尝试了它并且它对我有用,也许你可以发布你的那部分代码
    猜你喜欢
    • 2015-09-21
    • 2019-04-29
    • 1970-01-01
    • 1970-01-01
    • 2016-08-17
    • 1970-01-01
    • 2017-05-13
    • 1970-01-01
    • 2017-11-03
    相关资源
    最近更新 更多