您好,我目前正在尝试使用 libdgx 制作一个绘图方 block 游戏,但在从类中将图像绘制到屏幕上时遇到问题。只是想知道我必须在类中传递绘制/渲染函数的参数是什么,到目前为止我的代码如下。我对使用 libdgx 编程相当陌生,因此我们将不胜感激。 谢谢
package PicrossGameObjects;
import com.badlogic.gdx.graphics.Texture;
import com.badlogic.gdx.graphics.g2d.SpriteBatch;
public class Tile {
Texture BlankTile;
Texture RedTile;
int xCoord;
int yCoord;
public Tile(int x, int y){
BlankTile = new Texture("BlankTile.png");
RedTile = new Texture("RedTile.png");
xCoord = x;
yCoord = y;
}
public void Render(SpriteBatch batch){
}
}
最佳答案
你会做这样的事情:
boolean isBlank = true;
public void render(SpriteBatch batch){
if(isBlank)
batch.draw(BlankTile,xCoord,yCoord);
else
batch.draw(RedTile,xCoord,yCoord);
}
请注意,您需要一个 boolean 变量来决定要绘制哪种图 block 。此外,为每个图 block 加载新纹理会对性能产生非常糟糕的影响。您应该阅读有关使用TextureAtlas、AssetManager 的信息。或者只是将您的纹理作为参数传递给您的图 block ,而不是每次都创建新的。
关于java - 从类 libgdx 中绘图,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/23505287/