0
我創造粒子與three.js所隨機他們定位:設置界限
for(var i = 0; i < particleCount; i++){
var pX = Math.random() * 100-50;
var pY =Math.random() * 100-50;
var pZ = Math.random() * 100-50;
particle = new THREE.Vector3(pX,pY,pZ);
particle.velocity = new THREE.Vector3(Math.random(), Math.random(), pZ);
particles.vertices.push(particle);
}
然後在我的requestAnimationFrame更新功能,我移動的粒子:
for (var i = 0; i < particleCount; i++) {
var particle = particles.vertices[i];
particle.y += particle.velocity.y*speed;
particle.x += particle.velocity.x*speed;
}
哪有我爲運動帶來一些限制?即當粒子到達屏幕邊緣時,我想將它們「反彈」回來。
我可能會存儲每個粒子'direction'載體和'velocity'值。對於每一幀,按其方向和速度更新粒子的位置。如果粒子擊中或穿過邊界邊界,重新計算方向和速度,以便下一次更新將以新方向發送。 – TheJim01