转载自风宇冲Unity3D教程学院 ----shader分类

Shader第十三讲 Alpha混合 原创文章如需转载请注明:转载自风宇冲Unity3D教程学院                  &a 阅读详情
原创文章如需转载请注明:转载自风宇冲Unity3D教程学院 
 
引言,在Unity3d里,所有的图形绘制都必须通过Shader,即着色器。一般的使用过程中,我们用到的都是unity自带的Shader,即build-in shader。学习Shader后,自己写的Shader能做出很多你想要的特殊效果,增强游戏的画面表现。例如水的倒影。 LOGO的光影闪过等等效果等等。  
                                      Shader的分类 
 
 
Shader按管线分类一般分为固定渲染管线与可编程渲染管线 1)固定渲染管线 ——这是标准的几何&光照(Transforming&Lighting)管线,功能是固定的,它控制着世界、视、投影变换及固定光照控制和纹理混合。T&L管线可以被渲染状态控制,矩阵,光照和采制参数。功能比较有限。基本所有的显卡都能正常运行。 
2)可编程渲染管线——对渲染管线中的顶点运算和像素运算分别进行编程处理,而无须象固定渲染管线那样套用一些固定函数,取代设置参数来控制管线。  
                                      Unity3d
的三种Shader 
 
Unity的Shader分为三种: 
(1)Fixed function shader   属于固定渲染管线 Shader, 基本用于高级Shader在老显卡无法显示时的Fallback(之后有详细介绍)。使用的是ShaderLab语言,语法与微软的FX files 或者NVIDIA的CgFX类似。 
(2)Vertex and Fragment Shader  最强大的Shader类型,属于可编程渲染管线. 使用的是CG/HLSL语法。 
(3)Surface Shader Unity3d推崇的Shader类型,使用Unity预制的光照模型来进行光照运算。使用的也是CG/HLSL语法。  
                           Unity3d三种Shader对比  
三种Shader共同点: 
(1)都必须从唯一一个根Shader开始 
(2)Properties参数部分,作用及语法完全相同 
(3)具体功能都在SubShader里(Subshader: 子Shader,Shader会自上而下运行第一个硬件能支持的Subshader,主要作用是对不用硬件的支持。) 
(4)都可以打标签,例如Tags { "RenderType" = "Opaque" }    LOD 200     以及Lighting On等 (5)都可以Fallback 
(6)都可以处理基本的功能,例如光照漫反射(Diffuse)以及镜面反射(Specular)。但是Vertex and Fragment和Surface都能实现Fixed function实现不了的高级功能,例如基于uv计算的效果等等。 












 
三种Shader不同点: 
(1)Fixed function shader以及Vertex and Fragment Shader在subshader下面还有pass{},但是Surface Shader,由于已经将具体内容打包在光照模型了,不能加pass{},加了会报错。 (2)Fixed function shader每句代码之后没有分号';'   但是V&F shader以及Surface shader每句代码之后都必须加分号';' (3)核心结构不同: 
Fixed function shader的核心是 
Material{} 以及SetTexture[_MainTex]{}  
Vertex and Fragment Shader的核心是 
 
1. CGPROGRAM 2. #pragma vertex vert 
3. #pragma fragment frag           4. #include "UnityCG.cginc" 5. ENDCG 
Surface Shader的核心是 
(1)这套用的是Unity3d自带光照模型Lambert,也不做顶点处理,那么只需要一个表面处理函数surf即可 
CGPROGRAM 
#pragma surface surf Lambert ENDCG 或者(2)这套表示使用的是自己写的光照模型lsyLightModel,并且使用了顶点处理函数vert  
CGPROGRAM 
//      surface 表面处理函数   光照模型函数      顶点处理:函数 #pragma surface  surf         lsyLightModel      vertex:vert 
//执行顺序   顶点处理函数 ->表面处理函数 ->光照模型函数 ->颜色值 ENDCG 
中国1990-2021连续30年土地利用CLCD数据分享 CLCD(China Land Cover Dataset)数据集是由武汉大学黄昕老师基于Google Earth Engine上的335,709景Landsat数据制作的中国年度土地覆盖数据集。为了提高CLCD的时空一致性,还提出了一种包含时空滤波和逻辑推理的后处理方法。该数据集最大的优势在于每年30米的土地利用分类结果,且连续覆盖了30年时间。相比其他产品如GLC_FCS30、Global30、AGLC2000_2015、FROM-GLC10、ESA10、ESRI10等,CLCD在时间分辨率上更高。 阅读详情

相关推荐

线性自抗扰控制LADRC(一)---基础知识

LADRC(Linear Active Disturbance Rejection Control)是ADRC的线性化版本,通过简化非线性模块(如ESO和反馈律)降低计算复杂度,适用于实时控制系统(如电机驱动)。

ApexYuan 2078

[Unity Shader]Shader分类

Shader的分类: Shader按管线分类一般分为固定渲染管线与可编程渲染管线 (1)固定渲染管线 ——这是标准的几何&光照(Transforming&Lighting)管线,功能是固定的,它控制着世界、视、投影变换及固定光照控 制和纹理混合。T&L管线可以被渲染状态控制,矩阵,光照和采制参数。功能比较有限。基本所有的显卡都能正常运行。 (2)可编程渲染管线——...

weixin_30446613的博客 205

泛微E9表单建模查询列表勾选后带入流程明细表中

注意:参照下图各项配置,否则会有问题。

泛微二次开发后端知识总结 5313

unity3D中Shader的分类和区别

游戏开发培训_丝路教育 Shader按管线分类一般分为固定渲染管线与可编程渲染管线 (1)固定渲染管线 这是标准的几何光照(TransformingLighting)管线,功能是固定的,它控制着世界、视、投影   游戏开发培训_丝路教育   Shader按管线分类一般分为固定渲染管线与可编程渲染管线   (1)固定渲染管线 ——这是标准的几何&光照(Transformin

blueuranus2084的博客 1731

FPGA设计中的扇出约束实战:从XDC到代码优化的全流程解析

本文全面解析FPGA设计中扇出约束的重要性与应用,详细介绍了从XDC约束文件设置到HDL代码优化的全流程实战技巧。通过MAX_FANOUT约束控制信号负载,结合寄存器复制和物理优化策略,有效解决高扇出导致的时序违例和布线拥塞问题,提升设计性能和可靠性。

nept的博客 798

MEME-CHIP实战:5步搞定ChIP-seq数据中的motif发现与可视化

本文提供了使用MEME-CHIP工具进行ChIP-seq数据motif发现与可视化的完整实战指南。通过5个清晰步骤,从数据准备、环境搭建、命令行执行到结果解读与高级可视化,详细讲解了如何利用MEME-CHIP工作流高效完成从原始peak序列到发表级motif图的分析,并分享了关键的参数调优与避坑经验。

alice7model的博客 508

unityshader学习笔记shader扫盲---什么是shader

Shader其实就是专门用来。

m0_69722751的博客 1417

从虚拟机到双系统:手把手教你为Gromacs搭建最强Linux环境(含WSL2、Ubuntu22.04配置)

本文详细指导如何在Windows系统下为Gromacs分子动力学模拟搭建高性能Linux环境,涵盖WSL2和Ubuntu22.04双系统配置。通过对比虚拟机、WSL2和原生Linux的性能数据,提供GPU加速、内存优化等实用技巧,帮助科研人员提升计算效率。

weixin_30861797的博客 271

Unity_Shader学习(二)Shader结构与分类

Shader的结构 一个UnityShader的结构如下所示: Shader "ShaderName"{ Properties{ _value("valueName",valueType) = DefaultValue } SubShader{ //SubShader1 } SubShader{ //...

qq_37394426的博客 408

用Python玩转农业大数据:从Landsat遥感影像到作物产量预测实战教程

本文详细介绍了如何利用Python处理Landsat遥感影像数据,并结合土壤信息构建作物产量预测模型。从环境搭建、数据预处理到模型训练与可视化,提供了一套完整的农业大数据分析实战方案,帮助读者掌握遥感影像处理和机器学习在精准农业中的应用。

weixin_30832143的博客 400

【26美赛E题 Passive Solar Shading】2026美赛数学建模(MCM/ICM)思路解析及代码分享

本文研究了被动太阳能遮阳(PSS)策略在建筑节能中的应用,针对Sungrove大学(低纬高温)和Borealis大学(高纬寒冷)两种典型气候条件,建立了动态太阳辐射-热平衡模型。通过优化遮阳结构(外檐长度、百叶角度)、窗户布局和内部热质量分布,实现了夏季制冷负荷降低30-40%(Sungrove)和冬季采暖负荷减少15-25%(Borealis)。创新性地采用全天候动态遮阳建模方法,结合热质量优化与储能设计,提出了可适应不同气候条件的建筑节能解决方案,为未来可持续建筑设计提供了量化框架。

一键难忘的博客 955

【系统学习Shader与后处理】第一篇:Shader分类

shader和后处理,也许算很多公司对资深U3D程序员的要求。 入坑shader几年了,shader的语法其实很少很简单,但是shader可以实现的效果实在太多,可以说是无穷的,靠记忆每种效果的shader原理实际上是不可能的。 在几年的shader学习过程中,我尝试总结一些规律,shader的常用技术。 1.环境 ...

weixin_33896726的博客 226

Buck电源设计常见的一些问题(一)半桥栅极驱动芯片共性失效问题

半桥驱动芯片主要用在器件可应用于电信,数据通信,便携式存储或更低电压系统中的电源转换器,半桥、全桥、推挽、同步降压,正激变换器和同步整流器等方面。当然难免会遇到不少问题。基本上我们在产品开发的过程中都遇到过栅极驱动芯片坏掉的情况,所以找了一些资料,学习学习。也查找查找原因。

小幽余生不加糖 2371

Unity3d插件之Shader Forge第1,2,3讲

http://blog.sina.com.cn/s/blog_471132920102v2hn.html 原创文章如需转载请注明:转载自风宇冲Unity3D教程学院                                                            Shader Forge 第一讲:制作一个简单的Shader   Shader F

chenluwolf的专栏 2965

jdk-8u144-linux-x64.tar.gz.

该资源为搭建Linux系统Java环境用,资源的后缀为tar.gz格式的压缩包

IMSL CNL 7.0.0 (x86-64)Crack

IMSL CNL 7.0.0 (x86-64)Crack intel的算法库破解文件,这是C++版本的破解文件

【风宇冲】Unity3D教程宝典之Shader篇:第一讲Shader总篇

http://blog.sina.com.cn/s/blog_471132920101d5kh.html 原创文章如需转载请注明:转载自风宇冲Unity3D教程学院 引言,在Unity3d里,所有的图形绘制都必须通过Shader,即着色器。一般的使用过程中,我们用到的都是unity自带的Shader,即build-in shader。学习Shader后,自己写的Shader

any 942

文档:亲测可用解决vnc灰屏,黑屏,鼠标大黑叉情况

主要解决vnc-viewer灰屏,黑屏,鼠标大黑叉等现象,详细见文档。

第一讲Shader总篇

原创文章如需转载请注明:转载自风宇冲Unity3D教程学院 引言,在Unity3d里,所有的图形绘制都必须通过Shader,即着色器。一般的使用过程中,我们用到的都是unity自带的Shader,即build-in shader。学习Shader后,自己写的Shader能做出很多你想要的特殊效果,增强游戏的画面表现。例如 水的倒影。 LOGO的光影闪过等等效果等等。          

huang9012的专栏 1207

WINCC7.3破解文件

WINCC7.3硬件够破解文件,有需要的下载!WINCC7.3硬件够破解文件,有需要的下载!

【风宇冲】Unity3D教程宝典之Shader篇:第十讲 雾化

原创文章如需转载请注明:转载自风宇冲Unity3D教程学院                             Shader第十讲 雾化Fog Fog,即雾化。本质是离屏幕越远的物体,就越趋向于某种颜色。通常是远处,即离屏幕远的地方,趋向于白色或者浅灰色。 全局雾化:在Edit->RenderSettings里设置,具体如下 Fog: 激活或不激活 F

苗伟业的专栏 1816

【风宇冲】Unity3D教程宝典之Shader篇:第六讲TexGen

原创文章如需转载请注明:转载自风宇冲Unity3D教程学院                      Shader第六讲:TexGen TexGen:主要用于Fixed Function Shader, 自动生成一些目标特效的UV。当有vertex函数时会被自动忽略。该函数直接对应OpenGL的texgen modes。 有如下模式ObjectLinear, EyeL

苗伟业的专栏 1907

【风宇冲】Unity3D教程宝典之Shader篇:第七讲流程图

原创文章如需转载请注明:转载自风宇冲Unity3D教程学院                      Shader第七讲:流程图 图一:坐标系变换 图二:流水线图形 图三:Unity3D渲染流程 图四:光栅操作(又名光栅化操作) 图一:坐标系变换 图二:流水线图形 图三:Unity3D渲染流程 图四:光栅操作

苗伟业的专栏 1374

unity3d 插件之Shader Forge第一讲

原创文章如需转载请注明:转载自风宇冲Unity3D教程学院 http://blog.sina.com.cn/s/blog_471132920102v2hn.html                                                   ShaderForge 第一讲:制作一个简单的Shader   Shader Forge是当今Asset Sto

进击的Unity3d 1566

【风宇冲】Unity3D教程宝典之Shader篇:第八讲 Why CG?

原创文章如需转载请注明:转载自风宇冲Unity3D教程学院                             第八讲:Why CG? Shader有Fixed Function, Vertex and Fragment, Surface, 而Vertex and Fragmen里又有CG和GLSL两种。为什么选CG做重点讲解呢? Fixed Function:

苗伟业的专栏 733

【风宇冲】Unity3D教程宝典之Shader篇:第十三讲 Alpha混合

原创文章如需转载请注明:转载自风宇冲Unity3D教程学院                             Shader第十三讲 Alpha混合 Alpha Blending,中文译作Alpha混合 Blending就是控制透明的。处于光栅化的最后阶段。 这里例如我们给一个模型贴一个材质,那么在某个点计算出来颜色值称为源,而该点之前累积的颜色值

苗伟业的专栏 2058

Unity3D教程宝典之Shader篇:第五讲LOGO闪光效果

转载自风宇冲Unity3D教程学院                        Shader第五讲:LOGO闪光效果                             这个效果在很多LOGO及广告宣传中都会用到。商业开发的做法应该是拿一张闪光的图,对其做uv移动,然后和原图两张图混合,这样运算会小很多,需要储存的变量也会小很多。本讲不用图而完全通过计算得出闪光区域,主

885

【风宇冲】Unity3D教程宝典之Shader篇:第十四讲Surface Shader

创文章如需转载请注明:转载自风宇冲Unity3D教程学院                             Shader第十四讲 Surface Shader    用Shader来实现光照是比较复杂的,有不同的光类型,不同的阴影选项,不同的Render Path(forward和Deferred)。 Unity只是把光照模型封装处理了,Shader的代码还是用CG/HL

苗伟业的专栏 2052

Shader第五讲:LOGO闪光效果

原创文章如需转载请注明:转载自风宇冲Unity3D教程学院                         Shader第五讲:LOGO闪光效果                              这个效果在很多LOGO及广告宣传中都会用到。商业开发的做法应该是拿一张闪光的图,对其做uv移动,然后和原图两张图混合,这样运算会小很多,需要储存的变量也会小很多。本讲

xfnjlove的专栏 792

Shader第二讲:Fixed Function Shader

原创文章如需转载请注明:转载自风宇冲Unity3D教程学院                        Shader第二讲:Fixed Function Shader Fixed function shader简介:  属于固定渲染管线 Shader, 基本用于高级Shader在老显卡无法显示时的情况。使用的是ShaderLab语言,语法与微软的FX files 或者NVID

ZJY-启航 390
上一篇: Unity3D Shader官方教程翻译(十九)----Shader语法,编写表面着色器
下一篇: Unity3D Built-in Shader详解一
coding_most
博客等级 码龄15年 13粉丝 38原创
评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

个

红包个数最小为10个

元

红包金额最低5元

当前余额3.43元 前往充值 >
需支付:10.00元
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付元
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值