Unity3D开发之像素化Shader效果

发表于2016-05-28
评论0 4.9k浏览

1、前言

        最近很多像素风格的独立游戏掀起了一股风,但其实我本人并不怎么感冒这种风格的,纯粹为了实现一下这种效果,仅供参考。

 

2、分析

        其实像素风格的纹理跟我们正常看到的纹理是一样的,只是把一张图的精细分布像素格重新取样得到一个比较大的区域的新纹理而已。简单来说,同个大小的区域,填充的精细度越高,真实的图像还原度就越高了:


 —>


其中的对应像素色变换:


 

3、实现

       大概思路就是把一张2维的纹理根据长跟宽取样数量成一个个固定的像素格填充到原纹理中。下面是实现的关键部分



        其实只要理解了原理的话,实现起来也不难。下面是参数不一样的效果图:


取样长宽256*256,像素格大小5*5

取样长宽128*128,像素格大小5*5

原图

    相关的shader已上传附件。

如社区发表内容存在侵权行为,您可以点击这里查看侵权投诉指引