基本信息
- 原书名:Unity Shaders and Effects Cookbook
- 作者: (美)Kenny Lammers
- 译者: 晏伟
- 丛书名: 游戏开发与设计技术丛书
- 出版社:机械工业出版社
- ISBN:9787111480563
- 上架时间:2017-9-18
- 出版日期:2014 年10月
- 开本:16开
- 页码:185
- 版次:1-1
- 所属分类:计算机 > 游戏 > 游戏动画设计

编辑推荐
深度挖掘着色器和屏幕特效背后的秘密,创造更加令人惊叹的Unity项目。
既循序渐进讲解Unity着色器的各种知识,详细介绍各类着色器的创建,又通过丰富实例,深入解析实现后期特效的各种使用技术和方法。
内容简介
计算机书籍
《Unity着色器和屏幕特效开发秘笈》是一本全面介绍Unity着色器的重要书籍,它对于想要学习Unity着色器的人来说是—本不容错过的好书.作者从最基础的着色器结构到着色器的创建,循序渐进地讲解着色器的各种知识,不仅会讲解皮肤着色器、布料着色器、车漆着色器、透明裁剪着色器、处理动态反射的着色器等常用着色器的创建,而且也会详细介绍如何开发后期特效,如夜视、反射等.同时,每章最后还会介绍一些新的技术,包括如何提高着色器质量以及着色08的编写效率.
全书共分为11章,几乎包含了Unity着色器中常用的效果示例.主要内容包括基础的漫反射着色;两种高光类型Blinn和Phong,以及利用这些高光类型创造蒙皮镜面、金属镜面等高光效果;反射的实现;创建自定义的光照模型;透明度在游戏当中的实现;访问存储在3D网格中的顶点信息;移动端是如何减少着色器中的内存开销的;着色器组的模块化,以及重用代码的必要性;使用渲染纹理实现屏幕特效。
《Unity着色器和屏幕特效开发秘笈》适合游戏开发者、特效程序员、美工人员阅读,也可作为培训学校的教材.
作译者
晏伟,现就职于中煤科工集团重庆研究院有限公司,对于Unity的表面着色器、HLSL等着色语言,以及MMOG服务器的构建和网络通信都有较深的了解.他的研究方向为数字矿山、计算机图形学、三维虚拟仿真,曾参与中煤科工集团重庆研究院应急救援研究所院重点项目“煤矿安全虚拟仿真与培训系统”、”国家矿山救援仿真培训系统”、“煤矿安全虚拟仿真系统—安全意识”、“矿山救援多人协同演练系统”的开发,并作为中煤科工集团重庆研究院2013年青年创新基金项目负责人,负责”矿山救援仿真演练系统的MMOG技术研究”.
目录
译者序
前 言
第1章 漫反射着色 1
1.1 引言 1
1.2 创建基本的表面着色器 2
1.2.1 准备工作 2
1.2.2 如何操作 2
1.2.3 实现原理 4
1.2.4 参考 5
1.3 为表面着色器添加属性 5
1.3.1 如何操作 5
1.3.2 如何操作 6
1.3.3 参考 7
1.4 在表面着色器中使用属性 7
1.4.1 如何操作 7
1.4.2 实现原理 9
1.5 创建自定义漫反射光照模型 9
1.5.1 如何操作 10
1.5.2 实现原理 10
译者序
2012年入职以后我才开始接触Unity,从开始使用Unity就被它强大的渲染功能深深震撼了。的确,Unity是一个强大的游戏开发工具,它使我们能够创建出令人惊叹的游戏特效和高质量的AAA级游戏,尽管相比老牌的Unreal、Cry等引擎,部分功能还处于不稳定的阶段。而作为一个强大的渲染引擎,着色器是三维游戏引擎中至关重要的一个因素,在游戏效果以及画面显示上起到决定性的作用。
Unity中的着色器并不是一门独特的语言,而是一种代码生成方式,且可简化低层次、复杂的着色器编程。目前国内市场上Unity3D着色器方面的书籍不多,而且介绍不专、不深,都是针对新手而写的入门级书籍。本书专注于Unity3D引擎的渲染方面,对Unity的着色器进行了深入讲解。对于想要学习Unity着色器的人来说,本书是一本不容错过的好书,它从最基础的着色器结构到着色器的创建,循序渐进地讲解着色器的各种知识,使读者能够逐渐掌握着色器语言。通过阅读本书,你将学到模拟人体皮肤的着色器、处理动态反射的着色器、三维场景中的渲染次序等,同时也将学习如何开发后期特效,如夜视、反射等。在每章的最后部分,还会对该章的知识进行一些补充,如介绍一些新的技术,包括如何提高着色器质量以及着色器的编写效率等。可以说,无论你是3D网络游戏的开发者、着色器编程渲染的发烧友、虚拟仿真的设计者,还是从事三维图形研究工作的研究人员,本书都是学习、开发和研究着色器的必备宝典!相信通过拜读此书,你必定会对着色器的强大渲染能力有更多惊奇的发现。
最后,我要感谢机械工业出版社不遗余力地引进国外优秀 IT 类书籍,感谢本书责任编辑陈佳媛给予我翻译本书的机会。感谢我的导师萨贤春教授,是他带领我走进了三维图形程序的世界,为以后Unity的学习打下了坚实的基础。感谢重庆煤科院应急救援所虚拟仿真培训实验室的杨俊燕博士,作为实验室主任,他指导我们完成了几个国家级或者院重点项目。正是因为这些项目,我逐渐积累了在Unity引擎、着色器、CG语言等方面的经验。在翻译过程中,我还得到了实验室多位同事的协助。特向以下协助翻译的同事表示大力感谢:刘雄、陈灿、李杜风、张咪咪、蒋旭刚、潘长松、王文海、杨发光。
由于时间仓促,译者虽已尽最大努力确保专业术语的统一和准确,也尽最大努力将原作者的意境用朴实的中文展现给读者,但由于水平和经验有限,书中的问题和疏漏之处在所难免,敬请读者朋友批评指正。
晏伟
2014年8月于重庆北碚
前言
在每章的最后,你还将学习新的技术,包括提高着色器质量,甚至如何使着色器编写过程更加高效。不管你是初学者或者专家,这些章节都是为你量身定制的,你可以跳过任意部分去学习特定的技术。对于那些在Unity中学习着色器的新手而言,你可以循序渐进地学习每一章以便逐步建立自己的着色器知识库。无论通过哪种方式,你都将学习到现代游戏的制作方式和方法。
读完本书,你将获得一组能够在Unity3D游戏中使用的着色器,同时掌握如何添加相应的着色器来实现新的特效并满足性能要求。
本书的主要内容
第1章通过在Unity3D中构建一个着色器解释了着色器编写的基础知识。然后,利用所学的知识创建默认的漫反射光照,并从游戏的角度提供了创建自定义漫反射光照的技巧。
第2章介绍了如何利用纹理来创建不同的特效。你将学习如何利用着色器在精灵表单(Sprite sheet)上实现动画纹理,以及如何利用纹理的不同通道,让着色器更有效率。在该章的最后,你将掌握利用纹理来创建自定义特效的技能。
第3章教给你在创建应用最广泛的高光类型——Blinn和Phong时所需的所有知识。你将学习如何应用这些着色器效果来创建蒙版镜面、金属镜面,并学习创建各向异性镜面的技术。在该章的最后,你将有足够的信心为自定义着色器创建属于自己的镜面效果。
第4章带你了解现代游戏最受欢迎的效果之一,即把反射技术写入着色器中。该章将教你关于反射的一切知识,从Unity3D着色器中反射的基础知识到如何使用C#创建简单的自定义动态反射系统。
第5章开始创建更复杂的着色器。你将学习如何创建自定义光照模型来实现自定义类型的表面。每个方法展示了不同的技术来完成不同的任务,都是为了提高着色器编写能力。在该章的最后,你将创建自己的皮肤着色器、发光球体着色器以及车辆喷漆着色器。
第6章介绍透明度。有数据表明,在游戏制作的过程中,透明度已经成为一项必要的技术。在一定程度上,几乎所有游戏都需要使用透明度,如图形用户界面(GUI)、树叶、贴花等。在该章中,你将学习如何使用Unity3D中的透明度,以及使用透明度时如何处理可能发生的任何问题。
第7章包括如何访问存储在3D网格中的每个顶点信息。你将学习如何得到顶点信息,并且在着色器中使用这些信息实现诸如纹理混合和动画的效果。
第8章主要介绍了利用Unity的内置标记和内置值来减少着色器内存开销的方法。这对于我们处理移动平台上的着色器特别重要。
第9章展示了学习重用代码的必要性,重用代码可以让着色器的编写更有效率。该章也展示了如何创建自定义CgInclude文件来存储需要重用的重复代码。
第10章从现代游戏如何利用屏幕特效(有时也称为后期特效)开始,到如何改变一个游戏的最终渲染效果。你将学习如何创建自己的屏幕特效,并了解如何添加颜色调整以及纹理叠加背后的秘密,从而为你的游戏制造出不一样的视觉外观。
第11章将进一步介绍屏幕特效,并为你展示在游戏当中是如何增强游戏氛围的。你将学习如何创建一种老电影的屏幕特效以及夜视的屏幕特效。
阅读前的准备工作
以下是我们完成本书内容所需的软件和可选的软件列表:
Unity3D(第10章和第11章需要使用Unity3D 专业版)
3D建模软件,如Maya、Max或 Blender(可选)
2D图像编辑软件,如Photoshop或 Gimp(可选)