【发布时间】:2013-08-26 06:12:18
【问题描述】:
我是threejs的初学者。我几乎阅读了网络中所有关于粒子系统的示例,并且我观察到 ParticleSystem 和 WebGLRenderer 或者 Particle 和 CanvasRenderer 总是一起使用。所以我想知道 Particle 是否可以在 WebGLRenderer 中使用。 我只是想用 WebGLRenderer 控制系统中每个粒子的运动。我该怎么做呢?
【问题讨论】:
我是threejs的初学者。我几乎阅读了网络中所有关于粒子系统的示例,并且我观察到 ParticleSystem 和 WebGLRenderer 或者 Particle 和 CanvasRenderer 总是一起使用。所以我想知道 Particle 是否可以在 WebGLRenderer 中使用。 我只是想用 WebGLRenderer 控制系统中每个粒子的运动。我该怎么做呢?
【问题讨论】:
当你创建一个粒子系统时,你可以传入一个几何体。像这样的:
var geom = new THREE.Geometry();
var material = new THREE.ParticleBasicMaterial({size:4, vertexColors: true, color:0xffffff});
for (var x = -5 ; x < 5 ; x++) {
for (var y = -5 ; y < 5 ; y++) {
var particle = new THREE.Vector3(x*10,y*10,0);
geom.vertices.push(particle);
geom.colors.push(new THREE.Color(Math.random()*0x00ffff));
}
}
var system = new THREE.ParticleSystem(geom,material);
scene.add(system);
通过更改每个单独顶点的位置,您可以移动它们。
【讨论】: