原标题:Unity Shader 边缘高亮、描边

// Upgrade NOTE: replaced 'mul(UNITY_MATRIX_MVP,*)' with 'UnityObjectToClipPos(*)' Shader "Outlined/Silhouetted Diffuse" { Properties { _Color ("Main Color", Color) = (.5,.5,.5,1) _OutlineColor ("Outline Color", Color) = (0,0,0,1) _Outline ("Outline width", Range (0.0, 0.03)) = .005 _MainTex ("Base (RGB)", 2D) = "white" { } } CGINCLUDE #include "UnityCG.cginc" struct appdata { float4 vertex : POSITION; float3 normal : NORMAL; }; struct v2f { float4 pos : POSITION; float4 color : COLOR; }; uniform float _Outline; uniform float4 _OutlineColor; v2f vert(appdata v) { // just make a copy of incoming vertex data but scaled according to normal direction v2f o; o.pos = UnityObjectToClipPos(v.vertex); float3 norm = mul ((float3x3)UNITY_MATRIX_IT_MV, v.normal); float2 offset = TransformViewToProjection(norm.xy); // o.pos.xy += _Outline; o.pos.xy += offset * _Outline; o.color = _OutlineColor; return o; } ENDCG SubShader { Tags { "Queue" = "Transparent" } // note that a vertex shader is specified here but its using the one above Pass { Name "OUTLINE" Tags { "LightMode" = "Always" } Cull Off ZWrite Off ZTest Always ColorMask RGB // alpha not used // you can choose what kind of blending mode you want for the outline Blend SrcAlpha OneMinusSrcAlpha // Normal CGPROGRAM #pragma vertex vert #pragma fragment frag half4 frag(v2f i) :COLOR { return i.color; } ENDCG } Pass { Name "BASE" ZWrite On ZTest LEqual Blend SrcAlpha OneMinusSrcAlpha Material { Diffuse [_Color] Ambient [_Color] } Lighting On SetTexture [_MainTex] { ConstantColor [_Color] Combine texture * constant } SetTexture [_MainTex] { Combine previous * primary DOUBLE } } } Fallback "Diffuse" } 返回搜狐,查看更多

责任编辑:

unity描边发光shader_Unity Shader 边缘高亮、描边相关推荐

  1. unity描边发光shader_unity shader实例#1 轮廓渲染-描边

    本文主要来讲几种描边的实现方法 1.法线外扩 一般期望的描边效果,就是在模型外面有一圈选边,因此我们可以把模型扩大一点点,利用这个扩大的边缘来实现描边效果.可以看出,扩大的方向其实就是法线的方向,边缘 ...

  2. unity shader遮挡边缘光描边

    Shader "Unlit/遮挡边缘光描边" {Properties{_MainTex("Texture", 2D) = "white" { ...

  3. Unity UGUI 边缘泛光 描边 的简单实现

    先看效果 该效果是RawImage组件下实现.单纯Shader实现,不用c#辅助,当然,肯定也有缺点,在一些场合下或许不适用,我也希望能最大化适用,奈何技术有限.网上看过一些实现有些只适合3D,并且不 ...

  4. 该如何在后期处理中,实现高亮描边的效果?

    因为项目需要实现高亮描边的效果,一开始先尝试了<火炬之光>使用的光照的高亮描边.就是计算法线和Camera的夹角来计算光照,越靠近边缘的地方法线和Camera夹角越大顶点越亮.但是感觉效果 ...

  5. Shader 轮廓线(描边)总结

    在<Real Time Rendering, third edition>一书中,作者把轮廓线的实现方法分成5种类型 基于观察角度和表面法线的轮廓线渲染 过程式几何轮廓线渲染,使用两个Pa ...

  6. Unity HilightingSystem屏幕后实现物体外发光描边效果

    Unity实现物体外发光描边效果方式有好几种,如重叠放大模型描边Pass.卷积核描边.屏幕后处理等. HIightingSytem使用了屏幕后期效果实现,效果如下: 整理出核心代码如下,主要分为4个步 ...

  7. Unity URP渲染管线使用边缘高亮插件

    在URP渲染管线下使用物体边缘高亮插件 Outline 链接:https://pan.baidu.com/s/1r_YWCo9yxnrBdf9u_cTZmA 提取码:099y 按照上面的步骤 对Out ...

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

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

  9. unity 全息和xRay shader

    unity 全息和xRay shader 这个是网上的效果,科幻的感觉是不是很强烈. 下面是我们去实现的效果. 先看下效果图,左边的是Xray的效果,右边是全息的效果.都有着异曲同工的妙处. 全息的效 ...

  10. 在Unity 3D中,shader是何时编译的,在何时加载入显存中的?

    在Unity 3D中,shader是何时编译的,在何时加载入显存中的? 是某一对象在实例化时,加载其相关的material与shader还是游戏开始时? 添加评论 分享 按时间排序按投票排序 4 个回 ...

最新文章

  1. 如何在HHDI中进行数据质量探查并获取数据剖析报告
  2. MFC给按钮添加皮肤
  3. 综合应用WPF/WCF/WF/LINQ之三:采用用代码创建的方式实现CheckListBox的CustomControl
  4. Ubuntu18.4 中 eBPF bcc环境搭建
  5. c++ opencv Rectangle
  6. mysql error 1236_解决MySQL数据库同步1236错误
  7. 短视频未来3年的规模为3万亿元
  8. NLP:以周杰伦的《Mojito》歌词为例字符串切分之清除一段由列表组成的字符串文本中的所有杂乱符号
  9. 2022-02-13
  10. 遇到的Ajax相关问题
  11. OriginPro 2021 for win 科学绘图软件最新版 中英文 完美稳定附下载安装使用教程
  12. 随身风暴英雄接入云信,玩家即时通讯轻松搞定
  13. Object之defineProperty
  14. 面试时如何优雅地自我介绍?
  15. Asp.Net MVC4入门指南(9):查询详细信息和删除记录
  16. angular和react_如何在Angular中验证默认和自定义React形式
  17. Python之 range()函数✅
  18. 【Python】Pycharm中plot绘图不能显示
  19. visio 2003 问题
  20. 基于微信小程序+Java+Vue+MySQL的菜谱分享小程序

热门文章

  1. 复制移动VMware Workstation虚拟机文件产生的问题【转】
  2. 再谈javascript图片预加载技术(转)
  3. [转]Java 的强引用、弱引用、软引用、虚引用
  4. Maven使用yuicompressor-maven-plugin打包压缩css、js文件
  5. 中国网络空间安全协会成立 永信至诚等200家单位共建网络安全
  6. Linux系统Bash(Shell)基础知识(4)
  7. zookeeper 可以干什么
  8. MySQL复制篇之---半同步复制
  9. 走出软件质量困境的指导性思想
  10. Android开发如何展示编译时间到apk