我正在尝试将没有纹理文件,但包含.mtl材质文件的.obj文件加载到使用LibGDX的Android项目中。我正在使用最新官方版本,但仅呈现物体会导致物体呈现为白色。如何让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文件?据我所知,它应该加载与.obj文件同名且在同一文件夹中的.mtl文件。
编辑: 我已经尝试了一些措施,在ObjLoader类中添加了一些记录日志的行。看起来它正在加载mtl文件,并将每个mtl分配给Material实例,obj也正确地要求使用这些材料。
是否需要在OpenGL端启用或采取其他措施来确保正确使用这些材料?