我正在尝试将obj模型导入到libgdx并为其应用一种颜色 - 没有任何阴影,只有一种颜色在所有面上。
这是我在创建方法中使用的内容:
modelBatch = new ModelBatch();
ObjLoader loader = new ObjLoader();
model = loader.loadModel(Gdx.files.internal("data/test.obj"));
model.materials.add( new Material(ColorAttribute.createDiffuse(Color.GREEN)));
instance = new ModelInstance(model);
并在我的渲染方法中:
Gdx.gl.glClearColor(52 / 255f, 152 / 255f, 219 / 255f, 1.0f);
Gdx.gl.glClear(GL10.GL_COLOR_BUFFER_BIT | GL10.GL_DEPTH_BUFFER_BIT);
modelBatch.begin(perspCam);
modelBatch.render(instance);
modelBatch.end();
结果是模型是白色/浅灰色 - 为什么不是绿色?
答案 0 :(得分:7)
直接从这里:http://www.badlogicgames.com/forum/viewtopic.php?f=11&t=11115#p50125
“就是这样。在我的例子中,我尝试从模型中更改材料,但我需要更改实例:
//Example, not work:
playerInstance.model.materials.get(0).set(new ColorAttribute(ColorAttribute.Diffuse, Color.RED));
//Actual, works:
playerInstance.materials.get(0).set(ColorAttribute.createDiffuse(Color.RED));"