java Slick2D粒子系统不会生成粒子
在我的一个类中(在我希望粒子存在的类中)有这个。这是init方法中的一些代码
public void init(GameContainer c, StateBasedGame sbg) throws SlickException {
drop = new Image("Fishing/drop.png");
system = new ParticleSystem(drop,1500);
try{
File xmlFile = new File("particles/healing.xml");
ConfigurableEmitter emitter = ParticleIO.loadEmitter(xmlFile);
emitter.setPosition(400, 400);
system.addEmitter(emitter);
} catch(Exception e){
System.out.println("Exception: "+e.getMessage());
e.printStackTrace();
System.exit(0);
}
这就是治疗的意义。xml文件
<?xml version="1.0" encoding="UTF-8"?>
<emitter imageName="" name="Healing Particle">
<spawnInterval enabled="true" max="150.0" min="100.0"/>
<spawnCount enabled="true" max="3.0" min="1.0"/>
<initialLife enabled="true" max="1000.0" min="500.0"/>
<initialSize enabled="true" max="15.0" min="5.0"/>
<xOffset enabled="true" max="4.0" min="-4.0"/>
<yOffset enabled="true" max="4.0" min="-4.0"/>
<initialDistance enabled="false" max="0.0" min="0.0"/>
<speed enabled="true" max="50.0" min="12.0"/>
<length enabled="false" max="1000.0" min="500.0"/>
<spread value="40.0"/>
<angularOffset value="0.0"/>
<growthFactor value="20.0"/>
<gravityFactor value="0.0"/>
<startAlpha value="255.0"/>
<endAlpha value="0.0"/>
<color>
<step b="0.0" g="0.0" offset="0.0" r="1.0"/>
<step b="0.0" g="0.0" offset="0.336" r="1.0"/>
<step b="0.0" g="0.0" offset="1.0" r="1.0"/>
</color>
</emitter>
粒子不会出现。我也使用了这个系统。render();在渲染方法和系统中。更新(德尔塔);关于更新方法。提前谢谢
# 1 楼答案
您可以尝试使用fire发射器,它是slick2d库的一部分
http://slick.ninjacave.com/javadoc/org/newdawn/slick/particles/effects/FireEmitter.html
这对你有用吗?如果出现这种情况,您的更新/渲染方法可能无法正常工作,或者您的。XML无效。(对我来说都很好)。你的init看起来也不错。但是试试一个简单的方法。XML,您可以确定它是否有效
我经常感觉到没有粒子出现在我的手机上。XML
此外,如果您还没有阅读本教程: https://www.youtube.com/watch?v=Re5XJiWy4eQ
它提供了一个你也可以测试的演示
如果所有的演示/测试都不起作用,我假设您的计算机配置负责不显示这些粒子