标签: Shader

Shader效果 - 鱼鳞纹生成

发布时间: 2022年07月09日
效果 实现思路 确定A系列的圆的圆心距离,使用 _DEBUG_DISTANCE_A 显示如下图 同理,所有圆偏移坐标 float2(0.5,0.5) 得 B系列的圆心距离 基于圆心距离和给定半径确定出系列圆A和B,使用 _DEBUG_RANGE_A 显示如下 根据鱼鳞层次优先级,确定A和B系列圆的显示访问,使用 _DEBUG_SCALE_A 显示如下 给A和B系列圆上色并混合,使用...

Unity 音效可视化

发布时间: 2022年06月25日
效果展示 实现过程 核心API是 AudioSource.GetSpectrumData , 使用这个API获取到当前播放音频的频谱数据,在做一系列转换 这次的可视化是基于Shader的,由GPU驱动。性能比使用GameObeject的缩放动画要高一些。 将音效数据传入Shader中使用了Float...

URP Shader 创建模板

发布时间: 2022年06月12日
Shader "Unlit/Template" { Properties { _MainTex ("Texture", 2D) = "white" {} } SubShader { Tags { "RenderType"="Opaque" } LOD 100 Pass { HLSLPROGRAM #pragma vertex vert #pragma fragment frag...

在2D游戏中实现地球仪的旋转

发布时间: 2022年06月04日
代码和说明 1. 固定地轴Shader 主要逻辑在Fragment Shader中,具体如下: real4 frag(v2f i) : SV_Target { // 将UV原点换到图片中央 float2 uv = i.uv - 0.5; // 根据勾股定理计算 z = sqrt( r*r - (x*x + y*y )) float3 pos = float3(uv.x, uv.y,...

Unity实现ShaderToy Dry Ice 2的效果

发布时间: 2022年05月29日
原始效果: https://www.shadertoy.com/view/WlVyRV 文件结构 代码路径: https://github.com/LazyunGame/ShaderToyRenderFeature/tree/master/Runtime/ShaderToyAssets/DryIce2 代码说明: TODO:

Unity URP - ShaderToy RenderFeature

发布时间: 2022年05月29日
在Unity中使用ShaderToy网站上的shader方式: 1. 之前的文章中提到的ShaderToy Renderer : ShaderToy shader快速移植实现 最终的渲染结果是一张RenderTexture,可以直接使用; 也可以使用提供的对应的Material. 2. 这篇文章中会介绍如何在URP RenderFeature中使用ShaerToy Shader - 大概说明...

在URP中实现自定义PostProcess

发布时间: 2022年05月22日
1. OnRenderImage 不能用了,需要用RenderFeature自定义Pass,或者使用 BeginCameraRendering 2. 这里只分享使用RenderFeature的方式实现后处理,该方式在 在URP中实现高度雾和远景雾 中有使用过。 class CustomPostProcessRenderFeature 作为一个 ScriptableObject ,...

ShaderToy shader快速移植实现

发布时间: 2022年05月21日
如何将ShaderToy Shader转换成Unity可用的Shader 做图形开发的同学没有不知道 ShaderToy 网站的,它是由大神 iq - Inigo Quilez 创建的。 ShaderToy网站包含了大量效果精彩绝伦的shader,但是这些shader是用WebGL Shader语言编写的,不适用于Unity ShaderToy。...

在URP中实现高度雾和远景雾

发布时间: 2022年05月21日
使用RenderFeature分别实现了透视相机和正交相机的高度雾和远景雾 如图: 透视相机 正交相机 如何RenderFeature在渲染管线中插入一个Pass用于渲染雾 1. 使用CommondBuffer.DrawMesh 在 RenderPassEvent . AfterRenderingSkybox 这个事件之后画一个全屏幕大小的Mesh片...