尝试创建加载屏幕,我有一个 Assets
类和一个 LoadingScreen
类,该类立即从以下位置调用:
this.setScreen(new LoadingScreen(this));
在加载屏幕上我有这个:
public class LoadingScreen implements Screen{
final Game1 game;
Sprite LdScreen;
OrthographicCamera camera;
public LoadingScreen(Game1 gam){
game=gam;
camera = new OrthographicCamera();
camera.setToOrtho(false, 1920, 1080);
}
public void show() {
Texture LdscreenTexture = new Texture(Gdx.files.internal("data/Background.png"));
LdScreen = new Sprite (LdscreenTexture);
Assets.manager.finishLoading();
}
@Override
public void render(float delta) {
Gdx.gl.glClear(GL20.GL_COLOR_BUFFER_BIT);
camera.update();
game.batch.setProjectionMatrix(camera.combined);
game.batch.begin();
game.batch.draw(LdScreen, 0,0);
game.batch.end();
Assets.manager.update();
if(Assets.manager.update() == true){
game.setScreen(new MainMenuScreen(game));
}
}
但它总是返回并出错,就好像它尝试移动到 MainMenuScreen
类并且 Assets 未加载,如果 Assets.manager.update()< 则应该如此
是真的吗?
为什么这是一个问题?
最佳答案
这个简单的例子
.//添加到你的Class Game1
变量类
private AssetManager yourAssetManager;
创建方法
yourAssetManager = new AssetManager();
获取设置方法
public AssetManger getManger(){
return this.yourAssetManager;
}
.
public class LoadingScreen implements Screen{
final Game1 game;
Sprite LdScreen;
OrthographicCamera camera;
AssetManager yourAssetManager;
public LoadingScreen(Game1 gam){
game=gam;
this.yourAssetManager = game.getManager();
camera = new OrthographicCamera();
camera.setToOrtho(false, 1920, 1080);
}
public void show() {
使用 yourAssetManager.load(.... 加载资源
yourAssetManager.load("data/Background.png", Texture.class);
Texture LdscreenTexture = new Texture(Gdx.files.internal("data/Background.png"));
LdScreen = new Sprite (LdscreenTexture);
//Assets.manager.finishLoading();
}
@Override
public void render(float delta) {
Gdx.gl.glClear(GL20.GL_COLOR_BUFFER_BIT);
camera.update();
game.batch.setProjectionMatrix(camera.combined);
game.batch.begin();
game.batch.draw(LdScreen, 0,0);
game.batch.end();
//Assets.manager.update();
if(yourAssetManger.update()){
game.setScreen(new MainMenuScreen(game));
}
}
阅读此链接 https://github.com/libgdx/libgdx/wiki/Managing-your-assets我现在没有测试抱歉。
关于java - 加载屏幕 Libgdx Assetmanager,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/27462904/