• 3D Node
    • Node Api 升级
    • 开启 3D 节点

    3D Node

    文: youyou

    Node Api 升级

    由于 Cocos Creator 在 v2.1 支持了 3D 的特性,所以相应节点的 api 也需要由 2D 升级到支持 3D 的使用。

    影响比较大的改动是 rotation 的类型会从 Number 改为 cc.Quat,如果要像之前那样在 2D 空间方便旋转节点,那么可以使用 angle 属性。相应的 setRotationgetRotation 也会改为使用 cc.Quat

    具体的升级请参考下表:

    APIv2.0.3v2.1 - 2.4v2.5
    rotationX, rotationYKEEPDEPRECATE,USE eulerAnglesDEPRECATE
    rotationKEEP,numberDEPRECATE,USE angleGET cc.Quat
    angleADD,= -rotation-rotation-rotation
    scaleKEEP,numberKEEP,numberKEEP,number
    getRotation()KEEP,numberDEPRECATE,USE angleGET cc.Quat
    getRotation(cc.Quat)GET cc.Quat
    setRotationKEEPDEPRECATE SET Number,USE angleSET cc.Quat
    setRotationSET cc.Quat
    getScale()KEEP,numberDEPRECATE,USE scaleGET cc.Vec2 / cc.Vec3
    getScale(cc.Vec2/cc.Vec3)GET cc.Vec2 / cc.Vec3
    setScaleKEEPKEEPKEEP
    positioncc.Vec2cc.Vec3cc.Vec3

    开启 3D 节点

    Cocos Creator 2.1 加入了 3D 支持后,节点会分为 2D 节点和 3D 节点,他们的区别在于 2D 节点在做矩阵计算或者一些属性设置的时候只会在 2D 空间下进行考虑,这样能节省很大一部分运行开销。

    默认新创建出来的节点都是 2D 节点,有以下两种方式可以设置该节点为 3D 节点:

    • 点击 属性检查器 右上方的 3D 按钮进行切换:

    3d-node-inspector

    可以看到,当节点切换为 3D 节点后,旋转、位移、缩放等参数中,可以设置的值都从两个变成了三个,增加了 Z 轴坐标。这样在 属性检查器 中我们就可以很方便的编辑节点的 3D 属性了。

    • 在代码中切换
    1. node.is3DNode = true;