Unity Shader
文章平均质量分 87
Lefenger
我的结局与世界的结局
展开
-
Shader 学习历程(一)——第一个shader
本系列记录着本人自学的一个过程,与很多博客一样,起着激励自己不断学习和记录日常的作用。嗯,现在开始。计算机图形学中的渲染管线分为固定功能管线和可编程渲染管线两种。unity中shader可分为固定功能着色器、表明着色器、顶点着色器、片段着色器。一个shader的框架是由Properties(属性)、至少一个SubShader(子着色器)、Fallback(备原创 2015-09-13 23:57:25 · 873 阅读 · 0 评论 -
Shader学习历程(三)——shaderlab中边缘光的不同实现
边缘光原创 2015-10-13 23:34:54 · 1556 阅读 · 0 评论 -
Shader学习历程(四)——Unity官方Image effect__Fisheye
前面有时很想自己做一些很酷炫的image effect,但又不知道要从何开始,不妨先学习学习官方的Image effect是怎么实现的。这一篇主要探究鱼眼效果是如何实现的。下附两幅图看看效果是啥样的: 主要我们现在正式看看它是怎么实现的,一个完整的屏幕特效分为两部分,一是cpu部分,它负责决定何时执行,并把rendertexture和相关参数传递给gpu,二是gpu部分,也就是处理renderte原创 2015-11-23 23:36:26 · 5984 阅读 · 0 评论 -
Shader学习历程(五)——Sprite Shader之简单抠图
前言还在苦于自己写的shader不能被sprite使用吗? 对,这个问题也困扰过我,所以我将它解决了。 然后顺便实现了简单抠图。。。。真的是简单抠图。。。正文按照习惯,首先放图,放代码。 这是抠图前。 抠图后。。。。分辨率比较低 ==Shader "Sprites/Mine" { Properties { [PerRendererData]原创 2015-12-24 15:44:21 · 6379 阅读 · 0 评论 -
Shader学习历程(二)——GPU渲染过程
这一篇主要讲述了GPU的渲染过程,这一篇可谓最为基础的重点,所以我们必须将其牢记于心。图形绘制管线分为三个阶段:**应用程序阶段、几何阶段、光栅阶段**原创 2015-10-07 17:29:11 · 4101 阅读 · 0 评论 -
Unity 中的半透明
首先说Unity中的渲染顺序,在Unity中改变渲染顺序的方式有四层,第一层为Camera的depth,第二层为Sorting Layers, Canvas可直接在面板中调节,其他的可能需要在脚本中设置,第三层为shader中的渲染队列,第四层为Pass(Pass的顺序在不同情况下有差别)。再说半透明,最重要的是渲染顺序,只要渲染顺序正确,透明材质是可以不用关闭深度写入的,即使是多个半透明物体也是...原创 2018-02-17 22:50:10 · 2457 阅读 · 0 评论 -
Compute Shader in Unity Part1
Compute Shader 是为了在Unity中使用GPGPU,即通用目的图形计算单元,它独立于渲染管线,通用目的也说明了它可以用于多种目的,与CPU相比,GPU的优势在于多线程并行计算,当你想对大量数据进行相同的计算的时候,会快很多。以下是使用说明: #pragma kernel CSMain#define GroupLength_x 8RWStructuredBuffer&...原创 2018-10-12 17:12:46 · 935 阅读 · 0 评论 -
Compute Shader in Unity Part2 ——Texture
Texture 在Compute Shader 中算是一个特别重要的应用了。其实原理什么的都和上一篇说的一样。下面说一些不一样的。 #pragma kernel CSMain RWTexture2D<float4> Result;[numthreads(8,8,1)]void CSMain (uint2 id : SV_DispatchThreadID){...原创 2018-10-15 11:48:29 · 1448 阅读 · 0 评论