[請益] OpenGL GL_POLYGON_SMOOTH 的問題

看板GameDesign (遊戲設計)作者 (別PK我)時間15年前 (2011/01/13 05:08), 編輯推噓2(207)
留言9則, 2人參與, 最新討論串1/1
我想這對各位版上神人來說應該是新手題, 不過我實在是Google不到這怪現象的解答, 來到貴寶地向各位神人求助 =====================問題分隔線==================== 我在練習反鋸齒功能, 試過 GL_POINT_SMOOTH, GL_LINE_SMOOTH 都可以對點和線做出柔邊, 使用的混色模式是 glBlendFunc(GL_SRC_ALPHA, GL_ONE_MINUS_SRC_ALPHA) 但是當我對一個面做反鋸齒的時候, 他的四個邊有被柔化沒錯, 但是中間卻出現裂縫!? 以一個正方形來說(測試過GL_QUADS和GL_POLYGON) 原本的圖形是 ┌──┐ │  │ │  │ └──┘ 做出來的結果變成 ┌──┐ │\ │ │ \│ └──┘ 明顯被切割成兩個三角形, 更別說對一個外部載入的3d模型去做SMOOTH, 做完被切割的支離破碎...OTZ 我看到書上說在做POLYGON的SMOOTH時, 混色模式要使用 GL_SRC_ALPHA_SATURATE, GL_ONE 我置換了此模式結果畫面上的東西全都不見了... 所以我還是用前述的 GL_SRC_ALPHA, GL_ONE_MINUS_SRC_ALPHA 模式去做混色 不過兩天下來這個令人頭大的問題始終無法解決... 另外一個奇怪的事情是我把compile完的執行檔拿去同學的電腦run 結果SMOOTH的效果完全沒出來, 他們的顯卡都比我還高階的說, 網路上實在找不到有人討論過這樣的問題, 不曉得有沒有大大了解的, 還是會是我手上的OpenGL版本問題? 我使用的是Delphi的VCL來實作, 懇請大大們賜教 -- ※ 發信站: 批踢踢實業坊(ptt.cc) ◆ From: 203.145.202.83

01/14 04:17, , 1F
不曉得是不是大大們沒碰過這狀況, 我想了解一下我的用法
01/14 04:17, 1F

01/14 04:17, , 2F
跟各位前輩們在做smooth的時候是否相同, 或是我少了設定
01/14 04:17, 2F

01/14 04:19, , 3F
某些功能,剛發現打開深度測試再設glDepthFunc(GL_LEQUAL)
01/14 04:19, 3F

01/14 04:19, , 4F
有讓裂縫變細小一點, 但還是存在, 不曉得我是不是有類似
01/14 04:19, 4F

01/14 04:20, , 5F
的狀況沒有排除才會發生這種問題
01/14 04:20, 5F

01/16 23:26, , 6F
更新了OpenGL版本...換了一套SDK...還是不行QQ
01/16 23:26, 6F

01/28 10:32, , 7F
如果你是想要達到多邊型反鋸齒的效果的話
01/28 10:32, 7F

01/28 10:34, , 8F
請使用glEnable(GL_MULTISAMPLE)
01/28 10:34, 8F

01/28 10:37, , 9F
詳細的原因牽涉到點線還有三角形再做反鋸齒的實做方法不同
01/28 10:37, 9F
文章代碼(AID): #1DBXXJRV (GameDesign)
文章代碼(AID): #1DBXXJRV (GameDesign)