看板 C_and_CPP 關於我們 聯絡資訊
glClear(GL_COLOR_BUFFER_BIT| GL_DEPTH_BUFFER_BIT); glMatrixMode(GL_MODELVIEW); glEnable(GL_BLEND); glBlendFunc(GL_ONE, GL_ONE); glLoadIdentity(); glColor3f( 0.2, 0.2, 0.6); glCallList( list_A ); glCallList( list_B ); 畫其他點、線、面 用glClear會把畫面全部清除,但若只想每次將list_B清除, 其他圖形保留,請問有相關的語法可以使用嗎? -- 我是麵T,哩賀 http://ppt.cc/-eS5 -- ※ 發信站: 批踢踢實業坊(ptt.cc) ◆ From: 140.117.196.151 ※ 編輯: noodleT 來自: 140.117.196.151 (09/16 00:17)
azureblaze:if(!clear) glCallList(list_B); 就不要畫他就好了? 09/16 01:35
?不懂 我目的是要畫一台車(list_B),車會隨時間移動, 但場景(list_A)要固定, 另外也要加入車子(list_B)的軌跡。 比較麻煩的是軌跡的部分,目前做法是: 用陣列儲存軌跡的座標,每次清空圖面後重畫一次軌跡,這做法感覺太不經濟了。 所以才會想問可不可以清除特定對象(list_B)就好, 剩下的場景、軌跡仍然留著,如此一來就不用另外紀錄軌跡了。 ※ 編輯: noodleT 來自: 140.117.196.151 (09/16 02:29)
elenya:假設可以"擦掉"一個物體好了,擦掉後露白的部份要畫什麼上去 09/16 03:03
elenya:你還不是得把全部的物件都畫一次,不然怎麼知道露出來的是啥 09/16 03:04
Bencrie:有啦 ... 搞 pre-render 那招,不動的東西畫好連 depth 存 09/16 08:51
Bencrie:起來放著,之後只要先貼圖再畫 list_B 這樣 09/16 08:52
noodleT:B大可以再說詳細一點嗎? 09/17 09:46