简介:
let testNode = new cc.Node;
testNode.setPosition(12.1, 0, 0);
console.log(testNode.position);
输出结果为 Object { x: 12.100000381469727, y: 20, z: 20 }
请教各位大佬,这是个什么原因?有什么方法可以改正吗?
————————
-
Creator 版本:2.2.0
-
重现方式: 一直
简介:
let testNode = new cc.Node;
testNode.setPosition(12.1, 0, 0);
console.log(testNode.position);
输出结果为 Object { x: 12.100000381469727, y: 20, z: 20 }
请教各位大佬,这是个什么原因?有什么方法可以改正吗?
————————
Creator 版本:2.2.0
重现方式: 一直
一时着急题目输出的结果和传入的参数不相同……
结果应为 Object { x: 12.100000381469727, y: 0, z: 0 }
// setPosition源码
function setPosition (newPosOrX, y, z) {
...
let trs = this._trs;// this._trs是Float32Array
...
trs[0] = x;
trs[1] = y;
trs[2] = z;
...
}
Float32Array引起的小数不准确,应该是这造成的
太感谢您了!
请问您,这源码是在哪里查看的呢?
去看看有没有什么解决方案
万分感谢您
一样
不知道目前有没有合适的解决方法了
临时改引擎做数值转换呗,等大佬们发新版本后再去掉就行了。
我也遇到了,scale也有问题