小编cav*_*eca的帖子

LibGDX和ObjLoader没有显示.mtl?

我正在尝试使用LibGDX将.obj文件加载到Android项目中.这些文件没有纹理文件,但包含.mtl文件中的材质.我每晚使用最新的官方文件,渲染对象文件只会导致对象显示为白色.如何让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();
}
Run Code Online (Sandbox Code Playgroud)

这就是调用渲染对象的代码的方式.这是ObjLoader类的链接

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

我究竟做错了什么?为什么不加载.mtl文件?根据我的理解,它应该加载.mtl文件,该文件与.obj文件位于同一文件夹和同名文件中.

编辑 我已经搞砸了一些,在ObjLoader类中添加一些行来记录它是什么而不是加载.看起来它正在加载mtl文件,并将每个mtl分配给一个Material实例,它看起来似乎obj正确地要求这些材料.

我需要在OpenGL端启用或以其他方式执行此操作以确保它正确使用这些材料吗?

android opengl-es wavefront libgdx

5
推荐指数
1
解决办法
2346
查看次数

标签 统计

android ×1

libgdx ×1

opengl-es ×1

wavefront ×1