[問題] 3D中貼圖的順序

看板C_and_CPP作者時間15年前 (2010/07/11 23:46), 編輯推噓1(107)
留言8則, 1人參與, 最新討論串1/2 (看更多)
暑假小弟無聊想要找點有趣的事做,所以在寫一個簡單的小時鐘程式 比較特別的是想要時鐘的數字是可以旋轉的,而且希望不用DX或openGL。 所以小弟想請問一下在3D中貼圖(小弟只是要貼純色)的順序要怎麼定出來, 感覺是離映射平面越遠的應該要越先貼? 但這樣做計算會感覺很麻煩 小弟沒有電腦圖學的基礎,純粹是做好玩的。 目前做到的進度:http://ppt.cc/31Wh 平台: windows and Code::blocks 10.5 忘了說明: W A S D 是旋轉 滑鼠是平移跟縮放 -- ※ 發信站: 批踢踢實業坊(ptt.cc) ◆ From: 123.205.109.7

07/12 00:06, , 1F
如果你的物件的三角形只會出現在同一Z平面, 是可以考慮
07/12 00:06, 1F

07/12 00:06, , 2F
先對物件排序, 然後由遠的往近的畫; 不然, 就是自己模擬
07/12 00:06, 2F

07/12 00:07, , 3F
Z-buffer, 先產生一個與繪圖pixel維度相同大小的Z-buf並
07/12 00:07, 3F

07/12 00:08, , 4F
給與適當初值, 然後每個pixel你都要想辦法弄到對應的Z值
07/12 00:08, 4F

07/12 00:09, , 5F
, 在畫出來前比對Z-buffer的內容看看是不是在前面, 其實
07/12 00:09, 5F

07/12 00:09, , 6F
就是Depth-Test在做的事就對了.
07/12 00:09, 6F

07/12 00:10, , 7F
以前小弟也用BCB裡的Bitmap當color buffer, 自己硬幹一
07/12 00:10, 7F

07/12 00:11, , 8F
個簡單的3D撒點工具說....XD
07/12 00:11, 8F
謝謝 V大建議的 Z-buffer 做起來就簡單多了 再次感謝V大 我懂了 =) ※ 編輯: netsphere 來自: 123.205.109.7 (07/12 00:39) ※ 編輯: netsphere 來自: 123.205.109.7 (07/12 00:58)
文章代碼(AID): #1CEUTXHI (C_and_CPP)
文章代碼(AID): #1CEUTXHI (C_and_CPP)