3

我是一个新的 libgdx 程序员。我在Android上开发,我找到了一些关于libgdx的资料。比如Xoppa博客,我看到他写代码来加载模型,例如:公共AssetManager资产;

        asset = new AssetManager();
        asset.load("xxx.obj",Model.class);
        Model model = asset.get("xxx.obj",Model.class);

.....它可以正确显示负载模型。

但是我用这段代码加载了其他的obj文件,比如3dMax的room.obj,它不能正确显示……为什么?代码是一样的,唯一的区别是文件名....谁能告诉我?或帮助我,谢谢。

4

2 回答 2

2

首先在 OnCreate 方法中:

assets = new AssetManager();
    assets.load("data/yellow_note.obj", Model.class);
    loading = true;

添加此方法:

private void doneLoading() {
            Model ship = assets.get("data/yellow_note.obj", Model.class);
            //Here you add a model to you Array of Model Instance to render
            ModelInstance shipInstance = new ModelInstance(ship); 
            instances.add(shipInstance);
            loading = false;
        }

现在在方法 OnRender 中:

if (loading && assets.update())
                doneLoading();

在这里找到了这个解决方案。

于 2013-12-27T22:34:41.507 回答
1

您需要调用 AssetManager#finishLoading() 来加载所有资产并等待它们完成

于 2013-11-01T04:53:02.670 回答