这样加载纹理到 AssetManager
是正确的方法吗?
Texture tex;
AssetManager manager = new AssetManager();
manager.load("menu/bg.png",Texture.class);
tex = manager.get("menu/bg.png",Texture.class);
纹理加载失败,出现错误“无法加载纹理menu/bg.png”。
我们应该如何使用AssetManager
加载纹理?
这样加载纹理到 AssetManager
是正确的方法吗?
Texture tex;
AssetManager manager = new AssetManager();
manager.load("menu/bg.png",Texture.class);
tex = manager.get("menu/bg.png",Texture.class);
纹理加载失败,出现错误“无法加载纹理menu/bg.png”。
我们应该如何使用AssetManager
加载纹理?
这几乎是正确使用AssetManager的方式,但不完全正确。我建议阅读维基中关于libgdx AssetManager的内容。
一些要点:
变量应该采用驼峰命名法,所以AssetManager manager…而不是AssetManager Manager。
您需要调用manager.update()
; 来实际加载资源。必须重复调用此方法直到manager.update()
; 返回true才算完成加载。因此,您可以创建一个加载屏幕,在其中每帧调用manager.update();
,并在其返回true时切换到其他屏幕。
如果您想要加载所有内容并阻塞直到加载完成,请在尝试从管理器获取任何内容之前调用manager.finishLoading();
。
您可能需要在assets
文件夹中创建一个名为data
的文件夹,并将资产放置在其中,而不是直接放置在assets文件夹中。因此,将您的资产放置在mygame-android\assets\data
中,而不是mygame-android\assets
。
如果您正在使用gdx-setup-gui创建项目,则应该没问题。但如果不是,则桌面项目也需要知道在哪里找到资产。
如何创建具有基于libgdx的动画、响应式加载屏幕的示例。(视频)