要用setPosition的,我说set方法可以不是针对修改坐标的,是说的自定义的属性可以提供set方法去赋值
setPosition修改坐标后还会有别的处理,你这单纯修改值是没用的。
那么问题又来了,如果基于当前position的基础重新计算位置需要创建新的vec3是不是有新的性能问题
不new Vec3,那就setPosition传x y z呗
我们加个右键菜单吧
我也觉得好麻烦
这是个谜,而且在不同环境下表现也不一样,尤其是 v8 和 JSC 的差异。但是属性数量和JS动态性都对性能有影响。
我们在之前的版本测试中发现过几次非常诡异的性能下降,发几个修复,这些修复都解决了一些很明显的整体性能下降。
有什么可以监听 worldPosition 修改的方法?我之前也尝试过监听 x,y,z 结果也是发现和原生数据绑定的,结果只能在 update 里面判断,Node.EventType.TRANSFORM_CHANGED 也只能监听 position 修改
world 不好监听,因为涉及到整个父节点链,你的方法可能还更好
一级子属性会这样,二级呢?比如下面这样,把原本放在 node 对象下的属性搬到 extends 属性内,这样也导致对象被转化为字典吗?
node = {
extends: {
x: 0,
y: 0,
z: 0,
...
}
}
任何对 Node 的 polyfill 都有风险,polyfill 本质上就是破坏了 hidden class 的类型
1赞
感谢大佬解惑
感谢,等有时间我去做下测试。
我用的3.6.3
好像也有吧。。3.6.2都有啊。。难道3.6.3没有
你设置父节点的坐标,你看看会不会触发,反正之前我试过
哦哦,那估计够呛。应该是需要调用setPosition或者setWorldPostion才会有吧

这个感觉还挺需要的。


