位置: 编程技术 - 正文

shader编程学习(1)第一个shader(shader入门)

编辑:rootadmin
前言简单说,shader是为渲染管线中的特定处理阶段提供算法的一段代码,在现在主流的3D游戏引擎中,shader已经无处不在,例如常见的镜头景深(PS:通过把背景模糊化来突出拍摄对象,还是拍出清晰的背景。),动态模糊,卡通渲染,以及各种特殊的材质效果和光照效果。同时unity提供了一些内建shader,让我们先体验下shader的魅力吧!unity内建shader打开unity,新建一个材质文件在inspector面板,你会发现在shader栏会有很多选项,可惜都是英文的。。。你需要自己查~这里简单介绍些单词的意思Unlit:仅使用纹理颜色,不受光照影响VertexLit:顶点光照Diffuse:漫反射Specular:在漫反射的基础上增加高光Bumped:凸起的意思,比如Bumped Diffuse,Bumped Specular,或让材质更有凹凸感和立体感,做法就是添加Normal mapped(法线贴图)法线贴图:在原物体的凹凸表面的每个点上均作法线,通过RGB颜色通道来标记法线的方向,你可以把它理解成与原凹凸表面平行的另一个不同的表面,但实际上它又只是一个光滑的平面。对于视觉效果而言,它的效率比原有的凹凸表面更高,若在特定位置上应用光源,可以让细节程度较低的表面生成高细节程度的精确光照方向和反射效果。目的就是让纹理看起来更有立体感Parallax:视差 视差贴图应该算是法线贴图的改进版,可以比法线贴图有更加明显的图像深度与真实感。可以尝试选择一些选择,比如选择了Bmuped Specular(法线高光)shader,修改下属性,效果如下感觉还是挺有质感的~~~内建shader根据应用对象可以分为以下几类效果越好的shader,渲染开销越大,对硬件的要求就越高。以下是不同光照效果从低到高的计算开销排序在移动平台方面,unity也提供了几种简单的shader,在Mobile类别下unity中的三种自定义shader1 表面着色器(surface shaders) 通常情况下用户会使用这种shader,用什么语言编写呢?按照浅墨大神的话说:我们学的是HLSL,就是DirectX中的那个HLSL。下面是理由阐述:首先,Unity中编写Shader的语言叫做ShaderLab,而ShaderLab说白了就是裹着一层皮的CG着色器语言而已。Cg,即C forgraphics,即用于图形的C语言,是微软Microsoft和英伟达NVIDIA相互协作在标准硬件光照语言的语法和语义上达成的一种一致性协议。HLSL和CG其实是同一种语言(参见Cg教程_可编程实时图形权威指南页的致谢部分)。很多时候,我们会发现用HLSL写的代码可以直接当中Cg代码使用。Microsoft和NVIDIA联手推出CG语言,想在经济和技术上实现双赢,从而通过这种方式联手打击他们共同的对手GLSL。既然Unity主打Shader编程的语言ShaderLab是CG语言披上一层皮,而CG语言又约等于HLSL。这就是说,在Unity中写Shader约等于用HLSL写Shader,也就约等于给DirectX写Shader。虽然有点绕orz,最后总结一下也就是:在Unity中写Shader约等于给DirectX写Shader2 顶点和片段着色器(Vertex and fragment Shaders) 可以做的事情更多,但是也比较难写。使用片段着色器的主要目的是可以在比较低的层级上进行更复杂(或者针对目标设备更高效)的开发。3 固定功能管线着色器(Fixed Function Shaders)如果游戏运行在不支持可编程管线的老旧硬件上,那么就需要编写这种Shader了,它可以作为顶点和片段着色器的备用选择第一个Shader

推荐整理分享shader编程学习(1)第一个shader(shader入门),希望有所帮助,仅作参考,欢迎阅读内容。

文章相关热门搜索词:shader编程语言,shader编程书籍,shader编程书籍,shader编程要学多久,shader编程难吗,shader编程书籍,shader编程要学多久,shader编程语言,内容如对您有帮助,希望把文章链接给更多的朋友!

shader编程学习(1)第一个shader(shader入门)

由于是初级学习,目前我们只针对表面着色器进行学习,在unity中创建一个shader文件,用编辑器打开,会发现里面已经有一些内容了

SurfaceOutput结构体的定义如下总结强烈推荐一篇文章 猫都能学会的Unity3D Shader入门指南(一)作者极为详细且耐心的讲解了shader的每一行代码代表的意思和作用~初学者必看!(PS:感谢分享知识的作者!)unity官方的shader案例:链接了解了这么多,对于shader编程也算入了门,想要进行下一步的精进,只有通过不断的学习和实践!

Unity3D 自动寻径 欢迎来到unity学习、unity培训、unity企业培训教育专区,这里有很多U3D资源、U3D培训视频,我们致力于打造业内unity3d培训、学习第一品牌。众所周知,自

Unity学习之自动寻径 unity学习,希望我的博客能给喜欢unity的朋友带来帮助自动寻径指的就是点击场景上的一个位置,角色就会自动寻路过去。中间可能会有很多的障碍物,

数据库列的基本操作 1.添加一列altertable表名add列名类型(长度)nullaltertablestudentaddageintnull2.更改一列类型altertable表名altercolumn列名数据类型(长度)column:列altertablestudentaltercolumnag

标签: shader入门

本文链接地址:https://www.jiuchutong.com/biancheng/377338.html 转载请保留说明!

上一篇:Unity学习笔记(一)(unity learn premium)

下一篇:Unity3D 自动寻径(unity自动寻路)

  • 一般纳税人出租不动产增值税税率
  • 小商店如何纳税?
  • 如何查询继续教育证书
  • 发票章盖金额上去了
  • 利润表里的所得税怎么算
  • 工商登记执照号码怎么查询
  • 基金会计核算的核算主体是
  • 外汇结汇的方法有哪些呢?
  • 为了贷款支付的土地评估费用怎么会计处理?
  • 挂靠企业所得税怎么办?
  • 自建厂房销售
  • 冲减上年的所得税费用入什么科目?
  • 工程的进项税怎么处理
  • 租车租赁费税率是多少
  • 购买软件会计账务处理
  • 售楼部沙盘制作价格一般多少一平
  • 企业可以采用在产品按固定成本计算法的有
  • 2019年基金市场
  • 出售单位车辆如何处理业务?
  • 客户收集软件
  • 文件类型设置
  • 累计折旧 减少
  • win10蓝牙驱动怎么安装程序
  • gws.exe是啥
  • gwsystemservice.exe是什么进程 有什么作用 gwsystemservice进程查询
  • php 缓存
  • php 生成缩略图
  • 房产自用或出租什么意思
  • 融资租入资产的入账价值可能是()
  • 企业免租申请
  • 股本减少是什么意思
  • 京东到家的物流模式
  • thinkphp6框架源码完整版下载
  • 税控盘抵扣怎么做账
  • 金融机构贷款准备金
  • 利息支出税前扣除时间
  • 会计要考哪些证书,难度如何
  • sql死锁的原因及解决方法
  • 销货方怎么开具购买方红冲的发票
  • 预付账款和应付账款怎么合并
  • SQL SERVER中关于exists 和 in的简单分析
  • 委托加工账务处理受托方会计分录
  • 一般纳税人转小规模最新政策
  • 应收票据周转率怎么分析
  • 境内企业借外债,不还会怎么样
  • 工程款预缴税
  • 物资采购是
  • 原材料运费如何入账
  • 合并报表的内部投资抵消
  • 购电脑怎么入账
  • 营业外支出处置固定资产损失是坏账
  • 公益募捐的基金是什么
  • 外汇账户具体包括哪些
  • mysql求两个字段的和
  • linux下mysql的root密码忘记的解决方法
  • 完美解决MySQL通过localhost无法连接数据库的问题
  • wrme.exe是什么
  • win7网页无法访问
  • 如何设置windows启动密码
  • win7自带拍照功能
  • realjbox.exe - realjbox是什么进程 作用是什么
  • windows8开机启动项在哪里设置
  • win10周年更新版是什么意思
  • 雨林木风软件网
  • win7系统打印服务怎么开启
  • win10无法启动安全服务中心怎么办
  • red hat linux怎么用
  • 删除同步中心图标
  • jquery获取本地ip
  • 写个置顶
  • parentElement,srcElement的使用小结
  • python抓取网络数据
  • 各种常用的js函数有哪些
  • javascript的核心语言对象包括
  • android.intent.extra.text
  • bootstrap教材
  • layout_gravity与gravity的区别
  • UNITY gameobject代码中setacvtive(false)与面板中直接去掉勾 效果不一样
  • javascript学习指南
  • 成都税务举报电话多少
  • 免责声明:网站部分图片文字素材来源于网络,如有侵权,请及时告知,我们会第一时间删除,谢谢! 邮箱:opceo@qq.com

    鄂ICP备2023003026号

    网站地图: 企业信息 工商信息 财税知识 网络常识 编程技术

    友情链接: 武汉网站建设