gpt4 book ai didi

three.js - 你如何在 Three.js 中找到粒子的大小?

转载 作者:行者123 更新时间:2023-12-04 05:42:25 25 4
gpt4 key购买 nike

你如何在 Three.js 中找到粒子的大小?

使用几何图形,您可以使用边界框/球体以三个.js 为单位计算其大小。但是粒子没有边界框,无论如何我都无法计算它的大小。

有没有人有任何建议?

最佳答案

这取决于您正在处理的“粒子”的含义。带 WebGLRenderer你指的是 ParticleSystem 中的一个顶点,但带有 CanvasRenderer你是说 Particle (仅限 Canvas)。就 ParticleSystem 而言,用于构建它的 Material 有一个大小,就像在通常的例子中一样:
几何=新三。几何();

for ( i = 0; i < 10000; i ++ ) {
var vertex = new THREE.Vector3(); // and set its location
geometry.vertices.push( vertex );
}

material = new THREE.ParticleBasicMaterial( {
size: 35, // This might be the size you are thinking of?
sizeAttenuation: false,
map: // Some THREE.Texture
});

particles = new THREE.ParticleSystem( geometry, material );

然后你可以访问大小,并简单地修改它
particles.material.size = newSize;

如果您正在创建 Particle对于 Canvas ,则非常相似:
// Construct the particle with a material
var material = new THREE.ParticleBasicMaterial( {
map: new THREE.Texture( canvas ),
blending: THREE.AdditiveBlending
});
particle = new THREE.Particle( textMaterial );
// Just need to access the material to get the 'size'
var size = particle.material.size

关于three.js - 你如何在 Three.js 中找到粒子的大小?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/11123084/

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