gpt4 book ai didi

javascript - 如何在threejs中使用InstancedBufferGeometry

转载 作者:行者123 更新时间:2023-12-04 08:56:56 24 4
gpt4 key购买 nike

当我使用 InstancedBufferGeometry 时不显示。
(当下面的代码删除注释时,显示了多边形。)
但是,当显示多边形时,我使用了 BufferGeometry。
为什么下面的代码不起作用。
请教我。

const createGeometry = () => {
// const geometry = new THREE.BufferGeometry();
const geometry = new THREE.InstancedBufferGeometry();
const positions = new THREE.BufferAttribute(new Float32Array(4 * 3), 3);
const uvs = new THREE.BufferAttribute(new Float32Array(4 * 2), 2);

positions.setXYZ(0, -0.5, 0.5, 1.0);
positions.setXYZ(1, 0.5, 0.5, 1.0);
positions.setXYZ(2, -0.5, -0.5, 1.0);
positions.setXYZ(3, 0.5, -0.5, 1.0);
uvs.setXYZ(0, 0.0, 0.0);
uvs.setXYZ(1, 1.0, 0.0);
uvs.setXYZ(2, 0.0, 1.0);
uvs.setXYZ(3, 1.0, 1.0);
geometry.setAttribute("position", positions);
geometry.setAttribute("uv", uvs);

geometry.setIndex(
new THREE.BufferAttribute(new Uint16Array([0, 2, 1, 2, 3, 1]), 1)
);

return geometry;
};
当使用 BufferGeometry 时。
enter image description here

最佳答案

使用 InstancedBufferGeometry没有至少一个 InstancedBufferAttribute不支持。
这种用法甚至没有意义,因为您希望拥有一个或多个定义每个实例的变化的属性。

关于javascript - 如何在threejs中使用InstancedBufferGeometry,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/63770630/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com