开发者社区> 华章计算机> 正文
阿里云
为了无法计算的价值
打开APP
阿里云APP内打开

《Unity开发实战》——3.11节禁用材质剔除

简介:
+关注继续查看

本节书摘来自华章社区《Unity开发实战》一书中的第3章,第3.11节禁用材质剔除,作者 (爱尔兰)Matt Smith (巴西)Chico Queiroz,更多章节内容可以访问云栖社区“华章社区”公众号查看

3.11 禁用材质剔除
当创建一个透明或半透明对象的时候,可能想看它的内部表面。但是默认情况下Unity的透明着色器让其不可见。本节将编辑Unity中的内置透明着色器以让其对用户可见。

3.11.1 准备工作
请从网址 http://unity3d.com/unity/download/archive下载Unity的内置shaders的源码以便完成本节的学习, 还需要一个带有透明通道的纹理,在文件夹0423_03_10中可以找到名为grid.tga的图片。

3.11.2 操作步骤
请按照下面的步骤禁止材质剔除:
1)打开带有Unity内置shaders源码的压缩包,解压DefaultResources文件夹中名为AlphaTest-BumpSpec.shader的文件到桌面上。
2)复制AlphaTest-BumpSpec.shader 重命名为 AlphaTest-DoubleSided. Shader,并打开。
3)把第一行修改成: Shader "Transparent/Cutout/DoubleSided" {。
4)添加下面的代码:


6648ddc1ebe7b3735149b7d0c799c90648da1509


23b16a9ba8b9e1e896726f42d854d3d33dd3825d

3.11.3 实现原理
Cull Off 命令让Unity渲染物体的前后表面,虽然对于Cutout shader来说用着还行,但用透明着色器的其他类型可能导致不可预料的结果。

3.11.4 更多内容
这里有一些附加的资源和解决方案:

  1. 学习更多关于shaders的知识
    Unity的文档中有几篇关于shader编程的文章,链接为http://docs.unity3d.com/Documentation/ Components/ SL-Reference.html。
  2. 通过编辑对象的geometry解决问题
    可以通过复制3D模型的表面得到类似的结果,然后翻转新几何体的法线。

版权声明:本文内容由阿里云实名注册用户自发贡献,版权归原作者所有,阿里云开发者社区不拥有其著作权,亦不承担相应法律责任。具体规则请查看《阿里云开发者社区用户服务协议》和《阿里云开发者社区知识产权保护指引》。如果您发现本社区中有涉嫌抄袭的内容,填写侵权投诉表单进行举报,一经查实,本社区将立刻删除涉嫌侵权内容。

相关文章
《Unity 4 3D开发实战详解》一6.5 交通工具
在前面的内容中,讲解了Unity开发平台下物理引擎的相关内容,正是这一完善的物理引擎,使得模拟现实变得极其简单。在本小节中,将通过一个交通工具的小案例来模拟现实生活中汽车的各种运动。下面将对交通工具案例的开发步骤进行介绍。
2249 0
《Unity 4 3D开发实战详解》一6.6 布料
本节主要向读者介绍布料的相关知识,布料是Unity内建物理引擎中另外一个很重要的概念。弄清楚布料的概念对于Unity开发新手来说是很重要的。通过本节的学习,读者将对布料有一个基本的认识。
2099 0
《Unity虚拟现实开发实战》——导读
本节书摘来自华章出版社《Unity虚拟现实开发实战》一书中的目录导读,作者[美] 乔纳森·林诺维斯,更多章节内容可以访问云栖社区“华章计算机”公众号查看。
2014 0
10057
文章
0
问答
来源圈子
更多
+ 订阅
文章排行榜
最热
最新
相关电子书
更多
低代码开发师(初级)实战教程
立即下载
阿里巴巴DevOps 最佳实践手册
立即下载
冬季实战营第三期:MySQL数据库进阶实战
立即下载