Java - Slick2D TileD 地图正在渲染但未显示
Java - Slick2D TileD Map is Rendering but not Showing
我正在 Java 中测试 TileD 和 Slick2D 的使用,但是当我尝试导入地图并渲染它时,渲染功能运行流畅,但地图没有显示在我的屏幕上.我的播放器显示但不显示地图。我是 java 的新手,请原谅我乱七八糟的代码。
MapRender class:
在调用 loadMap() 函数的 KeyListener 之后循环调用 render() 函数,"render" 打印到控制台,但地图从未显示。我该如何解决这个问题?
package com;
import org.newdawn.slick.SlickException;
import org.newdawn.slick.tiled.TiledMap;
public class MapRender {
private TiledMap testMap;
public boolean mapAdded = false;
public MapRender() {
}
public void render() throws SlickException {
if(mapAdded)
{
//Rendering map
testMap.render(100,100,0,0,100,100);
System.out.println("render");
}
}
public void loadMap() throws SlickException {
//Adding map
testMap = new TiledMap("maps/testMap.tmx", false);
mapAdded = true;
}
}
在 Main 中循环调用渲染 class
public static void main(String[] args) {
while(true)
{
try {
mapRender.render();
} catch (SlickException e1) {
e1.printStackTrace();
}
}
}
如有任何帮助,我们将不胜感激!
您在主函数中编写的循环不允许 Slick2D 运行 自己的任何代码来更新屏幕上的图像。因此,您的程序可能只是将地图一遍又一遍地渲染到某个不可见的缓冲区。
查看 the "Hello World" example on the Slick2D wiki 如何实现核心循环,并在其 render
方法中添加地图渲染调用。
我正在 Java 中测试 TileD 和 Slick2D 的使用,但是当我尝试导入地图并渲染它时,渲染功能运行流畅,但地图没有显示在我的屏幕上.我的播放器显示但不显示地图。我是 java 的新手,请原谅我乱七八糟的代码。
MapRender class:
在调用 loadMap() 函数的 KeyListener 之后循环调用 render() 函数,"render" 打印到控制台,但地图从未显示。我该如何解决这个问题?
package com;
import org.newdawn.slick.SlickException;
import org.newdawn.slick.tiled.TiledMap;
public class MapRender {
private TiledMap testMap;
public boolean mapAdded = false;
public MapRender() {
}
public void render() throws SlickException {
if(mapAdded)
{
//Rendering map
testMap.render(100,100,0,0,100,100);
System.out.println("render");
}
}
public void loadMap() throws SlickException {
//Adding map
testMap = new TiledMap("maps/testMap.tmx", false);
mapAdded = true;
}
}
在 Main 中循环调用渲染 class
public static void main(String[] args) {
while(true)
{
try {
mapRender.render();
} catch (SlickException e1) {
e1.printStackTrace();
}
}
}
如有任何帮助,我们将不胜感激!
您在主函数中编写的循环不允许 Slick2D 运行 自己的任何代码来更新屏幕上的图像。因此,您的程序可能只是将地图一遍又一遍地渲染到某个不可见的缓冲区。
查看 the "Hello World" example on the Slick2D wiki 如何实现核心循环,并在其 render
方法中添加地图渲染调用。