【发布时间】:2018-01-03 08:19:03
【问题描述】:
我目前正在尝试翻转粒子效果(libgdx API)。 到目前为止效果很好:新创建的粒子被正确翻转,因为我更改了发射器的参数。但我也想翻转已经存在的粒子。
创建的粒子在 ParticleEmitter 类之外不可用,所以我决定复制代码并复制 ParticleEmitter 类。
所以我的代码如下所示:
ParticleEmitter emitter;
for (int i = 0; i < getEmitters().size; i++) {
emitter = getEmitters().get(i);
// change already existing particles:
Particle[] particles = emitter.getParticles();
boolean[] active = emitter.getActive();
for (int j = 0, n = active.length; j < n; j++) {
if (active[j] == true) {
Particle particle = particles[j];
// Here I have to do something with the particle
}
}
// change emitter parameters for new created particles:
/*
*
* emitter.setValue(...)
*
*/
}
也许你有个好主意?谢谢:)
【问题讨论】:
-
我不知道你所说的翻转粒子是什么意思,更不知道你的实际问题是什么。我目前的想法更多地涉及我今晚的晚餐计划,所以当然,我有一个好主意,但它对你没有帮助,afaik。只是一个提示:您可能想学习编写这样的代码: if (active[j] == true) as if (active[j] )
-
谢谢,粒子效果已定位,参数描述了发射粒子的飞行方向(例如风或重力)。粒子效果可能有多个发射器,因此您必须对它们进行迭代。然后在底部我改变了参数,所以所有新的射弹都会受到这些变化的影响,但是当前的粒子也应该受到翻转的影响,这就是我试图弄清楚的一点。
标签: java libgdx effect particles