当前位置: 首页 > news >正文

UnityShaderLab —— 简单的流光shader

原理:

就是在原先的模型表面叠加一层可以流动的图片,

算法代码:

float2 tex;
tex = float2(i.uv.x - _Time.x * _Speed,i.uv.y);  fixed4 col0 = tex2D(_Tex, tex)* _Strenth;
fixed4 col1 = tex2D(_MainTex, i.uv);
return col0 + col1;

这里Speed用的float调节速度大小,strenth是调节流光图的显示的强度

效果:

完整代码如下:

Shader "Custom/TimeShader"
{Properties{_MainTex("MainTexture",2D) = "white"{}_Tex ("Texture", 2D) = "white" {}_Speed ("Speed",float) = 1.2_Strenth("Strenth",Range(0,1)) = 0}SubShader{Tags { "RenderType"="Opaque" }LOD 100Pass{CGPROGRAM#pragma vertex vert#pragma fragment frag#include "UnityCG.cginc"struct appdata{float4 vertex : POSITION;float2 uv : TEXCOORD0;float2 tex : TEXCOORD1;};struct v2f{float2 uv : TEXCOORD0;float2 tex: TEXCOORD1;float4 vertex : SV_POSITION;};sampler2D _MainTex;float4 _MainTex_ST;sampler2D _Tex;float4 _Tex_ST;float _Speed;float _Strenth;v2f vert (appdata v){v2f o;o.vertex = UnityObjectToClipPos(v.vertex);o.uv = TRANSFORM_TEX(v.uv, _Tex);o.tex = TRANSFORM_TEX(v.uv, _MainTex);return o;}fixed4 frag (v2f i) : SV_Target{float2 tex;tex = float2(i.uv.x - _Time.x * _Speed,i.uv.y);  fixed4 col0 = tex2D(_Tex, tex)* _Strenth;fixed4 col1 = tex2D(_MainTex, i.uv);return col0 + col1;}ENDCG}}
}

http://www.lryc.cn/news/191061.html

相关文章:

  • 代理IP在保护跨境商家网络安全中的重要作用
  • 2核4G服务器支持多少用户同时在线访问?卡不卡?
  • [Error]在Swift项目Build Settings的Preprocessor Macros中定义的宏无效的问题
  • 网格管理安全巡检系统—助企业全面安全检查
  • 【Java】replace替换方法
  • CentOS yum update
  • /etc/profile与~/.bash_profile的区别
  • vue+element实现电商商城礼品代发网,商品、订单管理
  • Python接口自动化-requests模块之post请求
  • DDoS检测防御实现方案
  • ArcGIS: 第二届全国大学生GIS技能大赛(广西师范学院)详解-下午题
  • vue七牛云视频直传
  • 云原生Kubernetes:K8S集群版本升级(v1.20.15 - v1.22.14)
  • VUE树结构实现
  • Node.js 正在逐渐被淘汰!Bun 1.0 正在改变 JavaScript 的游戏规则
  • [Machine Learning][Part 5]监督学习——逻辑回归
  • whistle安卓手机抓包(图文详解)
  • 【经典排序算法 time: 2023-10-12】冒泡排序(层层优化改进)
  • 【图像去噪的扩散滤波】图像线性扩散滤波、边缘增强线性和非线性各向异性滤波(Matlab代码实现)
  • 4、在docker容器内的tomcat 中发布项目
  • 数学建模——人工神经网络模型
  • java合成多个pdf为一个pdf
  • “高级Vue状态管理 - Vuex的魅力与应用“
  • Vue整合
  • 探秘PMP和六西格玛的不同:哪一个能为你的职业生涯加分?
  • 大数据学习(3)-hive分区表与分桶表
  • JS 原生实现触底加载
  • 结构体,位段!
  • 当10年程序员是什么体验?存款几位数?
  • ExoPlayer架构详解与源码分析(4)——整体架构