【发布时间】:2014-02-11 18:53:44
【问题描述】:
最奇怪的事情正在发生,我想不通。我正在制作一个 StateBasedGame,并且在其中一个 BasicGameStates 中,我正在尝试绘制图像。不过,它显示为白色。代码:
@Override
public void render(GameContainer arg0, StateBasedGame arg1,
Graphics g) throws SlickException {
// TODO Auto-generated method stub
g.setBackground(Color.blue);
Image image = new Image("res/Sniper Scope (Border).png");
g.drawImage(image, 230,100);
}
它似乎正在寻找图像(它不会崩溃),但出现的只是这个:
任何帮助将不胜感激。
【问题讨论】:
-
这是对slick中使用的render方法的不当使用。经验法则是永远不要声明/初始化变量(尤其是图像,因为没有时间处理图像)或在渲染线程中执行任何类型的繁重逻辑。你的游戏运行的方式,会在游戏的每一个滴答声中初始化并加载该图像,这将大致在你拥有的任何 FPS 左右,并且过于繁重而无法处理。