
Shader案例
一些简单的Shader案例
两水先木示
有时候,你不知不觉就完成了一个BUG!
展开
-
【Shader案例】大地图迷雾实现思路
场景布局:地板Scale(40,1,40) 云层Cloud平面Scale(40,1,40) 保持一样大小,将云层平面X和Z值保持与地板一样,Y值拉大,让云层平面正位于地板上空。新建1个层级:Cloud,云层物体Layer层级设置为Cloud,射线检测只检测这一层的。其他代码部分相当简单了,就是射线检测拿到uv转局部坐标(x,y)去设置动态生成的遮罩纹理Texture2D(x,y)的像素R通道为0,就达到了裁剪这一个格子效果。原创 2025-01-10 19:49:51 · 606 阅读 · 0 评论 -
【Shader】漫反射、高光反射案例
【代码】【Shader】漫反射、高光反射案例。原创 2025-01-08 23:19:37 · 202 阅读 · 0 评论 -
【Unity3D】动态调整图片HSV色相、饱和度、明度
注意:#include "Assets/HSVDemo/Utility.hlsl" 路径可能有所变化,要填写你实际文件路径。具体shader代码的公式是百度得到,百度有N多种方式,只采用了较为正确与PS相近的。原创 2024-12-16 22:37:11 · 288 阅读 · 0 评论 -
【Unity3D】实现UGUI高亮引导点击
【代码】【Unity】实现UGUI高亮引导点击。继承ICanvasRaycastFilter接口实现IsRaycastLocationValid函数实现局部射线穿透,传递UGUI坐标系的Rect矩形到Shader,利用UnityGet2DClipping函数裁剪图片,实现引导黑幕高亮效果。原创 2024-12-15 02:06:38 · 309 阅读 · 0 评论 -
【Unity】URP屏幕后处理UI模糊效果实现
主要以上内容,实际上就是因为Render Pass Event是只能After Rendering Transpanrets在透明物体渲染完成后进行屏幕后处理模糊,导致无法实现置顶UI高清,底下UI模糊的需求,如果可以控制这个后处理时机是在置顶UI渲染之前进行后处理,等后处理完成后再渲染指定UI 那就可以,然而...1个Canvas和2个摄像机。Shader代码实现模糊。原创 2023-09-01 15:50:08 · 4969 阅读 · 0 评论 -
【Unity3D】3D物体Mesh裁剪渲染画面(非UI裁剪)
片元着色器的i.pos就是顶点着色器取到的裁剪坐标经过了透视除法,再经过屏幕映射拿到的屏幕坐标数据,所以这就完成了屏幕空间下的裁剪,也就是可适用于3D物体的裁剪,按道理UI也可以。判定是否在自定义屏幕坐标区域可能才是比较困难的,测试里我直接用最简单的矩形区域裁剪。主要是MeshRenderer这种渲染器的物体裁剪。Shader核心部分。原创 2023-07-03 10:04:50 · 832 阅读 · 0 评论 -
【Shader】拷贝ShaderToy系列——水涟漪效果
Shader - Shadertoy BETA链接:https://pan.baidu.com/s/19I9enoJBi8i7qKtSIWd0Fg提取码:ref1https://github.com/AMikeW/BStandShaderResources/blob/master/Water%E6%B6%9F%E6%BC%AA%E6%95%88%E6%9E%9C.unitypackage原创 2022-02-15 09:47:59 · 712 阅读 · 0 评论 -
【Unity】3D地裂效果
链接:https://pan.baidu.com/s/1KZyS14zoyYR2mtufXoD1-Q提取码:udp1HDRP项目 2019.4.25f1 需下载插件 和参考视频:Unity3D特效,地面裂缝,牛逼啊!_哔哩哔哩_bilibili原理:制作一个拥有3个网格的fbx,裂隙顶部网格关闭深度测试,裂隙内部和底部法线朝内以及UV展开。在Unity侧创建一个Cube作为地面,将它的Layer改为SeeThough(自定义),裂隙顶部Layer改为LayerMask(自定...原创 2022-02-14 13:40:56 · 3567 阅读 · 2 评论 -
【Unity】Shader效果——Snow雪地
工程链接:链接:https://pan.baidu.com/s/1GmDZt2wRCIP7AlbM-uGhSw提取码:2gm1鼠标点击地形会出现雪地轮廓,可扩展具体代码Snow脚本,修改射线检测处即可。Shader可视化编辑器使用插件AmplifyShader脚本说明:利用Graphics.DrawTexture将Rt参数的RendererTexture贴图修改,修改RT贴图的shader是stamp材质球的shader,输入有_SourceTex(RT图)和_Sour...原创 2022-02-11 19:24:39 · 3668 阅读 · 0 评论 -
GAMES202-作业0 笔记案例
较为坑爹的地方在修改js后,可能会没有生效,这时候只要变更端口地址8000变成其他的,比如8001即可。浏览器选择的是Microsoft官方原创 2022-01-22 10:00:38 · 857 阅读 · 0 评论 -
【GAME101】作业 物体倒立、镜像问题
GAMES101课程的作业会产生三角形或物体镜像问题的解决方法原创 2022-01-19 10:36:40 · 675 阅读 · 2 评论 -
【Unity】2019 UDRP 7.3 CustomPass 物体描边效果
右键创建空物体,添加Custom Pass Volume,添加1个DrawRenderersCustomPass紧接着创建材质球和着色器,赋值到Material上。Shader "Renderers/FirstRenderersCustomPass"{ Properties { _Color("Color", Color) = (1,1,1,1) _ColorMap("ColorMap", 2D) = "white" {} ...原创 2022-01-10 22:37:04 · 2266 阅读 · 1 评论 -
【Unity】2019 HDRP 7.3 CustomPass 高斯模糊
Unity2019 4.25f1 HDRP项目 屏幕后处理 高斯模糊 CustomPass 毛玻璃效果原创 2022-01-10 16:05:54 · 2865 阅读 · 0 评论 -
【Shader】模拟体积云效果
链接:https://pan.baidu.com/s/1DgXSYWA0wNCQ89C9OOLexQ提取码:i77e--来自百度网盘超级会员V5的分享原创 2022-01-06 01:44:00 · 1417 阅读 · 0 评论 -
【Shader】使用几何着色器渲染草地Grass效果
链接:https://pan.baidu.com/s/1TAEZg_I6Wzd_IadgTujGLw提取码:34ti参考:【Unity Shader】使用Geometry Shader进行大片草地的实时渲染_流朔的博客-优快云博客_unity 草地shader转载 2021-12-31 22:44:08 · 606 阅读 · 0 评论 -
【Shader案例】实现UGUI裁剪功能
using UnityEngine;using UnityEngine.UI;/// <summary>/// 挂于裁剪物体身上的脚本,用于设置裁剪区域_ClipRect [Vector4]/// </summary>public class ClipTest : MonoBehaviour{ //作为裁剪区域的物体 public GameObject go; void Start() { //获取go物体的RectT.原创 2020-11-26 19:13:37 · 1754 阅读 · 2 评论 -
【Shader案例】2D扫描效果
目录蛮牛原文:http://www.manew.com/thread-143613-1-1.html制作过程视频:https://www.bilibili.com/video/BV1Cf4y127ba源码资源:https://github.com/AMikeW/BStandShaderResources一、效果图二、实战1、制作Shader2、创建Plane,赋予Shader所在的材质3、创建C#脚本,挂在Plane物体身上4、创建3个Cube拉长放到扫描范围内...原创 2020-06-07 22:44:27 · 873 阅读 · 0 评论 -
【Shader案例】模型虚拟阴影(实体阴影)
目录一、效果图二、实战三、算法核心一、效果图二、实战适用场景:平面且周围没有墙体时,例如:足球游戏1、准备资源:Unity酱模型 (可直接在Unity商店搜索)2、一个C#脚本和一个材质和Shader3、去掉模型身上的材质阴影投射效果(即去除ShadowCaster的Pass),在Unity酱身上的材质Shader都是通过Fallback的Shader进行投射阴影的所以注释掉Fallback即可。Shader原理:顶点偏移(目前还未搞懂)// Upgrade原创 2020-06-01 00:12:10 · 1083 阅读 · 0 评论 -
【Shader案例】镜面反射
转载:https://blog.youkuaiyun.com/linjf520/article/details/99647624一、镜面反射效果图一、制作Plane镜面不透明物体且先于箱子渲染,模板测试写入1,是一个表面着色器Lambert漫反射+颜色Shader "Unlit/PlaneShader"{ Properties { _MainTex("Texture", 2D) = "white" {} _ColorTint("_Color Tint", Color) = (1,..原创 2020-05-16 17:44:31 · 3513 阅读 · 0 评论 -
【Unity】Shader之对指定物体进行描边效果
参考文章:https://blog.youkuaiyun.com/l773575310/article/details/78701756方法一:对指定Layer层(Outline层)的物体进行描边处理原理:使用一个只渲染Outline层的摄像机进行渲染,将渲染结果存入临时渲染纹理rt,再利用Graphics.Blit(rt, destination, targetMat, 0); 函数使用targ...原创 2019-11-03 11:22:23 · 2558 阅读 · 3 评论 -
【Unity】Shader之旗帜漂浮效果
模型资源出自《Shader入门精要》的项目,github链接如下:https://github.com/candycat1992/Unity_Shaders_Book原理:利用顶点动画,sin函数,纹理坐标,网格顶点坐标实现的旗帜漂浮效果物体是Quad(3D物体)注意:这个物体的模型是自定义的,不是默认的!(这个模型资源在上方的链接项目内)可看到有164个顶点(这种...原创 2019-11-02 00:57:44 · 3310 阅读 · 1 评论 -
【Unity】Shader之3D翻页效果——Plane实现翻页效果
开头声明转载出处:https://blog.youkuaiyun.com/qq_39741605/article/details/80678229感谢作者!效果图:原理:Shader顶点动画在顶点着色器进行对顶点Y值的偏移(使用了Sin函数模拟翻页时产生的弯曲),对顶点X值的偏移实现纸张在翻页时的收缩(一般是不用收缩),最后对顶点进行围绕Z轴旋转实现Plane翻页(Z轴是本例的旋转轴,请...转载 2019-10-26 22:47:40 · 2548 阅读 · 1 评论 -
【Unity】Shader代码案例
一、控制缩放、旋转、位移并贴图混合Shader实例// Upgrade NOTE: replaced '_Object2World' with 'unity_ObjectToWorld'Shader "Image/ImageShader"{ Properties { _MainTex("Texture", 2D) = "white" {} _DampTex("DampTex...转载 2019-04-04 21:35:16 · 2226 阅读 · 0 评论 -
【Unity】Shader入门级代码
一、Shader相关知识介绍CPU处理复杂运算,GPU是并行处理简单运算。CPU to GPU(CPU处理后转交给GPU处理,然后渲染出一个物体)首先通过3ds Max、Maya、Blender软件制作出Mesh,把Mesh交给CPU的HDD,接着到RAM记忆单元->VRAM显卡记忆单元->Set Render Status(Material、Shader、Texture等)-...转载 2019-03-23 09:35:16 · 3463 阅读 · 0 评论 -
【Shader案例】透视高亮、X光效果
原理:利用ZTest Greater深度测试大于条件,来为物体被遮挡的像素片元进行修改为透视时的颜色,颜色为视角向量和法线向量的余弦值乘上透视颜色和自定义的控制值。Shader "透视描边效果/OverwatchOutlineShader"{ Properties { _MainTex("Texture", 2D) = "white" {} _OutlineColor("O...原创 2020-02-02 22:11:09 · 1283 阅读 · 7 评论 -
【Shader案例】3D场景扫描效果
参考文章:https://www.cnblogs.com/murongxiaopifu/p/7050233.html原理:屏幕后处理,利用摄像机深度图获取到像素深度值,判断属于自定义的动态范围值内则进行对该像素点颜色进行混合扫描颜色值。1、挂摄像机的C#脚本代码/** *Copyright(C) 2019 by Lele Feng *All rights reserved....原创 2020-02-02 12:47:13 · 1712 阅读 · 5 评论