转载请标明出处http://www.cnblogs.com/zblade/ 

    在实际的游戏工程中,经常美术和策划会提出溶解的表现要求。比如子弹在飞行的时候,弹道不断的消融;角色受到大型炮弹的攻击,在击飞的时候不断的消融等等诸如此类的表现。一般的消融都是结合粒子系统来实现,通过给粒子Render组件添加material来实现表现。

  通过总结我在项目中用到的消融shader,以及在网上查找到的部分消融shader,我做一个基本的shader归类,便于今后的思路查找,其中有任何错误请指出,大家一起学习进步。

  实现溶解效果,基本方法是用一个基本纹理贴图+无序图来实现溶解的效果,基本纹理贴图用来表示正常的效果,无序图则表示消融的参考值。通常对消融图是让美术做一张层级图,其中rgba四个通道任意选一个通道作为溶解的无序通道。

  下面我先列出参考的一些shader的实现:

  1、基本的实现单次溶解的vert/frag shader

移动开发培训,Android培训,安卓培训,手机开发培训,手机维修培训,手机软件培训

Shader "Esfog/Dissolve" {
    Properties 
    {
        _MainTex ("Base (RGB)", 2D) = "white" {}
    &nb