Okey Im只是在libgdx中與AssetManager一起掙扎。我跟着每一個教程,閱讀每一個wikipage,但我不能得到它的工作。Libgdx:AssetManager未加載資產
資產類別:
public class Assets {
private static final AssetManager manager = new AssetManager();
public static final String background = "data/lawn.png";
public static void load() {
manager.load(background, Texture.class);
}
public static void dispose() {
manager.dispose();
}
public static boolean update() {
return manager.update();
}
主要類:
public class TombStone extends Game implements Screen {
@Override
public void create() {
Assets.manager.update();
}
,我打電話給我的紋理像這樣的屏幕類:
public class StoneScreen implements Screen{
public Texture texture;
public StoneScreen(TombStone gam){
loadStandard();
}
public void loadStandard() {
texture= Assets.manager.get(Assets.background, Texture.class);
}
所以,當我運行程序的時候,在顯示給我的任何東西之前崩潰: 「致命的例外:GLThread 32182」「資產不是loade d:資產/數據/ lawn.png」
通常情況下,您不需要將'assets /'作爲路徑的一部分。它希望路徑*相對*到資產目錄。並且不要讓您的AssetManager引用爲靜態,否則您將有內存泄漏和損壞的紋理。 – Tenfour04 2015-04-03 03:49:00
我不同意這一點。我在我所有的遊戲中都有一個靜態的AssetManager,它工作得很好。只要您正確實施生命週期方法並在適當的時間執行'Assets.manager.dispose()',這不會導致任何問題。另外,它非常方便! – noone 2015-04-03 06:09:31