簡體   English   中英

OpenGL顯示清單

[英]OpenGL Display Lists

有人可以向我解釋一下一旦編譯后如何在OpenGL中修改顯示列表? 我如何執行,例如對其進行矩陣轉換?

提前致謝。

顯示列表是不可變的; 創建后就無法更改它們。 這就是他們的重點。

如果要將幾何圖形內置到可以在矩陣定義的位置渲染的顯示列表中,則只需將矩陣命令不放在顯示列表中即可。 只需將繪圖內容放入顯示列表即可。 當您要渲染該幾何圖形時,請進行設置工作(包括矩陣工作),然后執行顯示列表。

您當前的代碼如下所示:

//Every frame
glRotatef(...);
glTranslatef(...);

///More setup work.

glBegin(...);
glVertex/TexCoord/Color/etc(...);
...
glEnd();

您基於顯示列表的代碼應如下所示:

//Initialization. Done once.
glBeginList(...);
glBegin(...);
glVertex/TexCoord/Color/etc(...);
...
glEnd();
glEndList();

//Every frame
glRotatef(...);
glTranslatef(...);
...

glCallList(...);

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM