效果图:

Shader "Unlit/test_2"
{Properties{_MainTex ("Texture", 2D) = "white" {}_OutColer("OutColor",Color)=(1,0,0,1)   //振幅颜色_OutDis("OutDis",Float)=0.100   //振幅幅度_OutTime("OutTime",Float) =0.5  //振幅一次的时间_AlphaVaue("_AlphaVaue",Range(0,0.5))=0.1_ShowOpen("ShowOpen",int)=0}SubShader{Blend SrcAlpha OneMinusSrcAlpha  //Blend混合命令Tags {  "Queue"="Transparent" "IgnoreProjector"="True" "RenderType"="Transparent"}LOD 100Pass{//剔除正面ZWrite Off      //关闭深度写入//Cull FrontCGPROGRAM#include "UnityCG.cginc"#pragma vertex vert#pragma fragment fragfloat _OutDis;float _OutTime;fixed4 _OutColer;sampler2D _MainTex;float _AlphaVaue;struct v2f{float2 uv : TEXCOORD0;float4 pos : SV_POSITION;};v2f vert(appdata_full  v){在vert阶段让模型的每个顶点沿着法线方向偏移指定的距离//v.vertex.xyz+=normalize(v.normal)*_OutDis/3*abs(_Time.y%_OutTime);//v2f o;//o.pos = UnityObjectToClipPos(v.vertex);//return o;v2f o;o.pos = UnityObjectToClipPos(v.vertex);float3 vnormal = mul((float3x3)UNITY_MATRIX_IT_MV, v.normal);//将视空间法线xy坐标转化到投影空间float2 offset = TransformViewToProjection(vnormal.xy);//在最终投影阶段输出进行偏移操作o.pos.xy += offset * _OutDis*abs(_SinTime.w)/**abs(_Time.y%_OutTime)*/;return o;}fixed4 frag (v2f i) : SV_Target{fixed4 col = tex2D(_MainTex, i.uv);// apply fogUNITY_APPLY_FOG(i.fogCoord, col);col.a=_AlphaVaue;return col;}ENDCG}Pass{CGPROGRAM#pragma vertex vert#pragma fragment frag// make fog work#pragma multi_compile_fog#include "UnityCG.cginc"struct appdata{float4 vertex : POSITION;float2 uv : TEXCOORD0;};struct v2f{float2 uv : TEXCOORD0;UNITY_FOG_COORDS(1)float4 vertex : SV_POSITION;};sampler2D _MainTex;float4 _MainTex_ST;v2f vert (appdata v){v2f o;o.vertex = UnityObjectToClipPos(v.vertex);o.uv = TRANSFORM_TEX(v.uv, _MainTex);UNITY_TRANSFER_FOG(o,o.vertex);return o;}fixed4 frag (v2f i) : SV_Target{// sample the texturefixed4 col = tex2D(_MainTex, i.uv);// apply fogUNITY_APPLY_FOG(i.fogCoord, col);return col;}ENDCG}}
}

吭吭唧唧写shader--呼吸效果(我也不知道叫啥)相关推荐

  1. unity 2020 怎么写shader使其接受光照?_如何在Unity中造一个PBR Shader轮子

    之前有业界大佬建议我去了解下Unity的PBR.说来惭愧,我查找了下资料才发现自己在这方面的知识居然是一片空白.经过几周的学习与尝试我对这一块算是有了初步的了解,于是写了这篇文章,一方面对自己学到的东 ...

  2. STM32通过串口控制LED闪烁或者呼吸效果

    STM32通过串口控制LED闪烁或者呼吸效果 目录 STM32通过串口控制LED闪烁或者呼吸效果 1.准备工作 2.思路分析 3.实际操作 4.小结 1.准备工作 1.首先我们需要准备32的最小系统板 ...

  3. 在微信小程序中实现文字呼吸效果

    之前写过一篇文章介绍了在网页中使用js实现文字的呼吸效果,点击跳转,但是这种方式里边通过style设置文字样式,在wxml中标签里面的运用是不可行的,因此需要探究一种新的设置方式. wxml代码 &l ...

  4. 自己写Shader-翻书效果

    尝试练习翻书效果shader的制作 思路 翻页原理 直翻页: 思路: 代码: 总结: 曲线从一角翻页 思路: 效果 把效果和数学联系起来 角翻页有点复杂,,, 思路 直直的翻页,即将页面旋转180完成 ...

  5. Shader各种效果

    1.Shader1.0的Alpha测试 Shader "Hidden/AlphaTestShader1.0" {Properties{_MainTex ("Texture ...

  6. UI shader图片效果处理

    图片处理 unity 可以直接写shader对图片处理,调节图片的 亮度,饱和度,对比度 目录 图片处理 前言 一.图片调节 二.Unity 中的shader 实现 1. 亮度,饱和度,对比度 2.效 ...

  7. 如何用C语言做PONG游戏,[Unity 3d] 如何优雅的写一个PingPong效果

    PingPong效果在 Unity 真的是随处可见:来回运动啦,呼吸灯啦,活塞运动啦,渐隐渐显啦,今天笔者就用两种方式教大家写下这个简单而常见的动画效果. 1. DoTween 借助Dotween,我 ...

  8. 自己写Shader—【shader的几种制作思路】

    制作二维效果时: 可以对UI组件(Image)上挂载新的shader材质来实现效果.注意:需要写shader时对UI做一些特殊支持[否则一些UI的特性会覆盖掉,例如mask遮挡无效等.] 可以提取un ...

  9. Android关于绘图中Shader 的效果(中级)

    Android关于绘图中Shader 的效果(中级) 关于绘图中Shader 的效果 本人对API中Shaser的参数理解不够深刻 所以只能测试来看 效果一下就看出来了 Shader mShade=n ...

最新文章

  1. linux意外重启分析,Linux关机重启流程分析
  2. 已解决:Connecting to raw.githubusercontent.com |185.199.109.133|:443... Unable to establish SSL connect
  3. linux下用C语言实现TCP/IP服务器与客户端互相发送数据的socket编程
  4. 升级bios_ThinkPad如何升级BIOS?我来教你!
  5. JMeter性能测试入门
  6. Java常用spark的pom.xml与读取csv为rdd到最终join操作+java常用pom.xml文件
  7. python json.load_python 读写json文件(dump, load),以及对json格式的数据处理(dumps, loads)...
  8. Xamarin.Forms 5.0 项目实战发布!
  9. 百度地图描绘轨迹html,百度地图API 绘制轨迹历史
  10. wowza rtsp_使用wowza和xuggler将RTMP转为RTSP
  11. opencv配置原理
  12. python的一些基础小结总结
  13. 解决「matplotlib 图例中文乱码」问题
  14. 老挑毛 win7 linux,图解老挑毛u盘启动工具怎么重装系统
  15. 资产管理软件 GLPI的安装(转)
  16. pytorch+cuda+cudnn下载、安装和配置
  17. 俄罗斯方块菜单c语言,飞机游戏、俄罗斯方块、贪吃蛇C语言代码
  18. Flask + PostgreSQL部署在Heroku上的薅羊毛线报网站
  19. Minidump方式保留程序崩溃现场
  20. ReportMachine

热门文章

  1. 设置局域网共享硬盘以及其他电脑访问该硬盘
  2. 【程序员面试】最全指南,如何准备,如何投递,以及面试攻略大全分享!
  3. 最少钱币数(动态规划)
  4. vue3 Suspense 异步请求组件使用
  5. iOS版莆田系医院查询(Go+Swift实现)
  6. TP5放到线上lnmp环境 无法访问,以及隐藏inde.php 我的解决步骤
  7. 美国大学专业排名一目了然 备战雅思是梦想实现的第一步
  8. 软件分析_csdn app
  9. 模拟存取款-异常(根据输入的过程,判断账户是否有钱?(要求用异常做) 输入一个整数n,之后n行输入相应的金额,整数为存款,负数为取款,输出最终的余额,若某一过程余额为负,直接抛出异常,并显示余额不足)
  10. 深入理解JVM第六章笔记