3

libgdx に問題があり、モデルを任意の形式でロードすると、テクスチャが正しく表示されません。この問題の原因がわかりません。

例: 3ds max またはブレンダーでは、次のようになります。

しかし、それをlibgdxプロジェクトに入れると、次のようになります

私のコードはhttp://blog.xoppa.com/loading-models-using-libgdx/に基づいています

そして、私は運が悪いライトの有無にかかわらずそれを試しました

コード:

//Loading the model
    assetManager = new AssetManager();
    assetManager.load("data/models/M4A1 SOPMOD/M4A1 SOPMOD.g3db", Model.class);
//..................................................
//Calling to an object and drawing it
public void create()
modelBatch = new ModelBatch();
    box = Assets.assetManager.get("data/models/M4A1 SOPMOD/M4A1 SOPMOD.g3db", Model.class);
    //box = Assets.getModelByName("M4");
    //box = modelBuilder.createBox(1f, 1f, 1f, new Material(ColorAttribute.createDiffuse(Color.WHITE), ColorAttribute.createSpecular(Color.WHITE), FloatAttribute.createShininess(64f)), Usage.Position | Usage.Normal);
    boxInstance = new ModelInstance(box);
    lights = new Lights();
    lights.ambientLight.set(1f, 1f, 1f, 1f);
    lights.add(new DirectionalLight().set(1f, 1f, 1f, -1f, -0.8f, -0.2f));
}

public void Update(float deltaTime)
{
    dotd.camera.rotateAround(Vector3.Zero, new Vector3(0, 1, 0), deltaTime* 50.0f);
    dotd.camera.update();
}

public void Render()
{
    modelBatch.begin(dotd.camera);
    modelBatch.render(boxInstance, lights);
    modelBatch.end();
}
4

1 に答える 1