
在OpenGL中,绘制一个长方体,需要将每个顶点的坐标放在一个数组中。保存坐标时有一些技巧(由于字母下标不好表示,因此将下标表示为单引号,如A1将在后文中表示为A' ):
(1)将对立面坐标保存在相邻的位置,如坐标的保存顺序为:前面(A'ABB'),后面(D'DCC'),上面(D'A'B'C'),下面(DABC),左面(D'A'AD),右面(C'B'BC)。因为对立面的坐标除了其垂直的那根轴的坐标相反以外,其他坐标值一样:如前面和后面(垂直于z轴),x和y的坐标一模一样,z轴的坐标值刚好相反。
//前面
-1.0, 1.0, 1.0,
-1.0, -1.0, 1.0,
1.0, -1.0, 1.0,
1.0, 1.0, 1.0,
//后面
-1.0, 1.0, -1.0,
-1.0, -1.0, -1.0,
1.0, -1.0, -1

在OpenGL ES中绘制三维图形,如长方体,关键在于巧妙组织顶点坐标。通过将对立面的坐标相邻存储并确保对立面坐标对应轴的值相反,可以简化数据管理。例如,按逆时针顺序保存前面(AABB')和后面(D'DCC')的坐标,同时考虑对面的对应关系,如前面从A'开始,后面从D'开始。这种布局方式有助于优化渲染效率。
最低0.47元/天 解锁文章
540

被折叠的 条评论
为什么被折叠?



