1.Shader在什么情况下使用

Decal(贴花)贴花就是类似于CF里的喷漆,或者汽车/墙上等贴一个贴纸。

image.png

2.Shader的价值(用的多不多),Shader的难度

这个应该是极少项目能用上吧。。。。没这种需求。而且Unity实现的这个过于基础,只有最基础的光照,甚至连贴花的位置啥的都不能改。

3.代码详细注释

// Unity built-in shader source. Copyright (c) 2016 Unity Technologies. MIT license (see license.txt)
//贴花
Shader "Legacy Shaders/Decal" {Properties {_Color ("Main Color", Color) = (1,1,1,1)_MainTex ("Base (RGB)", 2D) = "white" {}_DecalTex ("Decal (RGBA)", 2D) = "black" {}}SubShader {Tags { "RenderType"="Opaque" }LOD 250CGPROGRAM#pragma surface surf Lambertsampler2D _MainTex;sampler2D _DecalTex;fixed4 _Color;struct Input {float2 uv_MainTex;float2 uv_DecalTex;};void surf (Input IN, inout SurfaceOutput o) {fixed4 c = tex2D(_MainTex, IN.uv_MainTex);half4 decal = tex2D(_DecalTex, IN.uv_DecalTex);//两张贴图混合,使用lerp插值//float3 lerp(float3 a, float3 b, float w) { return a + w*(b-a); } //即lerp函数传入两个值ab,传入一个0-1的w,如果w为0则lerp=a,如果w为1则lerp=b//此处w直接使用decal的透明度,所以decal不透或半透的部分会叠加上去//alpha为0的部分不叠加//因为是在自己的颜色上处理,所以不需要开启整体材质的透明通道c.rgb = lerp (c.rgb, decal.rgb, decal.a);c *= _Color;o.Albedo = c.rgb;o.Alpha = c.a;}ENDCG}Fallback "Legacy Shaders/Diffuse"
}

4.Shader编写思路,用到的知识点

lerp插值函数
float3 lerp(float3 a, float3 b, float w) { return a + w*(b-a); }

即lerp函数传入两个值ab,传入一个0-1的w,如果w为0则lerp=a,如果w为1则lerp=b
如果w超出了0-1,自己想想会是啥效果


http://www.taodudu.cc/news/show-2775663.html

相关文章:

  • 图形杂记-Decal贴花
  • Unity 中用 Vertex Fragment Shader 实现 surface shader 中的 Diffuse 和 Decal
  • Decal的另类用法
  • [图形学] 延迟贴花渲染技术 (A Deffered Decal Rendering Technique)
  • Deferred Decal(延迟贴花)
  • [UE4]射击产生弹孔:Spawn Decal At Location、Spawn Decal Attached
  • GraphicsLab Project之简易贴画系统(Decal System)
  • PADS Logic Decal、Layout Decal绘制
  • Unity3D内置Shader私房课(三)Decal贴花
  • DCC - Photoshop - Nvidia NormalMapFilter - 法线生成工具 - 顺便测试 Unity URP 12.1 中的 Decal System
  • Deferred Decal
  • UE4 Decal 贴花不在静态光照下绘制
  • Decal Buffer相关
  • Blender学习笔记-印花(decal)贴图
  • 【游戏开发小技】Unity中实现Dota里的角色技能地面贴花效果(URP ShaderGraph Decal)
  • 【游戏开发小技】Unity中实现Dota里的角色技能地面贴花效果(URP | ShaderGraph | Decal)
  • UE4 Decal实现简介
  • (41)Decal [ 贴花] Actor
  • 游戏中的Decal(贴花)
  • 2路2U机架服务器,如何理解
  • 1u服务器系统风扇,1U工控服务器机箱介绍
  • 2u机架式服务器作用,不仅是一款通用的2U机架式服务器还具有足够的扩展力
  • 工控电脑服务器维修,2U机箱厂家分享:工控计算机电脑主板坏了如何维修?
  • 戴尔高密度服务器性能指标,PowerEdge R630:1U机身下的2U性能
  • 十次方:服务器的1U、2U、U代表什么意思?
  • 计算机主机箱进行总结,工业级主机用机箱分类总结
  • dell 2u服务器型号,DELL服务器规格参数
  • 2U 4节点Xeon SP服务器 (上):PowerEdge C6420更受重视
  • 全新型号 Dell EMC PowerEdge R750xa机架式服务器 全新型号2U
  • 支持英特尔9242的服务器,宝德2U双子星服务器PR2725TP2

Unity内置Shader解读3——Decal相关推荐

  1. unity, 内置shader下载地址

    在unity的download页面上能找到Built in shaders的下载连接. 转载于:https://www.cnblogs.com/wantnon/p/4550631.html

  2. Unity3D内置Shader私房课(三)Decal贴花

    在Unity内建Shader的DefaultResourcesExtra的目录中,有一个很简单却很实用的shader--Decal.这是一个贴花着色器,可以在模型的表面添加一个贴花纹理. Unity内 ...

  3. unity URP内置shader lit解析

    unity内置的pbr渲染shader Properties为shader相关属性 两个SubShader里面为相应的渲染内容,第二个为降级处理渲染,如果第一个SubShader不兼容,才会渲染第二个 ...

  4. 闲云野鹤:吃鸡(四)之场景制作—用unity内置草功能制作草

    先上最终效果图吧: 第一种方式:Add Grass Texture,只需要选择草的图片即可 选择Add Grass Texture此种方式unity默认mesh为一个矩形面.基本制作过程没什么值得多说 ...

  5. Unity内置资源如何打包避免冗余

    这是第249篇UWA技术知识分享的推送.今天我们继续为大家精选了若干和开发.优化相关的问题,建议阅读时间10分钟,认真读完必有收获. UWA 问答社区:answer.uwa4d.com UWA QQ群 ...

  6. Unity内置Built-in到可编程URP函数对应整理

    目录 1.总体结构 2.Shader Include 头文件 3.灯光模式 4.变种Variants 5.预处理宏 Predefined Shader Preprocessor Macros 5.1辅 ...

  7. Unity内置的三套消息发送机制的应用实例

    转自http://blog.sina.com.cn/s/blog_1491e52310102wuf6.html 代码简介 : [1] 实例中包含2个类文件, SendMessage.cs 和 Rece ...

  8. Unity 内置着色器下载方法

    Unity 内置着色器下载方法 官方下载 GitHub下载 官方下载 需要科学上网 官方下载链接 https://unity3d.com/get-unity/download/archive GitH ...

  9. Unity 内置管线Shader升级到URP详细手册

    本文转载自:https://www.jianshu.com/p/3fef69e2efb6 作为技术资料记录和备份,避免遗忘或删除 //================以下为具体内容========== ...

最新文章

  1. 干掉 ZooKeeper?阿里为什么不用 ZK 做服务发现?
  2. Python大战C++,谁能更胜一筹?
  3. 源码实战 | 本地可跑,上线就崩?慌了!
  4. TI 无桥PFC方案【转子tidu312.pdf】-----图片专帖
  5. 一个PHP使用重新整理数组的小笔记
  6. *【CodeForces - 214D 】Numbers (dp,组合数学)
  7. OpenCV_08 边缘检测:Sobel检测算子+Laplacian算子+Canny边缘检测
  8. P1948 [USACO08JAN]Telephone Lines S(二分+spfa)
  9. 【Kudu-未解决】Kudu : Kudu error: Could not connect to a leader master. Client configured with 1 master
  10. 66.为什么有时候在ISE软件中,顶层文件不能置顶?
  11. 算法设计与分析重点总结
  12. 程序员必备的10款工具软件!最后一款简直绝了!
  13. 淘宝被中差评了应该怎么办
  14. EDEM软件简单介绍
  15. 工业相机 - - 线阵相机
  16. 老牛知点所以然-Qt安装后一行命令解决:libxcb-util.so.1 => not found
  17. 第十章:动态组件,插槽,自定义指令
  18. php实现的单例模式
  19. 《敏捷开发一千另一夜》 读后感1
  20. pdn阻抗测试_毫欧级电源分配网络PDN的输出阻抗和传输阻抗测量

热门文章

  1. psa加密_PSA:请注意这种新的Google翻译网络钓鱼攻击
  2. bert-textcnn实现多标签文本分类(基于keras+keras-bert构建)
  3. 实验六 配置GVRP协议
  4. 视频号小程序也能投放朋友圈引流变现了;附带视频号运营手册丨国仁网络
  5. office 2010 ppt 添加音乐等相关问题
  6. Python并发编程之线程的玩法
  7. HIDS-ebpf-0
  8. 最优秀好用的免费文件压缩/解压缩工具软件 (可替代WinRAR与7-Zip)——Bandizip
  9. Arduino 高级教程 01:基础篇
  10. mysql高级教程(一)