第1章 基于物理的材质 1
1.1 “基于物理”有何含义 2
1.2 材质参数 2
1.2.1 底色 3
1.2.2 粗糙度 4
1.2.3 贴图粗糙度 4
1.2.4 金属色 5
1.2.5 高光 6
第2章 定制UV 8
2.1 属性 9
2.2 非线性数学运算 10
2.3 线性数学运算 11
2.4 工作方式 12
2.5 一般性能 13
2.6 特定于移动设备 13
第3章 材质编辑器 14
3.1 打开材质编辑器 15
3.2 表达式注释 15
3.2.1 使用Desc属性 15
3.2.2 使用注释 15
3.3 实时节点和实时更新 16
3.4 编译错误 17
3.5 搜索材质表达式 17
3.6 材质编辑器UI 18
3.6.1 菜单栏 19
3.6.2 工具栏 20
3.6.3 视口面板 22
3.6.4 Details面板 23
3.6.5 Graph面板 23
3.6.6 Palette面板 24
3.6.7 Stats面板 24
3.6.8 HLSL代码面板 24
3.6.9 图表功能键 25
第4章 材质表达式 27
4.1 材质表达式简介 28
4.2 大气表达式 35
4.3 颜色表达式 35
4.4 常量表达式 36
4.4.1 (常量) 36
4.4.2 (常量2矢量) 37
4.4.3 (常量3矢量) 38
4.4.4 (常量4矢量) 38
4.4.5 (距离剔除消退) 39
4.4.6 (粒子颜色) 40
4.4.7 (粒子方向) 40
4.4.8 (粒子运动模糊消退) 41
4.4.9 (粒子半径) 41
4.4.10 (粒子相对时间) 41
4.4.11 (粒子大小) 42
4.4.12 (粒子速度) 43
4.4.13 (按实例消退量) 43
4.4.14 (按实例随机) 43
4.4.15 (时间) 44
4.4.16 (双面符号) 45
4.4.17 (顶点颜色) 45
4.4.18 (视图属性) 46
4.4.19 (预先计算的AO蒙版) 46
4.5 坐标表达式 48
4.5.1 (Actor全局空间位置) 48
4.5.2 (摄像机全局空间位置) 48
4.5.3 (光照贴图UV) 49
4.5.4 (对象方向) 49
4.5.5 (对象全局空间位置) 49
4.5.6 (对象半径) 49
4.5.7 (平移) 50
4.5.8 (粒子全局空间位置) 51
4.5.9 (像素全局空间法线) 51
4.5.10 (旋转) 52
4.5.11 (场景纹素大小) 52
4.4.12 (屏幕位置) 52
4.5.13 (纹理坐标) 53
4.5.14 (顶点全局空间法线) 54
4.5.15 (视图大小) 54
4.5.16 (全局位置) 55
4.6 定制表达式 55
4.7 深度表达式 57
4.7.1 (深度消退) 57
4.7.2 (像素深度) 58
4.7.3 (场景深度) 58
4.8 字体表达式 59
4.8.1 (字体取样) 59
4.8.2 (字体取样参数) 60
4.9 材质函数表达式 60
4.9.1 (函数输入) 60
4.9.2 (函数输出) 61
4.9.3 (材质函数调用) 61
4.9.4 (静态布尔值) 62
4.9.5 (静态开关) 62
4.9.6 (纹理对象) 62
4.10 景观表达式 63
4.10.1 (景观层混合) 63
4.10.2 (景观层坐标) 65
4.10.3 (景观层开关) 65
4.10.4 (景观层权重) 66
4.10.5 (景观可见性蒙版) 66
4.11 材质属性表达式 67
4.11.1 (中断材质属性) 67
4.11.2 (建立材质属性) 68
4.12 数学表达式 68
4.12.1 (绝对值) 68
4.12.2 (加) 69
4.12.3 (追加矢量) 70
4.12.4 (加一取整) 70
4.12.5 (限制) 71
4.12.6 (分量蒙版) 71
4.12.7 (余弦) 72
4.12.8 (矢量积) 73
4.12.9 (除) 74
4.12.10 (标量积) 74
4.12.11 (减一取整) 75
4.12.12 (浮点余数) 75
4.12.13 (小数) 76
4.12.14 (如果) 76
4.12.15 (线性插值) 77
4.12.16 (最大值) 78
4.12.17 (最小值) 79
4.12.18 (乘) 79
4.12.19 (规范化) 80
4.12.20 (一减) 80
4.12.21 (幂) 81
4.12.22 (正弦) 82
4.12.23 (平方根) 82
4.12.24 (减) 83
4.13 参数表达式 84
4.13.1 (集合参数) 84
4.13.2 (动态参数) 84
4.13.3 (字体取样参数) 84
4.13.4 (标量参数) 85
4.13.5 (静态布尔参数) 86
4.13.6 (静态开关参数) 86
4.13.7 (静态分量蒙版参数) 87
4.13.8 (矢量参数) 88
4.13.9 (纹理对象参数) 89
4.13.10 (纹理取样参数2D) 90
4.13.11 (纹理取样参数子UV) 90
4.13.12 (纹理取样参数立方体) 91
4.13.13 (纹理取样参数电影) 92
4.14 粒子表达式 93
4.14.1 (动态参数) 93
4.14.2 (粒子颜色) 93
4.14.3 (粒子方向) 94
4.14.4 (粒子宏UV) 94
4.14.5 (粒子运动模糊消退) 95
4.14.6 (粒子全局空间位置) 95
4.14.7 (粒子半径) 96
4.14.8 (粒子相对时间) 96
4.14.9 (粒子大小) 97
4.14.10 (粒子速度) 97
4.14.11 (球形粒子不透明度) 98
4.14.12 (粒子子UV) 98
4.14.13 (纹理取样参数子UV) 99
4.15 纹理表达式 100
4.15.1 (字体取样) 100
4.15.2 (字体取样参数) 101
4.15.3 (场景颜色) 102
4.15.4 (精灵纹理取样) 102
4.15.5 (纹理对象) 103
4.15.6 (纹理取样) 103
4.15.7 (纹理属性) 105
4.15.8 (粒子子UV) 105
4.15.9 (纹理对象参数) 106
4.15.10 (纹理取样参数2D) 107
4.15.11 (纹理取样参数子UV) 107
4.15.12 (纹理取样参数立方体) 108
4.16 纹理表达式 109
4.16.1 (字体取样) 109
4.16.2 (字体取样参数) 110
4.16.3 (场景颜色) 110
4.16.4 (精灵纹理取样) 111
4.16.5 (纹理对象) 112
4.16.6 (纹理取样) 112
4.16.7 (纹理属性) 113
4.16.8 (粒子子UV) 114
4.16.9 (纹理对象参数) 114
4.16.10 (纹理取样参数2D) 115
4.16.11 (纹理取样参数子UV) 116
4.16.12 (纹理取样参数立方体) 116
4.17 实用程序表达式 117
4.17.1 (黑体) 117
4.17.2 (凹凸贴图偏移) 118
4.17.3 (常量偏差比例) 118
4.17.4 DDX 119
4.17.5 DDY 119
4.17.6 (深度消退) 119
4.17.7 (视野深度函数) 120
4.17.8 (去饱和度) 121
4.17.9 (距离) 122
4.17.10 (功能级别开关) 122
4.17.11 (菲涅尔) 123
4.17.12 (GI替换) 124
4.17.13 (光照系统替换) 125
4.17.14 (线性插值) 125
4.17.15 (噪声) 126
4.17.16 (质量开关) 127
4.17.17 (绕轴旋转) 127
4.17.18 (球体蒙版) 128
4.17.19 (抗锯齿纹理蒙版) 128
4.17.20 (与最近表面的距离) 129
4.17.21 (距离场梯度) 130
4.18 矢量表达式 131
4.18.1 (Actor全局空间位置) 131
4.18.2 (摄像机全局空间位置) 132
4.18.3 (摄像机全局空间矢量) 132
4.18.4 (常量2矢量) 133
4.18.5 (常量3矢量) 134
4.18.6 (常量4矢量) 134
4.18.7 (光线矢量) 135
4.18.8 (对象界限) 135
4.18.9 (对象方向) 136
4.18.10 (对象全局空间位置) 136
4.18.11 (粒子全局空间位置) 136
4.18.12 (像素全局空间法线) 137
4.18.13 (反射全局空间矢量) 137
4.18.14 (顶点全局空间法线) 138
4.19 矢量操作表达式 138
4.19.1 (追加矢量) 138
4.19.2 (分量蒙版) 139
4.19.3 (矢量积) 140
4.19.4 (派生法线Z) 141
4.19.5 (标量积) 141
4.19.6 (规范化) 142
4.19.7 (转换) 142
4.19.8 (转换位置) 144
第5章 材质函数 145
5.1 材质函数概述 146
5.1.1 材质函数库 147
5.1.2 与函数相关的节点 147
5.1.3 输入及输出 148
5.1.4 公共属性 150
5.1.5 预览 151
5.1.6 参数 152
5.1.7 组织 154
5.1.8 传播 155
5.1.9 嵌套函数 155
5.1.10 编译错误 155
5.1.11 默认材质函数 156
5.2 创建材质函数 156
5.2.1 创建材质函数 156
5.2.2 发布你的新函数 158
5.3 编辑材质函数 159
5.4 使用材质函数 160
第6章 材质关键属性 162
6.1 材质表达式节点与网络 163
6.2 使用颜色和数字 163
6.3 纹理 164
6.4 属性与输入 164
6.5 将材质应用于表面 165
6.5.1 网格体 165
6.5.2 刷表面 166
第7章 分层材质 168
7.1 重要的益处 170
7.2 混合类型 171
7.3 分层材质实例化 172
7.4 警告 173
第8章 材质明暗处理模型 174
8.1 次表面明暗处理模型 175
8.1.1 技术细节 175
8.1.2 材质输入通道 175
8.1.3 局限性 176
8.2 次表面轮廓明暗处理模型 176
8.3 什么是次表面轮廓 177
8.4 启用、创建和使用次表面轮廓 177
8.5 材质输入通道 179
8.6 技术细节 180
8.7 比例调整和控制台命令 181
第9章 材质输入 183
9.1 输入和材质设置 184
9.2 底色 184
9.3 金属色 185
9.4 高光 185
9.5 粗糙度 186
9.6 自发光颜色 186
9.7 透明度 186
9.8 透明度蒙版 187
9.9 法线 187
9.10 世界位置偏移 188
9.11 世界位移以及多边形细分乘数 189
9.12 次表面颜色 189
9.13 环境遮挡 190
9.14 折射 190
9.15 透明图层 191
第10章 实例化材质 192
10.1 实例和参数 193
10.2 常量实例和动态实例 194
10.2.1 常量材质实例 194
10.2.2 动态材质实例 195
10.3 技术应用 195
10.4 在编辑器中将材质实例化 195
10.5 参数组 197
10.6 创建参数化材质 197
10.7 标量参数 198
10.8 矢量参数 198
10.9 纹理参数 198
10.10 静态参数 198
10.11 材质实例编辑器用户指南 199
10.11.1 概述 199
10.11.2 打开材质实例编辑器 199
10.11.3 材质实例编辑器界面 199
10.12 创建实例 202
10.13 重载参数 204
10.14 工作流程 204
10.14.1 美术工作流程 204
10.14.2 关卡设计师的工作流程 205
第11章 材质属性 206
11.1 材质属性简介 207
11.2 材质混合模式 215
11.2.1 不透明(Opaque) 216
11.2.2 遮掩(Masked) 216
11.2.3 半透明(Translucent) 217
11.2.4 加性(Additive) 218
11.2.5 调制(Modulate) 219
11.3 光照模型 220
11.3.1 默认光照 221
11.3.2 无光照 221
11.3.3 次表面 222
11.3.4 预集成皮肤 222
第12章 材质参数集合 223
12.1 创建&编辑材质参数集合 224
12.2 使用材质中的材质参数集合 226
12.3 新材质参数集合 228
12.4 限制及性能特征 231
第13章 材质操作实战 232
13.1 材质操作要点 233
13.2 如何产生UV坐标动画 235
13.2.1 什么是UV坐标动画 235
13.2.2 “平移”(Panner)节点明细 235
13.2.3 如何在材质中使用动画UV坐标 236
13.2.4 提示与技巧 237
13.2.5 结论 238
13.3 如何使用凹凸贴图偏移(Bump Offset) 238
13.3.1 凹凸贴图偏移(Bump Offset) 238
13.3.2 查找凹凸贴图偏移(Bump Offset)材质表达式 238
13.3.3 使用凹凸贴图偏移(Bump Offset)材质表达式 239
13.3.4 结论 242
13.4 如何对透明涂层使用双法线 242
13.4.1 第二法线贴图的作用 242
13.4.2 所需文件 243
13.4.3 启用双法线透明涂层选项 243
13.4.4 使用双法线透明涂层选项 244
13.5 如何使用彩色半透明阴影 247
13.5.1 半透明阴影颜色 247
13.5.2 材质设置 248
13.5.3 照亮材质 248
13.5.4 使用中的彩色半透明阴影 250
13.5.5 阴影清晰度 250
13.5.5 局限性 251
13.5.6 结论 251
13.6 创建分层材质 251
13.6.1 简单铬合金 251
13.6.2 铬合金层网络 253
13.6.3 简单的雪 254
13.6.4 雪层网络 255
13.6.5 分层材质 256
13.6.6 分层材质网络 258
13.6.7 分层材质实例化 259
13.7 如何添加细节纹理 260
13.7.1 细节纹理化 260
13.7.2 细节纹理化(Detail Texturing)节点明细 260
13.7.3 将纹理样本转换为纹理对象 261
13.7.4 如何在材质中使用细节纹理化功能 261
13.7.5 使用“细节纹理化”(Detail Texturing)材质函数 262
13.7.6 不使用细节材质函数 264
13.7.7 基于距离的细节纹理化 267
13.7.8 结论 268
13.8 使用“自发光”(Emissive)材质输入 268
13.8.1 放射性辉光 268
13.8.2 照亮与不照亮自发光材质 268
13.8.3 创建自发光材质 269
13.8.4 创建测试贴图 271
13.8.5 作用中的自发光材质 272
13.8.6 使用自发光材质来照亮环境 273
13.8.7 自发光影响与高光 275
13.8.8 总结 275
13.9 在材质中使用菲涅尔效果 275
13.9.1 菲涅尔效果 276
13.9.2 “菲涅尔效果”(Fresnel)节点明细 276
13.9.3 如何在材质中使用菲涅尔效果 277
13.9.4 “菲涅尔效果”(Fresnel)与法线贴图 280
13.9.5 “菲涅尔效果”(Fresnel)的其他用途 282
13.9.6 结论 283
13.10 如何设置人体皮肤 283
13.10.1 设置 283
13.10.2 材质(Material) 284
13.10.3 使用次表面概况 288
13.10.4 有用的链接 288
13.10.5 总结 288
13.11 如何创建和使用材质实例 289
13.11.1 材质实例化 289
13.11.2 材质参数 289
13.11.3 创建材质实例 290
13.11.4 使用中的材质实例 292
13.11.5 更改材质实例的父材质 294
13.11.6 结论 296
13.12 如何使用主材质节点 296
13.12.1 主材质节点 296
13.12.2 主材质节点明细 296
13.12.3 使用主材质节点 299
13.12.4 结论 302
13.13 如何构造材质函数 302
13.13.1 材质函数 302
13.13.2 创建材质函数 302
13.13.3 构建材质函数 302
13.13.4 使用材质函数 307
13.13.5 结论 308
13.14 构造材质参数 308
13.14.1 参数 309
13.14.2 创建参数 309
13.14.3 使用参数 309
13.14.4 总结 310
13.15 如何使用纹理遮罩 310
13.15.1 纹理蒙版 310
13.15.2 创建纹理蒙版 310
13.15.3 导出纹理蒙版 311
13.15.4 使用纹理蒙版 311
13.15.5 遮罩提示与技巧 315
13.15.6 总结 316
13.16 如何放置材质表达式和函数 316
13.16.1 材质表达式 317
13.16.2 材质表达式与材质函数之间的差别 317
13.16.3 放置材质表达式 317
13.16.4 放置材质函数 318
13.16.5 结论 319
13.17 如何预览和应用材质 319
13.17.1 预览和应用材质 320
13.17.2 如何预览材质 320
13.17.3 如何应用材质 321
13.17.4 总结 321
13.18 如何使用折射 321
13.18.1 折射 322
13.18.2 折射率或IOR 322
13.18.3 在材质中使用折射 322
13.18.4 折射提示与技巧 324
13.18.5 总结 327
13.19 如何建立有光泽的材质 327
13.19.1 光泽度 327
13.19.2 粗糙度与光泽度 327
13.19.3 金属色与光泽度 328
13.19.4 高光与光泽度 328
13.19.5 在材质中使用光泽度 328
13.19.6 总结 332
13.20 在材质中使用次表面轮廓 332
13.20.1 使材质能够使用次表面轮廓 333
13.20.2 创建次表面轮廓 333
13.20.3 创建使用次表面轮廓的材质 334
13.20.4 在材质实例中使用次表面轮廓 336
13.20.5 应用次表面轮廓材质 337
13.20.6 调整次表面轮廓 339
13.20.7 提示与技巧 339
13.21 如何在材质中使用次表面散射 340
13.21.1 启用次表面明暗处理模型 340
13.21.2 设置次表面材质 341
13.21.3 应用次表面材质 342
13.21.4 使用次表面材质 343
13.21.5 使用纹理作为次表面影响蒙版 345
13.22 如何使用透明度 346
13.22.1 透明度 346
13.22.2 透明度与不透明度 346
13.22.3 在材质中使用透明度 347
13.22.4 透明度与反射 349
13.22.5 透明度的用途 351
13.22.6 透明度与性能 351
13.22.7 半透明优先顺序(Translucency Sort Priority) 352
13.22.8 总结 353