opengl重新编译显示列表

时间:2010-10-17 06:53:38

标签: c++ c opengl

如果要重新编译现有的编译显示列表,是否需要先调用glDeleteLists()和glGenLists()?或者可以通过在现有的编译显示列表ID上调用glNewList()来重新编译显示列表?

1 个答案:

答案 0 :(得分:4)

只需调用glNewList / glEndList即可。

请注意,删除仅在glEndList调用中生效:

If a  display list with name `list` already exists, 
it is replaced only when glEndList is called.

如果您希望先前释放上一个列表,那么请务必致电glDeleteLists。明确肯定不会受到伤害。

最后一点......从不需要glGenLists。你总是可以在任何正整数上调用glNewList,即使它不是通过glGenLists提供的。 glGenLists API的主要原因是确保名称尚未使用。但是你已经知道如果你刚刚删除了它。