看板 GameDesign 關於我們 聯絡資訊
我正在研究HGE 2D引擎 這個引擎大部份基本的功能都有了 但是有些事情還是辦不到的樣子 例如我想要用一個黑與白色之類的mask,從某張材質上挖這樣一塊圖來貼 就似乎辦不到的樣子.... 想來想去好像用一些做法速度都會很慢 像是開一個暫時的texture然後混合 或lock處理 再貼之類的 因此看來不改它引擎想要有快速的mask貼圖是不太可能 於是我研究了一下它的原始碼 我發現 Direct3D 有blending stages這種東西 http://msdn.microsoft.com/en-us/library/bb206241(VS.85).aspx 也就是可以有好幾個階段(最多8個),不同的材質 不同的算法混在一起 http://www.cppblog.com/kesalin/archive/2008/03/23/45183.html 像這個範例所示的那樣 我的想法是第一個階段是基礎材質,RGBA直接進行copy 接著第二階段的材質是mask,將alpha值加上上一個材質的RGBA 這樣做就等於alpha channel加在一起 理論上是這樣,不過沒有實際玩過D3D 我以前玩的是DirectX Draw 請問這樣的做法對嗎? 我現在還沒空去實做 還有其它更好的做法嗎? 以上,謝謝 -- 哇咧咧 創意投票系統 http://walele.com 易記學 程式設計教學 http://ez2learn.com/ 易記學 程式設計討論區 http://forum.ez2learn.com VICTOR's 個人Blog http://blog.ez2learn.com/ 財報分析王 http://victorlin.serveftp.org/stock/ -- ※ 發信站: 批踢踢實業坊(ptt.cc) ◆ From: 118.170.81.89