关于glCallList,假设我在显示列表上有一些命名的显示,我知道它们中的每一个都可以通过调用glCallList(i)
来重新绘制。
我的问题是-是否可以覆盖此命名显示?意思是,一旦i'st
存在,我将进行显示调用,它将存储在glCallList(i)
。
编辑:
例如,现在glCallList(1)
绘制一个立方体,我想覆盖它,并使
CCD_ 5绘制三角形。
请注意,显示列表是OpenGL最古老的部分之一,甚至在它们被正式弃用之前,它们的使用就受到了反对。它们最初的主要目的是"记录"命令序列,这些命令序列将持久地设置状态/数据,而不是现代OpenGL的状态/数据对象(例如纹理对象、顶点缓冲区对象、采样器对象等)
尽管如此,如果您向glNewList (...)
和glEndList (...)
传递一个已经有数据的句柄,那么对它们的一对调用实际上将替换一个显示列表,而不是分配一个新列表。因此,您不需要经历glDeleteLists (...)
和glGenLists (...)
的麻烦来重用同一个句柄(名称)。