建模
-
流程:模型阶段->贴图阶段->渲染阶段
-
模型阶段导出的格式一般为fbx
-
Substance Painter适用于游戏领域,mari适用于影视领域
因为相同纹理在同精度下,SP的效果不如mari。但SP更简单,适合初学者;而mari更加复杂
次世代建模流程
-
次世代流程
-
次世代流程与手绘流程的区别
手绘流程是制作低模模型后,通过手绘的方式完成贴图制作;而次世代流程会对低模进行细化,得到一个精度较高的高模,再通过烘培得到法线贴图,使得低模更加精细
-
中模:确定原画和模型的比例关系
-
高模
- 进一步细化模型,使其足以还原设定细节
- 根据中模的实际情况对原画设定进行一定的修改(原画设定可能违背物理规律),使其更具真实性
-
拓扑:将模型从高模转为低模
-
低模
- 以较为均为和少量的布线作为基础模型,来尽量匹配高模
- 在项目规定的面数内,尽量让低模边缘产生不严重的转折感
-
展uv:尽量使得分布平整,来提高uv利用率,最好能达到95%以上
-
贴图
- 基于PBR进行贴图,有两种流程。一种是基于金属度和粗糙度,一种是基于反射贴图和光泽度
- 需要使用AO贴图、法线贴图、高度贴图
模型规范及常见问题
布线的合理性
- 高模对布线并不严格,因为它的作用是制作贴图
- 但对于低模,布线的合理性十分重要,因为后续会进入引擎绑定动画,蒙皮
布线要求
-
动画角度:均匀,关节处多线
-
模型角度:控制总的面数,只在剪影和弯曲的关节处增加布线
多星点问题
- 减少多星点的使用,因为在细分时会出现凸起的问题
- 若需要使用多星点,则需要通过布线技巧将其移至平面处,不让他出现在倒角边缘
五星点
- 在模型上挖洞,且保证都是四边面的情况下,必然会出现五星点。虽然不可避免,但可以优化——将五星点移至对模型影响不大的位置
UV合理性
- uv都放于第一象限(防止app的兼容性问题,如SP)
- UV非常消耗资源,因此提高UV利用率是重中之重
- 提高UV利用率的方法如下
- 打直UV:尽量横竖打直,斜打直会出现锯齿
- 拉伸问题:不能有不均匀的拉伸,以提高精度,容纳更多UV
- 烘焙时,将共用(重叠)的UV移出第一象限(否则无法识别是那一个),断开硬边UV避免接缝
- 接缝处的UV需要两边对齐,避免Tiling时出现错误
光滑组
-
光滑组:以面定义法线
-
软边:点位于多个平面的共有点,获得这些面的平均法线
-
硬边:拥有多个方向的法线
-
不同app定义软硬边的方式不同:maya以边定义软硬边;max以面的光滑组定义软硬边
-
Maya和Max之间的相互转换要解锁法线,重新定义光滑组、软硬边
-
低模的软硬边修改后需重新烘培normal map
模型规范
- 所有需合并的点都需要进行合并
- 不能与非法面、N边面等不规范面
- 检查是否有UV
- 不出现镂空面穿帮
- 场景大小设置正确
- 规范命名
- Maya需清除全部历史内容;Max需塌陷编辑器
- 坐标轴归零
- 三角面化
金属/镜面工作流
Metal / Roughness
-
Metal / Roughness工作流:更符合直觉,易调参,但不易调节F0
-
所需输出属性:BaseColor(控制金属颜色)、Roughness、Metallic、Normal、Height、Emissive、AO
-
优缺点
- 优点:F0值固定、纹理缓存低、兼容性广
- 缺点:F0值不易调整、边缘效应明显(白边)
-
basecolor:非金属的反射颜色和金属的反射率值,不含任何光照信息
-
metallic:灰度贴图遮罩,表示金属成分的占比,1表示纯金属
-
roughness:灰度贴图,数值越大越粗糙
-
非金属部分
- 不应包含光照信息(如AO,Micro Occlusion除外)
- 暗值不应低于30 sRGB(可容忍范围) - 50 sRGB(严格范围)
- 最亮值不能高于240(sRGB)
-
金属部分
- 原始金属的反射率很高,在70-100%范围内,可以映射到180-255 sRGB
- 有些金属会被腐蚀
- 表面涂漆的金属应该作为非金属处理
-
metallic贴图
- 金属值在235-255 sRGB。低于235时,对应区域的BaseColor反射值应当降低
-
Roughness
- 粗糙与否没有对错与规则
Specular / Glossiness
-
所需输出属性:Diffuse/Albedo(控制非金属颜色)、Specular(F0,控制金属颜色)、Glossiness、Normal、Height、Emissive、AO
-
优缺点
- 优点:边缘效应弱、F0值可调整
- 缺点:调整F0可能打破能量守恒、纹理缓存占用大、美术人员难上手
-
Diffuse(Albedo): RGB贴图,漫反射颜色
- 原始金属由于没有漫反射,颜色应该为纯黑(0.0)
- 除了微观遮蔽(Micro-occlusion)外不应该带有其他光照信息
- 除金属的纯黑(0.0)外,暗色值不应低于30 sRGB,严格上说,不应该低于50 sRGB
- 亮色值不应大于240sRGB
-
specular:定义金属和非金属的F0
- 普遍非导体的反射值为0.02 - 0.05,在sRGB中,这个值大概在40-75之间
- 宝石的反射值范围在0.05-0.17(线性空间)
- 液体的反射值范围在0.02-0.04(线性空间)
- 原始金属的反射率很高,在70-100%范围内,可以映射到180-255 sRGB
- 如果你无法找到某个材质的折射率(IOR),可以先假设F0为0.04(塑料)
-
glossiness:灰度贴图,数值越大越光滑,与M/R的roughness相反。
-
F0:入射角为0度时的反射光线radiance占入射光线radiance的比例。非金属反射的光线比金属少,F0更小,0.04
环境规范
- 因为光、环境、后处理对材质的影响很大,所以需要统一制作环境,减少环境测试的差别。包括光照差别、曝光差别、Shader差别、后期差别、贴图差别等
- Substance Painter
- 显示设置中使用和UE同样的HDRI,旋转270°(Environment Rotation 270)
- EV -0.45
- 打开Temporal AA
- Shader设置中打开ACES Tonemapping(需要下载)
- UE
- 关闭Directional Light仅使用IBL
- 背景Environment Color 0.04
- 关闭Bloom,Vignette,AO,SSR
- 标准环境
- 通用
- 亮度适中,曝光稳定(辅助辨识固有色)
- 中低光比
- 光影规范固有色
- 没有过强的明暗对比
- 高光比
- 某几个方向带有较强的光源(辅助辨识光滑度和法线)
- 镜面反射变化丰富(辅助辨识金属度)
- 可以额外添加的
- 阴天、晴天、室外、室内、夏季、冬季等辅助光照情景
- 有需要的话可以使用现实拍摄的色卡对引擎里的标准环境进行校色
- 通用
材质规范
Parameter
- 参数尽量定死(除了贴图),方便合批和效果统一
- 如果材质需要调试,可以连一个测试材质函数到母材质,但最后得把Switch开关关掉,美术测试完效果后,再把参数合入写死参数的shader。版本构建前,再检查一下,如果有勾选则给美术报错
Blend Mode
- 材质尽量使用不透明;其次Mask;最后考虑半透明
- 如果材质只有部分透明,且没有特殊情况,需将他们分开成两个材质
- Mask,alphaTest,手机上消耗都是最高的,半透明的消耗则是又overdraw产生的(同一个像素多次绘制)
植被
- 树叶和草,最好不要烘焙光照。因为会坑坑洼洼还占内存,美术效果不好
- 树制作完球形法线后,自己写一个特殊的光照模型,再到外部烘AO图进来用(仅手游)
- 草把法线掰向上后,也是同理,自己写一个特殊的光照模型,再到外部烘AO图进来用(仅手游)
贴图通道的合并与大小统一
- 动态物体
- 采样:3张PBR贴图+Shadowmap
- 贴图大小:Albedo2048/1024, normal+Smoothness1024,AO+metallic+其他512
- 静态物体
- 采样:2张PBR贴图+烘焙好的Shadowmap+Shadowmap
- 贴图大小:Albedo2048,normal+Smoothness2048,AO+metallic+其他1024,烘焙的Shadowmap2048
- 素材内容与格式标准
- Albedo(带透明度)占RGB(A)
- Normal占RG + smoothness占B
- AO占R+metallic占B,G备用
- 格式为TGA
reference
https://www.bilibili.com/video/BV1q34116756?p=2&vd_source=9421d881d6e2b0ef91b5e1db463db73f
https://www.cnblogs.com/anesu/p/15845039.html#/c/subject/p/15845039.html
标签:总结,贴图,美术,UV,AO,金属,F0,sRGB,TA From: https://www.cnblogs.com/chenglixue/p/17753077.html