位置: 编程技术 - 正文

Unity3D游戏开发从零单排(十) - 进击的Shader续(Unity3D游戏开发毕业论文)

编辑:rootadmin
自定义光照模型

推荐整理分享Unity3D游戏开发从零单排(十) - 进击的Shader续(Unity3D游戏开发毕业论文),希望有所帮助,仅作参考,欢迎阅读内容。

文章相关热门搜索词:Unity3D游戏开发培训课程大纲,Unity3D游戏开发(第2版),Unity3D游戏开发毕业论文,Unity3D游戏开发(第2版),Unity3D游戏开发(第2版)pdf,Unity3D游戏开发标准教程,Unity3D游戏开发标准教程,unity3D游戏开发,内容如对您有帮助,希望把文章链接给更多的朋友!

在这之前首先来了解一下SurfaceOutput这个结构体,它是一个包含大多数描述一个物体表面渲染特征的结构,具体结构如下:

基本上所有的Shader函数要处理的就是这个结构体。

Unity自带的光照实现都定义在一些*.cginc文件中,要自定义光照模型,只要不用Unity自带的光照模型就可以了。

将下面这一行的语句的最后替换成对应的光照计算函数。

#pragma surface surf NoLight

无光照的材质Shader

自己实现一个diffuse

上图中左边是NoLight,右边是SimpleDiffuse。

同理可以自定义实现各种光照模型了,Lambert,Blinning,,,,,

补充一下光照函数的几种写法

half4 LightingName (SurfaceOutput s, half3 lightDir,half atten){}

这个函数用于不需要视角方向的情况下的Forward rendering。

half4 LightingName (SurfaceOutput s, half3 lightDir, half3 viewDir, half atten){}

这个函数用于需要视角方向的情况下的Forward rendering。

half4 LightingName_PrePass (SurfaceOutput s, half4 light){}

这个函数用于Deferred rendering。

Unity3D游戏开发从零单排(十) - 进击的Shader续(Unity3D游戏开发毕业论文)

用代码控制shader动态修改材质

对SimpleDiffuse稍微做一下修改,添加一个叠加的颜色。

在模型(有MeshRenderer的)上面挂一个脚本,实现如下

MeshChanger

根据时间动态修改0号材质的_Color选项,结果就像这样

自行脑补中间过程。

使用渐变纹理来处理光照

首先要准备一张渐变纹理,原理就是通过计算当前位置的光照与法线的点积,索引到渐变图片上的像素值,最后将其和diffuse叠加。

渲染结果

没有纹理的情况(是大象不是小猪)

换一下索引贴图

得到结果如下(Toon Shading)

参考

Unity Shaders and Effects CookBook

Unity3D海量新书资源 书籍比较杂,有些不一定写的很好,全部是英文的(中文书一般是不会有清晰电子版,你肯定知道的),所以大家酌情下载喜欢的那几本看完就好了。

Unity3d UGUI 滚动视图ScrollView的使用教程之简易背包 Unity3d中,UGUI提供了ScrollRect、GridLayoutGroup、Mask这三个组件,我们用来实现滚动视图,这里用一个简易的背包作为示例。文章转自

Forward Render VS Deferred Rendering ForwardRender传统的渲染方式,你提供给显卡形状Mesh,它将其打散成一堆节点,接着经过一系列的变换和分割成为Fregment或者像素,在呈现在屏幕之前已经

标签: Unity3D游戏开发毕业论文

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

上一篇:Unity3D之Camera设置(unity3d相机设置视角)

下一篇:Unity3D海量新书资源(unity3d游戏开发书籍)

  • 个税申诉已受理怎么撤销
  • 人头税是什么税
  • 增值税小规模纳税人购进货物支付的增值税直接计入
  • 有主营业务收入就一定有销项税吗
  • 建筑发票一般开几个点
  • 事业单位固定资产管理办法
  • 融资租出的设备计入什么科目
  • 应缴所得税包括哪些税种
  • 工会账务期末结转
  • 当月支付租金没有发票
  • 员工异地交纳保险怎么交
  • 没有发票的管理费用汇算清缴的时候怎么调出来
  • 三证合一不需要税务登记情况说明
  • 生活服务业包括哪些行业照片
  • 企业集团内部各所属单位之间
  • 个人所得税哪些可以专项扣除
  • win11小组件加载内容出现错误
  • 本月无生产,有折旧怎么办
  • 单位购买图书会计分录
  • 调整系统保留带宽的命令
  • CoverDesigner.exe是一个安全进程吗 CoverDesigner进程查询
  • 补缴社保会被税务稽查吗
  • 留存收益怎么计算,它属于企业的什么资金?
  • PHP:pg_client_encoding()的用法_PostgreSQL函数
  • 增值税发票销货清单怎么打印
  • 阿尔山火山
  • 前端uniapp写表格
  • 企业清算的会计科目
  • html基础总结
  • 现在前端的现状
  • 图表库网站
  • 报废机器设备如何缴纳增值税
  • 金蝶k3现金流量表编制如何生成数据
  • 企业贷款利息是多少
  • 家具采购单
  • 织梦如何采集文章
  • 怎么连接php
  • 报关单填写要求怎么填
  • 政府补贴的装修费是免税的吗
  • 出差补贴如何账务处理
  • 企业购买房产怎么记账
  • 应付账款平账调到哪个科目
  • 本年利润是负数的会计分录
  • 待摊费用怎么做凭证科目
  • 超市购物卡怎么办理
  • 如何删除windowsedb
  • window7临时文件
  • centos 远程管理
  • 光盘安装系统怎么操作
  • 班班通一直正在启动什么原因
  • windows自带的应用程序
  • 文件夹字体变成蓝色怎么恢复
  • win8怎么装系统
  • ubuntu20.04教程
  • window 启动
  • windows10bug严重
  • windows xp.
  • centos7软件安装
  • imapi.exe
  • win10事件查看器好多错误
  • 没有了开始菜单怎么恢复
  • 在linux系统中创建用户账户
  • win7系统删除密码
  • 语音聊天能不能调出来
  • 桌面预览怎么设置
  • 层序遍历递归实现
  • androidserviceslibrary停用
  • javascript类的继承
  • unity manifest
  • Android 4.4 Dialog 被状态栏遮挡的解决方法
  • jquery实现动画
  • jquery中加载文档的方法
  • js判断ua
  • 广东电子税务局官网登录入口
  • 为什么虚开增值税属于犯罪行为
  • 注销一般户需要基本户的开户许可证吗
  • 莅临指导和莅临交流的区别
  • 内蒙古国地税网上办税服务厅
  • 税控盘百旺怎样清卡
  • 个税完税证明在电子税务局哪里打印
  • 免责声明:网站部分图片文字素材来源于网络,如有侵权,请及时告知,我们会第一时间删除,谢谢! 邮箱:opceo@qq.com

    鄂ICP备2023003026号

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

    友情链接: 武汉网站建设