当前位置:  开发笔记 > 编程语言 > 正文

我无法从bufferGeometry获取position属性

如何解决《我无法从bufferGeometry获取position属性》经验,为你挑选了1个好方法。

我随机选择了"在我的场景中走来走去"(某种3D蛇),接下来要做的就是在它的头部设置一个盒子.该行bufferGeometry由设置

        var positions1 = new Float32Array( MAX_POINTS * 3 ); // 3 vertices per point
        var positions2 = new Float32Array( MAX_POINTS * 3 ); // 3 vertices per point
        buffGeometry1.addAttribute( 'position', new THREE.BufferAttribute( positions1, 3 ) );
        buffGeometry2.addAttribute( 'position', new THREE.BufferAttribute( positions2, 3 ) );

我选择boxGeometry在它周围设置一个立方体(对象),并使用以下代码行来尝试实现:

            var positioning = buffGeometry1.getAttribute('position');
            cube.position.x = positioning[0];//(line1.geometry.attributes.position.array[drawCount]);
            cube.position.y = positioning[1];//(line1.geometry.attributes.position.array[drawCount + 1]);
            cube.position.z = positioning[2];

在调试时,我看到我的positioning数组未定义.所以我觉得出了问题.

谢谢.



1> 小智..:

尝试:

console.log(buffGeometry1.getAttribute('position'))

我的THREE.BufferGeometry向我显示verticle存储在positioning.array中,因此您应该通过以下方式访问它们:

positioning.array[0]
positioning.array[1]
positioning.array[2]

推荐阅读
和谐啄木鸟
这个屌丝很懒,什么也没留下!
DevBox开发工具箱 | 专业的在线开发工具网站    京公网安备 11010802040832号  |  京ICP备19059560号-6
Copyright © 1998 - 2020 DevBox.CN. All Rights Reserved devBox.cn 开发工具箱 版权所有