使用Shader實現(xiàn)游戲模型像素風(fēng)格
2022-09-27 15:34 作者:游戲開發(fā)RAIN | 我要投稿
像素風(fēng)格的游戲在沒有智能機(jī)的時代還是非常受歡迎的,因為那時候也沒啥高質(zhì)量的游戲了。比如超級瑪麗,魂斗羅,多經(jīng)典的游戲啊。即使現(xiàn)在也是有這類游戲的,只不過效果比之前要好很多了,但是感覺沒有像素的那個味道了。玩魂斗羅,超級瑪麗還是玩像素版的有味道哈哈。今天分享一個像素風(fēng)格Shader的做法。如圖:

它的貼圖本來不是這樣的,是用了像素Shader過后的效果。那么這個像素效果怎么做呢?我們接下來往下看。
其實像素Shader的原理很簡單,我們就是通過對紋理UV坐標(biāo)的值進(jìn)行操作,然后讓它丟失精度。從而實現(xiàn)的。那么具體是怎么做的呢?我們首先可以對UV坐標(biāo)進(jìn)行整體的放大幾個倍數(shù),然后把它變?yōu)檎?,再縮小原來大小。這樣一來,我們UV的精度就變化了,就會丟失一些精度。這時候再讓不滿足條件的部分看不見,也就是剔除操作。最終就能達(dá)到我們想要的效果了。這里先上代碼圖;

這樣就能達(dá)到我們想要的效果了。其實這個效果非常的簡單,不難。同樣的,它不就可以適用于做像素效果,像屏幕后處理效果比如馬賽克這種,都可以用這個方法來做的。只不過需要多操作一些部分。然后至于這個像素程度的操作,我們可以在C#里面進(jìn)行操作。通過滑動條進(jìn)行操作,修改shader中的像素值,然后應(yīng)用起來,這樣就能方便用戶隨意操作了。好了,本次的分享就到這里了
標(biāo)簽: