位置: 编程技术 - 正文

Unity3d Shader开发(三)Pass(Culling & Depth Testing)(unity shader cull off)

编辑:rootadmin
剔除是一种通过避免渲染背对观察者的几何体面来提高性能的优化措施。所有几何体都包含正面和反面。剔除基于大多数对象都是封闭的事实;如果你有一个立方体,你不会看到背离你的那一面(总是只有一面在你的前方),因此我们不需要绘制出背面。因此也被称做背面剔除。 该文章出自【狗刨学习网】 另一个使得渲染看起来正确的是深度测试。深度测试确保只有场景内的对象的最靠近的表面参与绘制。Syntax 语法Cull Back | Front | Off控制几何体的那一面会被剔除(不绘制) Back 不绘制背离观察者的几何体面。 Front 不绘制面向观察者的几何体面,用于由内自外的旋转对象 Off 显示所有面。用于特殊效果。ZWrite On | Off 控制是否将来之对象的像素写入深度缓冲(默认开启),如果你正绘制纯色物体,将此项打开。如果你正绘制半透明效果,关闭深度缓冲,更多细节如下ZTest Less | Greater | LEqual | GEqual | Equal | NotEqual | Always 深度测试如何执行。缺省是LEqual (绘制和存在的对象一致或是在其中的对象;隐藏他们背后的对象)Offset Factor , Units 允许你定义用两个参数深度偏移。因子和单位。Factor 缩放Z的最大斜率,几何体的X和Y也一样,units缩放可计算的深度缓冲&#;。这允许你迫使一个几何体绘制在另一个的上层,尽管他们实际上是在同一个位置。例如偏移0,-1使得靠近摄像机的几何体忽略几何体的斜率,而偏移-1,-1则会几何体在一个几乎擦过的角度被观察使看起来更近些。示例 这个对象只会渲染对象的背面。Shader "Show Insides" { SubShader { Pass { Material { Diffuse (0,1,1,1) } Lighting On Cull Front } }}复制代码 我把太阳光正对着摄像机,Cube正对摄像机 尽量应用到一个立方体上,并注意当你围绕几何体旋转时,几何体是如何看起来变糟糕的。 这是因为你只看见了立方体的内部部分。玻璃剔除 控制剔除比背面调试更有用。如果你有透明物体,你经常会想要显示一个对象的背面。如果你不做任何剔除,你会发现有时常有一部分背面会覆盖在前面的一部分上。 下面是一个用于凸物体(球,立方体,车窗)的简单着色器。Shader "Simple Glass" { Properties { _Color ("Main Color", Color) = (1,1,1,0) _SpecColor ("Spec Color", Color) = (1,1,1,1) _Emission ("Emmisive Color", Color) = (0,0,0,0) _Shininess ("Shininess", Range (0., 1)) = 0.7 _MainTex ("Base (RGB)", 2D) = "white" { } } SubShader { // We use the material in many passes by defining them in the subshader. // 我们通过把定义放在子着色器中以便可以在许多通道中访问材质 // Anything defined here becomes default values for all contained passes. // 任何定义在这里的&#;都会变成所有内含的通道的默认&#; Material { Diffuse [_Color] Ambient [_Color] Shininess [_Shininess] Specular [_SpecColor] Emission [_Emission] } Lighting On SeparateSpecular On // Set up alpha blending // 开启透明度混合 Blend SrcAlpha OneMinusSrcAlpha // Render the back facing parts of the object. // 渲染对象的背面部分 // If the object is convex, these will always be further away // 如果对象是凸, 总是离镜头离得比前面更远。 // than the front-faces. Pass { Cull Front SetTexture [_MainTex] { Combine Primary * Texture } } // Render the parts of the object facing us. // 渲染对象面向我们的部分 // If the object is convex, these will be closer than the // back-faces. // 如果对象是凸,总是比背面更靠近镜头 Pass { Cull Back SetTexture [_MainTex] { Combine Primary * Texture } } }}复制代码 剔除是一种通过避免渲染背对观察者的几何体面来提高性能的优化措施。所有几何体都包含正面和反面。剔除基于大多数对象都是封闭的事实;如果你有一个立方体,你不会看到背离你的那一面(总是只有一面在你的前方),因此我们不需要绘制出背面。因此也被称做背面剔除。 该文章出自【狗刨学习网】 另一个使得渲染看起来正确的是深度测试。深度测试确保只有场景内的对象的最靠近的表面参与绘制。Syntax 语法Cull Back | Front | Off控制几何体的那一面会被剔除(不绘制) Back 不绘制背离观察者的几何体面。 Front 不绘制面向观察者的几何体面,用于由内自外的旋转对象 Off 显示所有面。用于特殊效果。ZWrite On | Off 控制是否将来之对象的像素写入深度缓冲(默认开启),如果你正绘制纯色物体,将此项打开。如果你正绘制半透明效果,关闭深度缓冲,更多细节如下ZTest Less | Greater | LEqual | GEqual | Equal | NotEqual | Always 深度测试如何执行。缺省是LEqual (绘制和存在的对象一致或是在其中的对象;隐藏他们背后的对象)Offset Factor , Units 允许你定义用两个参数深度偏移。因子和单位。Factor 缩放Z的最大斜率,几何体的X和Y也一样,units缩放可计算的深度缓冲&#;。这允许你迫使一个几何体绘制在另一个的上层,尽管他们实际上是在同一个位置。例如偏移0,-1使得靠近摄像机的几何体忽略几何体的斜率,而偏移-1,-1则会几何体在一个几乎擦过的角度被观察使看起来更近些。示例 这个对象只会渲染对象的背面。Shader "Show Insides" { SubShader { Pass { Material { Diffuse (0,1,1,1) } Lighting On Cull Front } }}复制代码 我把太阳光正对着摄像机,Cube正对摄像机 尽量应用到一个立方体上,并注意当你围绕几何体旋转时,几何体是如何看起来变糟糕的。 这是因为你只看见了立方体的内部部分。玻璃剔除 控制剔除比背面调试更有用。如果你有透明物体,你经常会想要显示一个对象的背面。如果你不做任何剔除,你会发现有时常有一部分背面会覆盖在前面的一部分上。 下面是一个用于凸物体(球,立方体,车窗)的简单着色器。Shader "Simple Glass" { Properties { _Color ("Main Color", Color) = (1,1,1,0) _SpecColor ("Spec Color", Color) = (1,1,1,1) _Emission ("Emmisive Color", Color) = (0,0,0,0) _Shininess ("Shininess", Range (0., 1)) = 0.7 _MainTex ("Base (RGB)", 2D) = "white" { } } SubShader { // We use the material in many passes by defining them in the subshader. // 我们通过把定义放在子着色器中以便可以在许多通道中访问材质 // Anything defined here becomes default values for all contained passes. // 任何定义在这里的&#;都会变成所有内含的通道的默认&#; Material { Diffuse [_Color] Ambient [_Color] Shininess [_Shininess] Specular [_SpecColor] Emission [_Emission] } Lighting On SeparateSpecular On // Set up alpha blending // 开启透明度混合 Blend SrcAlpha OneMinusSrcAlpha // Render the back facing parts of the object. // 渲染对象的背面部分 // If the object is convex, these will always be further away // 如果对象是凸, 总是离镜头离得比前面更远。 // than the front-faces. Pass { Cull Front SetTexture [_MainTex] { Combine Primary * Texture } } // Render the parts of the object facing us. // 渲染对象面向我们的部分 // If the object is convex, these will be closer than the // back-faces. // 如果对象是凸,总是比背面更靠近镜头 Pass { Cull Back SetTexture [_MainTex] { Combine Primary * Texture } } }}复制代码

推荐整理分享Unity3d Shader开发(三)Pass(Culling & Depth Testing)(unity shader cull off),希望有所帮助,仅作参考,欢迎阅读内容。

Unity3d Shader开发(三)Pass(Culling & Depth Testing)(unity shader cull off)

文章相关热门搜索词:unity的shader用法,unity shader cull off,unity shader cull off,unity shader cull off,unity shader cull off,unity shader lod,unity shader lod,unity shader cull off,内容如对您有帮助,希望把文章链接给更多的朋友!

unity下glsl双面抖动SHADER。 ShaderCustom/move_glsl{Properties{_MainTex(Base(RGB),2D)=white{}_Speed(MoveSpeed,Range(0,3))=1}SubShader{Tags{RenderType=Opaque}LODPass{CullfrontGLSLPROGRAM#ifdefVERTEX#includeUnityCG.glslincunifor

Unity Assets目录下的特殊文件夹名称 UnityAssets目录下的特殊文件夹名称首先说明这篇文章是在贴吧中找到的并不是本人编写的文章。1.隐藏文件夹开头的文件夹会被Unity忽略。在这种文件夹

Unity中关于保存图片到Android/IOS相册中的问题 我们在一些项目中可能需要截图保存功能(特别是AR的一些项目),将截下来的图保存的相册中,从而实现分享功能。下面就Android和IOS说一下他们是如

标签: unity shader cull off

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

上一篇:熟悉MonoBehaviour的函数和其执行顺序(熟悉的拼音)

下一篇:unity下glsl双面抖动SHADER。(unity双面材质)

  • 销售利税率计算公式及分析
  • 固定资产出售如何申报增值税
  • 一般纳税人劳务税率是多少2023
  • 公司工会的主要职能是
  • 营业外收入期末结转
  • 无偿捐赠设备该如何做账务处理呢?
  • 实报实销电话费
  • 施工企业实验用具费用计入什么科目
  • 财产租赁所得个人所得税计算方法2020
  • 国税能代开什么费用的发票?
  • 税费通用申报表样板
  • 增值税普票需要填写什么内容
  • 国有资产拍买网
  • 存货跌价准备可以转回吗?
  • 定向增发利好还是利空股票
  • 私立幼儿园收费归哪个部门管
  • 华为设置输入法手写
  • 长期待摊费用属于什么要素
  • 要求快速启动
  • 消费税的计税方法有
  • php获取指定日期是星期几
  • PHP:mcrypt_ofb()的用法_Mcrypt函数
  • 碧峰峡熊猫基地门票
  • controller 层
  • PHP:imagecreatefromgd()的用法_GD库图像处理函数
  • 虚拟机是什么意思
  • 老项目简易征收税务需要的资料有哪些
  • 机器学习报错解决2——ValueError: too many values to unpack (expected 3)
  • Android 10.0 framework中关于Activitity的生命周期的源码讲解
  • vue组件通信方法
  • 企业领用低值易耗品计入
  • 外聘人员怎么申报个税
  • 报关单在哪里打出来
  • jsp页面构成
  • 其他权益工具是什么会计科目
  • 计提工资薪金
  • 帝国cms灵动标签怎么调用
  • 收集整理数据
  • 关于录制初三毕业班家长寄语通知
  • 结转成本计入
  • 一般纳税人是怎么征收
  • 进口商品采购流程及时间
  • 公司控股另一家公司好与坏
  • 其他债权投资计提减值影响所有者权益吗
  • 企业什么情况
  • 残保金提取是什么意思
  • 季度报税都是几月份
  • 记账凭证核算形式
  • 住宿费开专票怎么做账
  • 多计提的城建税怎么冲减
  • 银行退回服务费怎么写分录
  • 销售费用的主要科目
  • 新医院会计制度什么时候实施
  • 主营业务收入减少记哪方
  • 流动资产周转天数下降说明什么
  • sqlserver全文索引
  • mysql表中数据
  • 设备信息windows6.1
  • xp电脑显示屏显示不全
  • VMware虚拟机安装miui14
  • windows xp.exe
  • windowsxp如何重装ie浏览器重装
  • mac怎么设置开机默认windows
  • 苹果电脑mac系统键盘无法找到
  • 如何设置让自己手机号处于关机状态
  • win7系统注册表损坏无法启动
  • linux管理员权限命令
  • 如何使用ssh
  • java物流功能
  • linux查看端口号占用
  • find 批处理
  • python向oracle写入
  • 深入理解中国式现代化
  • python paramiko模块 判断过期
  • javascript要打开吗
  • 香港企业查询系统
  • 落地和全包一样吗
  • 湖北职称网上申请流程
  • 烟叶税计税依据是收购烟叶实际支付的价款总额
  • 税务24号公告
  • 免责声明:网站部分图片文字素材来源于网络,如有侵权,请及时告知,我们会第一时间删除,谢谢! 邮箱:opceo@qq.com

    鄂ICP备2023003026号

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

    友情链接: 武汉网站建设