java有没有一种在openGL上绘制立方体而不必指定每个坐标的方法?
当我在从事3D图形项目时,我经常会遇到绘制立方体的问题。问题是,到目前为止,除了指定每个顶点、法线和偶尔的纹理坐标,我还没有找到更好的方法来绘制一个。考虑到立方体的规则性,我不能动摇那种感觉,那就是一定有更好的方法
那么,有没有比这更简单的方法:
putNormal(geometryBuffer, 0, 0, 1);
putVertex(geometryBuffer, x, y, 1);
putNormal(geometryBuffer, 0, 0, 1);
putVertex(geometryBuffer, x + 1, y, 1);
putNormal(geometryBuffer, 0, 0, 1);
putVertex(geometryBuffer, x + 1, y + 1, 1);
putNormal(geometryBuffer, 0, 0, 1);
putVertex(geometryBuffer, x, y + 1, 1);
putNormal(geometryBuffer, -1, 0, 0);
putVertex(geometryBuffer, x, y, 0);
putNormal(geometryBuffer, -1, 0, 0);
putVertex(geometryBuffer, x + 1, y, 0);
putNormal(geometryBuffer, -1, 0, 0);
putVertex(geometryBuffer, x + 1, y, 1);
putNormal(geometryBuffer, -1, 0, 0);
putVertex(geometryBuffer, x, y, 1);
//and so on..
# 1 楼答案
使用包} 中的方法^{} ,如下所示:
com.jogamp.opengl.util.gl2
中类^{# 2 楼答案
openGL实用程序库(GLU)为球体、nurbs、二次曲面(不是立方体)等更复杂的形状提供了一些实用程序,但尽管立方体速度很快,程序员倾向于以不同的方式布置面,并对每个顶点绑定多少东西有不同的想法,所以这并不像人们想象的那么明显
有关更多信息,请访问:http://www.glprogramming.com/red/chapter11.html