1

我对 WebGL 很陌生,我正在尝试用动画蜡烛制作蛋糕。所以,我找到了这个例子:https ://stemkoski.github.io/Three.js/Particle-Engine.html带有蜡烛火焰,并由于我的任务(蛋糕)而尝试更改代码。但是我很难在同一个场景中创建几个火焰(我找到了一些如何创建立方体或球体的信息,但不幸的是在这种情况下它没有帮助)。据我了解动画火焰显示在代码中:

this.engine = new ParticleEngine();
engine.setValues( Examples.fountain );
engine.initialize();

但我不知道如何同时创建 5 个不同的示例。

UPD:我终于创建了几个实例,这是我的代码:

var engines = [];
var coordinates = [
    {x:5, y:105},
    {x:-40, y:115},
    {x:-75,y:111},
    {x:37, y:117},
    {x:68, y:110}
];
coordinates.forEach(function(item, i){
   var params = clone(Examples.candle);
   params.positionBase = new THREE.Vector3(item.x, item.y, 10);
   var engine = new ParticleEngine();
   engine.setValues(instances[i]);
   engine.initialize();

   engines.push(engine);
 }

但是当我尝试为一个实例设置不同的示例(示例中的烟雾)时,所有其他实例的参数也已更改。无法弄清楚如何在不影响其他人的情况下单独更改每个实例。

4

0 回答 0