我需要使用Java slick lib创建一个固定大小的2D网格,例如20x20。目前我有一个包含符号(Text)的数组[] []。这些符号代表板上不同的瓷砖(方块)。
我知道如何在屏幕上渲染/绘制单个图像,但不知道如何为网格做同样的事情(循环?对游戏来说渲染不是太多吗?)。我应该研究一下spritesheets的概念吗?
理想情况下,我想到了创建
我不知道如何在屏幕上绘制/渲染它。我也应该首先在下面的 init 方法中绘制它并且随着游戏开始在更新方法中重新绘制?
非常感谢您的指导。
import org.newdawn.slick.*;
import org.newdawn.slick.state.*;
public class GameplayState extends BasicGameState {
public GameplayState(int stateId){
}
public void init(GameContainer container, StateBasedGame game)
throws SlickException {
}
public void render(GameContainer container, StateBasedGame game, Graphics g)
throws SlickException {
}
public void update(GameContainer container, StateBasedGame game, int delta)
throws SlickException {
}
public int getID() {
return 1;
}
}
答案 0 :(得分:0)
我会使用TileD:http://www.mapeditor.org/
Slick2D支持Tiled的.tmx文件。使用符号创建20 x 20平铺地图。您可以访问切片贴图中的每个切片及其属性(位置,图层和Tiled中定义的其他自定义属性)。而且,最好的是你不必渲染整个地图。您可以根据需要只渲染其中的一部分。看看这里,在Slick2D维基:
http://slick.ninjacave.com/wiki/index.php?title=TileD_Import_and_Usage
您也可以在javadoc中查看它:http://slick.ninjacave.com/javadoc/
说您是否需要有关代码的帮助。 N,N-