您好,我主要是从一个名为whiteBalloon的锯齿类中绘制“ whiteballoon”的。关键是,每当我调用此类的方法render()时,我都希望能够在屏幕上具有多个精灵,彼此之间是一个克隆。下面的代码给了我一个空异常。
这是我从主循环调用的类。
class whiteBalloon{
Sprite whiteballoon;
SpriteBatch batch;
OrthographicCamera camera;
public whiteBalloon(SpriteBatch batch){
}
public void create(){
batch = new SpriteBatch();
whiteballoon = new Sprite(new Texture("white_balloon.png"));
whiteballoon.setPosition(0, 0);
camera = new OrthographicCamera(Gdx.graphics.getWidth(),
Gdx.graphics.getHeight());
}
public void render(){
System.out.println("hey");
batch.begin();
whiteballoon.draw(batch);
batch.end();
}
}
然后我用
whiteBalloon grumpface;
grumpface = new whiteBalloon();
grumpface.render();
最佳答案
您需要在grumpface.create()
之前调用grumpface.render()
或仅将create()
方法放入构造函数中:
public whiteBalloon(){
create();
}
同样,您的构造函数需要一个
SpriteBatch
对象作为参数,但是您以后不会在代码中提供它,因此它使用默认(空)构造函数而不是您创建的构造函数。