小屋創作

日誌2020-09-08 17:22

【紀錄】Shader - Distance field mixed 9/8

作者:樂小呈

(◞‸◟)

今天
主專案的敵人,把死亡效果也獨立成一個模組

研究昨天不懂的 fweidth函式 (但還是不懂
然後繼續研究距離場
參考資料 https://www.ronja-tutorials.com/2018/11/17/2d-sdf-combination.html


主專案
把敵人的死亡效果也獨立成一個模組
因為會有幾種不同效果,所以也拆開用Scriptable Object模組化
之後要再添加會比較容易什麼的

fweidth
阿...什麼DDX和DDY,好像是可以取得相鄰像素的東西
因為某種GPU的特殊結構所以才能這樣,我也不懂

這東西不會常碰到,主要是用在反鋸齒上的
但這可能是修Tile map反鋸齒撕裂的方法,所以之後還得再研究

距離場
這東西真的不得了
距離場具有能夠直接與其他距離場混合的特性
而且只需要一行code...

直接相加  
return min (shapeA, shapeB)

只留交界處
return max(shapeA, shapeB)

剔除
return max(shapeA, 1 - shapeB)
對這些混合效果都是 min max就能做出來的,這就是距離場厲害的地方
所以距離場能夠渲染出任何你想得的到,能夠組合出來的形狀

包括3D 形狀,只是3D 就要用到Ray march了
有另一種技術可以用更低的運算成本做,但我還沒學到

進階的混合
簡單的就這兩個,教學裡還有更難的...跳過
之後看要不要寫一篇筆記來講距離場


大學... (◞‸◟)
晚點再發一篇來講講這幾天(◞‸◟)

19

6

LINE 分享

相關創作

[達人專欄] 【學習日誌】物件筆刷和地形筆刷

[達人專欄] 【筆記】條件判斷與變體著色器

[達人專欄] 【學習日誌】自己寫一個 One last kiss 的風格渲染 10/24

留言

開啟 APP

face基於日前微軟官方表示 Internet Explorer 不再支援新的網路標準,可能無法使用新的應用程式來呈現網站內容,在瀏覽器支援度及網站安全性的雙重考量下,為了讓巴友們有更好的使用體驗,巴哈姆特即將於 2019年9月2日 停止支援 Internet Explorer 瀏覽器的頁面呈現和功能。
屆時建議您使用下述瀏覽器來瀏覽巴哈姆特:
。Google Chrome(推薦)
。Mozilla Firefox
。Microsoft Edge(Windows10以上的作業系統版本才可使用)

face我們了解您不想看到廣告的心情⋯ 若您願意支持巴哈姆特永續經營,請將 gamer.com.tw 加入廣告阻擋工具的白名單中,謝謝 !【教學】