【问题标题】:Particle system does not get updated in aframe粒子系统不会在框架中更新
【发布时间】:2019-05-20 15:11:49
【问题描述】:

我正在尝试为 X 射线管创建模拟,您可以在其中更改电流或电压并查看对电子和光子的影响。 我已经将电子设置为带有 aframe-particle-system-component 的粒子系统。 (https://www.npmjs.com/package/aframe-particle-system-component/v/1.1.3) 现在我正在尝试使用滑块更改粒子系统。 问题是滑块的输入被注册,但它对场景中的粒子系统没有影响。

对我来说奇怪的是,当我在 EventListener 之外调用 setAttribute() 函数时,粒子系统会发生变化。但是显然它在开始时只改变一次,这对我没有帮助。

当我在控制台中检查它时,实体的 DOM 会更新并显示大小的新值。甚至 aframe 检查器也会显示更新后的大小。但是场景中的实际粒子系统仍然显示我在 html 文件中设置的大小。

这是我为此使用的 js 代码:

var elektron = document.querySelector('#ParticleSystem');
var scene = document.querySelector('a-scene');

//Var for the two sliders
var rangeCurrent = document.querySelector('#rangeCurrent');
var rangeVoltage = document.querySelector('#rangeVoltage');

var current = rangeCurrent.value;
var voltage = rangeVoltage.value;

//EventListener for the slider
rangeCurrent.addEventListener('change', function(){
  current = rangeCurrent.value;
  elektron.setAttribute('particle-system', {size: current});
});

没有错误消息。

我整天都被这个问题困扰,如果有人能帮助我,我将非常感激!

【问题讨论】:

    标签: aframe


    【解决方案1】:

    我终于让它工作了! 在粒子系统组件脚本的 update() 函数中,它们不会使用您使用 setAttribute 定义的新数据启动新的粒子系统。我试图自己修复它一段时间,但无法让它工作。所以我使用了粒子系统组件的早期版本 1.12,现在它可以工作了。

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2011-02-09
      • 2012-06-28
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多