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();
}
これは、オブジェクトをレンダリングするコードが呼び出される方法です。ここに ObjLoader クラスへのリンクがあります
私は何を間違っていますか?そして、なぜ .mtl ファイルをロードしないのでしょうか? 私が理解できることから、.obj ファイルと同じフォルダーと同じ名前の .mtl ファイルをロードする必要があります。
EDIT 私は少しいじって、ObjLoaderクラスにいくつかの行を入れて、ロードされているものとロードされていないものをログに記録しました。mtl ファイルを読み込んで、各 mtl をマテリアル インスタンスに割り当てているように見えます。また、obj がそれらのマテリアルを正しく要求しているようにも見えます。
これらのマテリアルが適切に使用されていることを確認するために、OpenGL 側で有効にするか、その他の方法で行う必要があることはありますか?