creator物理关节组件

作者: 工匠良辰 | 来源:发表于2018-06-29 11:05 被阅读9次

    直接打印到控制台,可以直接操作属性来解决

    let joint = prefabA.addComponent(cc.DistanceJoint);
    joint.distance = 10;
    joint.collideConnected = true;
    joint.anchor = new cc.Vec2(-10,0);
    joint.connectedAnchor = new cc.Vec2(10,0);
    joint.connectedBody = prefabB.getComponent(cc.RigidBody);
    

    connectedbody的使用

    关节组件

    物理系统包含了一系列用于链接两个刚体的关节组件。关节组件可以用来模拟真实世界物体间的交互,比如铰链,活塞,绳子,轮子,滑轮,机动车,链条等。学习如何使用关节组件可以有效地帮助创建一个真实有趣的场景。

    目前物理系统中提供了以下可用的关节组件:

    Revolute Joint - 旋转关节,可以看做一个铰链或者钉,刚体会围绕一个共同点来旋转。
    Distance Joint - 距离关节,关节两端的刚体的锚点会保持在一个固定的距离。
    Prismatic Joint - 棱柱关节,两个刚体位置间的角度是固定的,他们只能在一个指定的轴上滑动。
    Weld Joint - 焊接关节,根据两个物体的初始角度将两个物体上的两个点绑定在一起。
    Wheel Joint - 轮子关节,由 Revolute 和 Prismatic 组合成的关节,用于模拟机动车车轮。
    Rope Joint - 绳子关节,将关节两端的刚体约束在一个最大范围内。
    Motor Joint - 马达关节,控制两个刚体间的相对运动。
    7种组合关节组建

    关节的共同属性

    虽然每种关节都有不同的表现,但是他们都有一些共同的属性。

    • connectedBody - 关节链接的另一端的刚体
    • anchor - 关节本端链接的刚体的锚点
    • connectedAnchor - 关节另一端链接的刚体的锚点
    • collideConnected - 关节两端的刚体是否能够互相碰撞

    每个关节都需要链接上两个刚体才能够发挥他的功能,我们把和关节挂在同一节点下的刚体视为关节的本端,把 connectedBody 视为另一端的刚体。

    通常情况下,每个刚体会围绕自身周围的位置来设定此点。 根据关节组件类型的不同,此点决定了物体的旋转中心,或者是用来保持一定距离的坐标点,等等。

    collideConnected 属性允许你决定关节两端的刚体是否需要继续遵循常规的碰撞规则。 比如如果你现在准备制作一个布娃娃,你可能会希望大腿和小腿能够部分重合,然后在膝盖处链接到一起,那么就需要设置 collideConnected 属性为 false 。 如果你正在制作一个升降机,你可能希望升降机平台和地板能够碰撞,那么就需要设置 collideConnected 属性为 true。

    相关文章

      网友评论

        本文标题:creator物理关节组件

        本文链接:https://www.haomeiwen.com/subject/pxaoyftx.html