我用libgdx做了一个网格,我试图用一些颜色填充网格。
create() {
if (bigMesh == null) {
bigMesh = new Mesh(true, 8, 8,
new VertexAttribute(Usage.Position, 3, "a_position"),
new VertexAttribute(Usage.ColorPacked, 4, "a_color"));
bigMesh.setVertices(new float[] {
0, -0.5f, -4, Color.toFloatBits(255, 0, 0, 255),
1, -0.5f, -4, Color.toFloatBits(255, 0, 0, 255),
1, 0.5f, -4, Color.toFloatBits(255, 0, 0, 255),
0, 0.5f, -4, Color.toFloatBits(255, 0, 0, 255),
1, 0.5f, -3, Color.toFloatBits(0, 255, 0, 255),
1, -0.5f, -3, Color.toFloatBits(0, 255, 0, 255),
0, -0.5f, -3, Color.toFloatBits(0, 255, 0, 255),
0, 0.5f,-3, Color.toFloatBits(0, 255, 0, 255)
});
bigMesh.setIndices(new short[] { 0, 1, 2, 3,4,5,6,7});
}
}
render(){
Gdx.gl.glClearColor(0,0,0,1);
Gdx.gl.glClear(GL10.GL_COLOR_BUFFER_BIT);
bigMesh.render(GL10.GL_TRIANGLE_STRIP);
}
我应该使用哪种渲染参数?我正在使用PerspectiveCamera。
答案 0 :(得分:0)
见http://code.google.com/p/libgdx-users/wiki/MeshColor。您可以使用整个模型的默认颜色或每顶点颜色。
您的示例中有每顶点颜色信息,因此要更改顶点所需的颜色,并在网格上重新调用setVertices
。
答案 1 :(得分:0)
要在立方体中绘制图像,在绘制网格物体之前,必须在渲染方法中添加以下两行代码。
Gdx.graphics.getGL10().glEnable(GL10.GL_TEXTURE_2D);
texture.bind();