3d - Libgdx将颜色应用于模型实例不起作用

标签 3d libgdx

我正在尝试将obj模型导入libgdx并对其应用一种颜色-完全不着色,所有面上只有一种颜色。

这是我在create方法中使用的:

    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();

结果是模型是白色/灰色的-为什么它不是绿色的?

最佳答案

直接从这里:http://www.badlogicgames.com/forum/viewtopic.php?f=11&t=11115#p50125

“就是这样。在我的示例中,我尝试更改模型中的 Material ,但是我需要更改实例:

//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));"

关于3d - Libgdx将颜色应用于模型实例不起作用,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/19283327/

相关文章:

java - 如何检查矩形和TextureRegion LibGDX之间的交集?

java - 如何在 libGDX 框架中匹配用户点击和 sprite 对象位置

plot - Gnuplot 3D - 绘制散点和它们之间的表面*和*线

c# - WPF 中 3D 表面问题的图像缩放质量

opengl - 在 3D 框上均匀生成点

math - 使用两个 float 存储 3D 法向量的有效方法

java - Box2d 实体非常靠近,正在获取 "stuck"

java - 获取多边形体的顶点列表

android - 如何使用scene2d绘制TiledMap

javascript - 如何使用velocity js创建3D显示和隐藏动画