这是任天堂用GX接口做的事情......有没有办法发送一个原始类型的数组,并将顶点(或facepoints)关联到OpenGL?
在GX中,你有一个CP命令来设置原始类型,接着是顶点数,接着是由顶点属性描述的顶点数据。
接下来是另一个基本类型。
在十六进制,这看起来像:
90 0003
00 0000 0000 0000
00 0001 0001 0001
00 0002 0002 0002
0×90描述了一个三角形图元,而为0x0003描述3含有顶点(或facepoints)。
实际facepoints由属性描述:
为0x00将是XF影响矩阵索引
0×0000将是顶点索引
0×0000将是正常索引
0×0000将是UV [0]索引
注意:这些属性还可以描述更多类型的索引,甚至是直接数据。
所以我想知道是否有办法将这些数据直接传递给缓冲区并通过GPU对其进行操作。
(当然需要一些转换来使事物兼容)
我看到这被标记为可能的重复,但我没有看到链接的问题提到有关正在改变基元的任何事情......是的,这涉及索引,这已经超过了已经支持,但这不是这个问题的焦点。 – Tcll
GPU不能按原样处理顶点数据的唯一原因是因为每个顶点的数据不是一个索引而是几个。因此,多索引技术正是您所需要的。这只是一个适应GameCube特性的问题。 –