我在使用 BufferGeometry 时遇到了一些问题,因为它使用 Float32Array 来指定位置。我需要绘制的值(使用 THREE.Points )是大数字,例如“2732124.760877”,并且在使用 Float32Array 时我失去了大部分精度,而当我尝试使用 Float64Array 时,绘图变得混乱起来。有没有办法我可以使用 Float64Array 而不是 Float32Array。
如果您想查看从 Float32Array 更改为 Float64Array 时会发生什么,请尝试在以下 jsfiddle 中将 Float32Array 更改为 Float64Array(第 43 行)
buffer_geometry.addAttribute( 'position', new THREE.BufferAttribute( new Float64Array(lines * 3), 3 ));
buffer_geometry.addAttribute( 'color', new THREE.BufferAttribute( new Float32Array(lines * 3), 3 ));