Libgdx Box不是用颜色绘制的,而是用纹理绘制的

时间:2013-06-03 20:15:39

标签: java libgdx

我使用Libgdx new 3d Api中的ModelBuilder创建了简单的框。 我创建这样的框:

int block_size = 5;
Model cube = mBuilder.createBox(block_size, block_size, block_size,
        new Material(), Usage.Position | Usage.Color | Usage.Normal | Usage.TextureCoordinates);

然后我创建一个ModelInstance进行渲染,如下所示:

ModelInstance instance = new ModelInstance(cube);

然后我尝试设置材料:

instance.materials.first().set(TextureAttribute.createDiffuse(t)); //t is a Texture (works)

一切正常!但是,如果我使用ColorAttribute.createDiffuse(Color.RED),则不会显示任何内容!该框不可见。我不知道为什么......

instance.materials.first().set(ColorAttribute.createDiffuse(Color.RED));

我尝试删除Usage.TextureCoordinates,但它改变了任何东西。先感谢您。 MFG,    xyron

1 个答案:

答案 0 :(得分:1)

删除Usage.Color

Model cube = mBuilder.createBox(block_size, block_size, block_size,
    new Material(), Usage.Position | Usage.Normal | Usage.TextureCoordinates);