Unity着色器和屏幕特效开发秘笈

Unity着色器和屏幕特效开发秘笈

游戏开发与设计技术丛书

暂无评价综合评分的显示会考虑用户真实性等多项因素,每部作品出现综合评分的时间不定。
免费试读

作品简介

本书是一本全面介绍unity着色器的重要书籍,它对于想要学习unity着色器的人来说是—本不容错过的好书。作者从最基础的着色器结构到着色器的创建,循序渐进地讲解着色器的各种知识,不仅会讲解皮肤着色器、布料着色器、车漆着色器、透明裁剪着色器、处理动态反射的着色器等常用着色器的创建,而且也会详细介绍如何开发后期特效,如夜视、反射等。同时,每章最后还会介绍一些新的技术,包括如何提高着色器质量以及着色08的编写效率。

全书共分为11章,几乎包含了unity着色器中常用的效果示例。主要内容包括基础的漫反射着色;两种高光类型blinn和phong,以及利用这些高光类型创造蒙皮镜面、金属镜面等高光效果;反射的实现;创建自定义的光照模型;透明度在游戏当中的实现;访问存储在3d网格中的顶点信息;移动端是如何减少着色器中的内存开销的;着色器组的模块化,以及重用代码的必要性;使用渲染纹理实现屏幕特效。

作者:莱莫尔斯(Kenny Lammers),有13年的游戏行业从业经验,曾就职于微软、Activision和Surreal Software等公司,目前经营两家公司——Creative TD和Ozone Interactive。Creative TD这家公司主要为IGT、微软、Janus Research和Allegorithmic等公司提供Unity3D咨询和资源创建服务,Ozone Interactive这家公司专注于Untiy3D,为亚马逊、E行媒体、微软和Sucker Punch游戏公司等制作互动式应用和高品质的设计。

译者:晏伟,现就职于中煤科工集团重庆研究院有限公司,对于Unity的表面着色器、HLSL等着色语言,以及MMOG服务器的构建和网络通信都有较深的了解。他的研究方向为数字矿山、计算机图形学、三维虚拟仿真,曾参与中煤科工集团重庆研究院应急救援研究所院重点项目“煤矿安全虚拟仿真与培训系统”、“国家矿山救援仿真培训系统”、“煤矿安全虚拟仿真系统—安全意识”、“矿山救援多人协同演练系统”的开发,并作为中煤科工集团重庆研究院2013年青年创新基金项目负责人,负责“矿山救援仿真演练系统的MMOG技术研究”。

作品目录

  1. 译者序
  2. 前言
  3. 第1章 漫反射着色
  4. 1.1 引言
  5. 1.2 创建基本的表面着色器
  6. 1.2.1 准备工作
  7. 1.2.2 如何操作
  8. 1.2.3 实现原理
  9. 1.2.4 参考
  10. 1.3 为表面着色器添加属性
  11. 1.3.1 如何操作
  12. 1.3.2 如何操作
  13. 1.3.3 参考
  14. 1.4 在表面着色器中使用属性
  15. 1.4.1 如何操作
  16. 1.4.2 实现原理
  17. 1.5 创建自定义漫反射光照模型
  18. 1.5.1 如何操作
  19. 1.5.2 实现原理
  20. 1.5.3 更多内容
  21. 1.5.4 参考
  22. 1.6 创建Half Lambert光照模型
  23. 1.6.1 如何操作
  24. 1.6.2 实现原理
  25. 1.7 创建渐变纹理来控制漫反射着色
  26. 1.7.1 准备工作
  27. 1.7.2 如何操作
  28. 1.7.3 实现原理
  29. 1.8 使用2D渐变纹理创建假的BRDF
  30. 1.8.1 准备工作
  31. 1.8.2 如何操作
  32. 1.8.3 实现原理
  33. 1.8.4 参考
  34. 第2章 使用纹理贴图制作特效
  35. 2.1 引言
  36. 2.2 通过修改UV坐标实现纹理贴图的滚动
  37. 2.2.1 准备工作
  38. 2.2.2 如何操作
  39. 2.2.3 实现原理
  40. 2.3 让精灵表单动起来
  41. 2.3.1 准备工作
  42. 2.3.2 如何操作
  43. 2.3.3 实现原理
  44. 2.3.4 更多内容
  45. 2.3.5 参考
  46. 2.4 压缩和混合纹理贴图
  47. 2.4.1 准备工作
  48. 2.4.2 如何操作
  49. 2.4.3 实现原理
  50. 2.4.4 参考
  51. 2.5 法线贴图
  52. 2.5.1 准备工作
  53. 2.5.2 如何操作
  54. 2.5.3 实现原理
  55. 2.5.4 更多内容
  56. 2.6 在Unity编辑器中创建程序纹理贴图
  57. 2.6.1 准备工作
  58. 2.6.2 如何操作
  59. 2.6.3 实现原理
  60. 2.6.4 更多内容
  61. 2.7 Photoshop色阶效果
  62. 2.7.1 准备工作
  63. 2.7.2 如何操作
  64. 2.7.3 实现原理
  65. 2.7.4 更多内容
  66. 2.7.5 参考
  67. 第3章 利用镜面反射让游戏闪耀起来
  68. 3.1 引言
  69. 3.2 利用Unity3D内置的高光类型
  70. 3.2.1 准备工作
  71. 3.2.2 如何操作
  72. 3.2.3 实现原理
  73. 3.3 创建Phong高光类型
  74. 3.3.1 准备工作
  75. 3.3.2 如何操作
  76. 3.3.3 实现原理
  77. 3.4 创建BlinnPhong高光类型
  78. 3.4.1 准备工作
  79. 3.4.2 如何操作
  80. 3.4.3 实现原理
  81. 3.5 使用贴图对模型的高光进行遮罩
  82. 3.5.1 准备工作
  83. 3.5.2 如何操作
  84. 3.5.3 实现原理
  85. 3.6 金属与软高光
  86. 3.6.1 准备工作
  87. 3.6.2 如何操作
  88. 3.6.3 实现原理
  89. 3.6.4 参考
  90. 3.7 创建各向异性高光类型
  91. 3.7.1 准备工作
  92. 3.7.2 如何操作
  93. 3.7.3 实现原理
  94. 第4章 着色器的反射
  95. 4.1 在Unity3D中创建立方图
  96. 4.1.1 准备工作
  97. 4.1.2 如何操作
  98. 4.1.3 实现原理
  99. 4.1.4 参考
  100. 4.2 Unity3D中简单的立方图反射
  101. 4.2.1 准备工作
  102. 4.2.2 如何操作
  103. 4.2.3 实现原理
  104. 4.3 Unity3D中的遮罩反射
  105. 4.3.1 准备工作
  106. 4.3.2 如何操作
  107. 4.3.3 实现原理
  108. 4.4 Unity3D中的法线贴图和反射
  109. 4.4.1 准备工作
  110. 4.4.2 如何操作
  111. 4.4.3 实现原理
  112. 4.4.4 更多内容
  113. 4.5 Unity3D中的菲涅尔反射
  114. 4.5.1 准备工作
  115. 4.5.2 如何操作
  116. 4.5.3 实现原理
  117. 4.6 在Unity3D中创建简单的动态立方图系统
  118. 4.6.1 准备工作
  119. 4.6.2 如何操作
  120. 4.6.3 实现原理
  121. 4.6.4 更多内容
  122. 第5章 光照模型
  123. 5.1 引言
  124. 5.2 发光球体光照模型
  125. 5.2.1 准备工作
  126. 5.2.2 如何操作
  127. 5.2.3 实现原理
  128. 5.2.4 参考
  129. 5.3 漫反射卷积光照模型
  130. 5.3.1 准备工作
  131. 5.3.2 如何操作
  132. 5.3.3 实现原理
  133. 5.3.4 更多内容
  134. 5.3.5 参考
  135. 5.4 创建车辆喷漆的光照模型
  136. 5.4.1 准备工作
  137. 5.4.2 如何操作
  138. 5.4.3 实现原理
  139. 5.4.4 更多内容
  140. 5.5 皮肤着色器
  141. 5.5.1 准备工作
  142. 5.5.2 如何操作
  143. 5.5.3 实现原理
  144. 5.5.4 更多内容
  145. 5.6 布料着色器
  146. 5.6.1 准备工作
  147. 5.6.2 如何操作
  148. 5.6.3 实现原理
  149. 第6章 透明度
  150. 6.1 引言
  151. 6.2 使用alpha参数创建透明效果
  152. 6.2.1 准备工作
  153. 6.2.2 如何操作
  154. 6.2.3 实现原理
  155. 6.3 透明裁剪着色器
  156. 6.3.1 准备工作
  157. 6.3.2 如何操作
  158. 6.3.3 实现原理
  159. 6.4 通过渲染队列进行深度排序
  160. 6.4.1 准备工作
  161. 6.4.2 如何操作
  162. 6.4.3 实现原理
  163. 6.5 GUI和透明度
  164. 6.5.1 准备工作
  165. 6.5.2 如何操作
  166. 6.5.3 实现原理
  167. 第7章 顶点魔法
  168. 7.1 引言
  169. 7.2 在表面着色器中访问顶点颜色
  170. 7.2.1 准备工作
  171. 7.2.2 如何操作
  172. 7.2.3 实现原理
  173. 7.2.4 更多内容
  174. 7.3 表面着色器的顶点动画
  175. 7.3.1 准备工作
  176. 7.3.2 如何操作
  177. 7.3.3 实现原理
  178. 7.4 在地形中使用顶点颜色
  179. 7.4.1 准备工作
  180. 7.4.2 如何操作
  181. 7.4.3 实现原理
  182. 第8章 移动平台上着色器的优化
  183. 8.1 引言
  184. 8.2 什么是轻型着色器
  185. 8.2.1 准备工作
  186. 8.2.2 如何操作
  187. 8.2.3 实现原理
  188. 8.3 对着色器进行性能分析
  189. 8.3.1 准备工作
  190. 8.3.2 如何操作
  191. 8.3.3 实现原理
  192. 8.3.4 更多内容
  193. 8.4 移动平台上的着色器修改
  194. 8.4.1 准备工作
  195. 8.4.2 如何操作
  196. 8.4.3 实现原理
  197. 第9章 使用CgInclude文件让着色器模块化
  198. 9.1 引言
  199. 9.2 Unity中的内置CgInclude文件
  200. 9.2.1 准备工作
  201. 9.2.2 如何操作
  202. 9.2.3 实现原理
  203. 9.3 创建CgInclude文件来存储光照模型
  204. 9.3.1 准备工作
  205. 9.3.2 如何操作
  206. 9.3.3 实现原理
  207. 9.4 使用#define指令模块化地创建着色器
  208. 9.4.1 如何操作
  209. 9.4.2 实现原理
  210. 第10章 使用Unity的渲染纹理实现屏幕特效
  211. 10.1 引言
  212. 10.2 创建屏幕特效的脚本系统
  213. 10.2.1 准备工作
  214. 10.2.2 如何操作
  215. 10.2.3 实现原理
  216. 10.2.4 更多内容
  217. 10.3 使用屏幕特效实现亮度、饱和度以及对比度
  218. 10.3.1 准备工作
  219. 10.3.2 如何操作
  220. 10.3.3 实现原理
  221. 10.4 使用屏幕特效实现类似Photoshop的基本混合模式
  222. 10.4.1 准备工作
  223. 10.4.2 如何操作
  224. 10.4.3 实现原理
  225. 10.4.4 更多内容
  226. 10.5 使用屏幕特效实现叠加混合模式
  227. 10.5.1 准备工作
  228. 10.5.2 如何操作
  229. 10.5.3 实现原理
  230. 第11章 游戏的可玩性和屏幕特效
  231. 11.1 引言
  232. 11.2 创建老电影风格的屏幕特效
  233. 11.2.1 准备工作
  234. 11.2.2 如何操作
  235. 11.2.3 实现原理
  236. 11.3 创建夜视的屏幕特效
  237. 11.3.1 准备工作
  238. 11.3.2 如何操作
  239. 11.3.3 实现原理
  240. 11.3.4 参考
载入中