当前位置:网站首页>Unity Shader 学习 004-Shader 调试 平台差异性 第三方调试工具
Unity Shader 学习 004-Shader 调试 平台差异性 第三方调试工具
2022-06-13 03:48:00 【荷兰猪小灰灰】
文章目录
学习时间:
2022.5.27
学习产出:
1.调试Shader
1.1 我们打开FrameDebug窗口
Frame Debugger可以让我们单独的观察一帧的渲染过程,观察到每一个DrawCall的渲染情况,它会把DrawCall一个一个按顺序列出来,通过点击每一个DrawCall,可以看到执行到该DrawCall时的渲染图,一步一步的点就可以看到整个场景渲染非常详细的构建过程。

1.2 通过FrameDebug窗口查看我们shader渲染目标的状态
比如这里我们前向渲染的一个Cube
1.首先Shader是Unlit/004,SubShader #0 因为我们这个shader里面只有一个渲染通道
SubShader是整个着色器的一个子着色器,当一个Mesh(网格)需要被绘制时,Unity就会在Shader中寻找渲染它的方式,并从Shader中挑选第一个能被完全支持的SubShader去实现。为了让材质,或者说让游戏画面能够在不同平台发挥其最佳的效果,我们可以定义多个SubShader。每一个SubShader都包含完整的渲染参数,渲染设置,渲染方法等。在初学阶段,我们为材质编写一个SubShader即可,剩下的工作我们可以交给强大的FallBack去完成。
2.然后我们的通道Pass是#0
3.ZClip设置 GPU 的深度剪辑模式
4.ZTest深度检测LessEqual小于目标值
LEqual 绘制位于现有几何体前面或相同距离的几何体。不绘制位于现有几何体后面的几何体。
5.ZWrite:深度写入,开启后决定片元的深度值是否写入深度缓冲,可配置
2.平台差异性
2.1 抗锯齿
由于我们Unity是跨平台的,所以有OpenGL和DirectX两种坐标系
通常情况下,Unity是会帮我们自动翻转的
但是,如果开启了抗锯齿,那么DX平台,就需要手动翻转
Unity里面这样打开抗锯齿(Anti Aliasing)
手动翻转的方法,就是首先判断是不是DX平台,然后判断是不是开启了抗锯齿,如果都满足,那么就翻转
[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-YzkCKEBZ-1655041487014)(https://liuwenxin-oss.oss-cn-hangzhou.aliyuncs.com/img/4cbba614e4f348858f2809c17e776dc0.png)]
如图,Unity是DX平台
2.2 DX平台定义变量更严格
3.第三方调试工具
边栏推荐
猜你喜欢
On the value of line height
单片机:Modbus 多机通信程序设计
Wechat payment configuration
高等数学(第七版)同济大学 习题1-3 个人解答
[test development] use case
Lightweight digital mall system based on PHP
手机私有充电协议解读
单片机:A/D 差分输入信号
[test development] basic concepts related to testing
User and permission configuration in SQL Server database to ensure database security
随机推荐
Field * doesn't have a default value problem
单片机:NEC 协议红外遥控器
MCU: NEC protocol infrared remote controller
Use of Oracle PL-SQL
Lambda终结操作count
Synching build your own synchronization cloud
【测试开发】自动化测试selenium(二)——webdriver常用的API
Tencent cloud instant messaging IM
Interpretation of usb-if bc1.2 charging protocol
单片机:I2C通信协议讲解
Goframe day 4
ROS话题与节点
[test development] automated test selenium (II) -- common APIs for webdriver
【Web】Cookie 和 Session
LVS四层负载均衡集群(3)集群功能分类 - HPC
[test development] file compression project practice
UDP connection map collection
Very simple installation and configuration of nodejs
Lambda终结操作查找与匹配anyMatch
手机私有充电协议解读