2013-04-19 3 views
5

Я пытаюсь загрузить .obj-файлы в проект Android с помощью LibGDX. Файлы имеют файл no, но содержат материалы в файлах .mtl. Я использую последнее официальное ночное время, и рендеринг объектного файла приводит только к тому, что объект выглядит белым. Как заставить ObjLoader использовать файл .mtl?LibGDX и ObjLoader не отображаются .mtl?

@Override 
public void create() { 
    objLoader = new ObjLoader(); 
    model = objLoader.loadObj(Gdx.files.internal("data/obj.obj"), true); 
} 

@Override 
public void render() { 
    Gdx.gl.glClearColor(0, 0, 0, 0); 
    Gdx.gl.glClear(GL10.GL_COLOR_BUFFER_BIT); 
    batch.begin(); 

    model.render(); 

    batch.end(); 
} 

Так вызывается код для визуализации объекта. Вот ссылка на ObjLoader класса

https://github.com/libgdx/libgdx/blob/master/gdx/src/com/badlogic/gdx/graphics/g3d/loaders/wavefront/ObjLoader.java

Что я делаю не так? И почему он не загружает файл .mtl? Из того, что я могу понять, он должен загрузить файл .mtl, который находится в той же папке и том же имени, что и файл .obj.

EDIT я бездельничал немного, поставив несколько строк в классе ObjLoader, чтобы войти, что это и не загружается. Похоже, что он загружает файл mtl и присваивает каждому mtl экземпляру Material, а также выглядит так: obj правильно запрашивает эти материалы.

Есть ли что-то, что мне нужно включить или сделать на конце OpenGL, чтобы убедиться, что он правильно использует эти материалы?

ответ

1

ObjLoader и особенно MtlLoader, который он использует, очень ограничен. Попробуйте вместо этого использовать новый 3D api с fbx. Здесь объясняется, как загрузить модель: http://blog.xoppa.com/loading-models-using-libgdx/.

+0

Обратите внимание, что ответы только для ссылок не рекомендуется (ссылки имеют тенденцию устаревать с течением времени). Пожалуйста, рассмотрите возможность редактирования своего ответа и добавления краткого описания здесь. – kleopatra

0

я нашел тот же самый вопрос, и именно поэтому я и сообщил об этом здесь:

https://github.com/libgdx/libgdx/issues/2441

и совершил исправление к нему здесь:

https://github.com/libgdx/libgdx/commit/d7e716351d26ddfba19ce9e0b3bdfb449dbc81b7

, поддерживая практически все параметры MTL. Обратите внимание, что это WIP, и (надеюсь) войдет в багажник после его завершения.

Смежные вопросы