我有一个从Renderables中的数据生成的网格物体。环境已经确定。材料很简单new Material()
。
... /*init renderable*/
/*set mesh parameters*/
renderable.mesh = new Mesh(false,
(int)(meshVertexArray.length/SurfaceBuilder.__ELEMENTSPERVERTEX__), /*!vertices, not cordinates*/
meshIndexArray.length,
new VertexAttribute(Usage.Position,3,"a_position"),
new VertexAttribute(Usage.Normal,3,"a_normal"),
new VertexAttribute(Usage.TextureCoordinates,2,"a_texCoords"),
new VertexAttribute(Usage.ColorPacked,4, "a_color")
);
... /*set vertices*/
网格生成正确,但我看不到纹理,只看到灰色(阴影)三角形。我确实尝试过rtfm方法,但到目前为止我看不到绑定纹理,所以它在libGDX中正确显示,只有着色器,我没有使用它们(我正在实现这个功能后赶上它们) )。在没有着色器的情况下,libGDX中有没有办法将纹理绑定到网格?
答案 0 :(得分:1)
如果没有看到纹理代码,可以尝试使用以下格式为材质指定纹理:
Material mat = new Material();
//set the diffuse channel on the texture using some texture
mat.set(TextureAttribute.createDiffuse(new Texture("crate.jpg")));