Full Scene Baking with Automatic Full scene Vista-map baking.
Writer : JP.Lee
Date : 2019-07-08
没有插件时怎么快速渲染Vistamap并应用到项目里呢?
方法如下。
把网络硬盘作为符号目录(symbolic directory)添加到Unity工程吧。
为了快速渲染要使用分布式渲染。
- 安装 Vray Slave ,让多个电脑可以协力渲染一个 Max 场景。
Vista Texture Batch export
使用 Substance designer SBS BATCH SCRIPT 的方法。

这是预先设好的文件,让 8 公里 World 按照命名顺序各自输出成 16张文件。
只要更新输入的贴图,就可以用简单的指令直接拆分贴图并储存。
把 Command 指令制作成 Batch 文件, 每隔10分钟检查 directory,使它有变更事项时执行指令,在服务器处理自动上传到 P4 服务器上。
张强的个人意见 : 在服务器自动处理往工程上传贴图是可以的,但还是推荐美术在游戏里确认结果并手动上传到 P4 上, JP 也同意了。
如果在服务器处理起来较麻烦,美术单独把网络硬盘的贴图用 SD load 并连接后执行一次 Export texture 就可以了。
在 SD 裁剪图片。
横竖cell(储存单位)是4平分。
1/4 = 0.25
生成函数让输入的贴图尺寸以4分之1比例各自导出。
https://docs.substance3d.com/sat/command-line-tools/sbscooker/sbscooker-command-line-options
用 python 处理的时候
https://pypi.org/project/image_slicer/ 请参考。
https://image-slicer.readthedocs.org/en/latest/
https://github.com/leegoonz/image_slicer
简单整理整个工程。(参考下方)
美术开发阶段。
1. 在 WorldMachine 把 8K 米作为一张的单位导出贴图。
Diffuse
Normal
Height(Displacement map)
2. 使用 3Dsmax 的标准 Vista-Map Vray lighting Scene 烘培光照效果。
导出成一张 8192 pixel。
Final Vista Diffuse
3. SBS Split process.
导出成 16张 2048 pixel texture 。
SBS 文件已经做好导进导出的设置了。
TA 组会提供简单的执行脚本,这个可有可无。
拿到了脚本后,执行脚本就可以了,直接在 Substance designer 里打开 SBS 文件 Export Texture 就可以了。
工程总结。
我们游戏是 32公里。
实际游戏里地形的总面积为 16公里。
所有地区以 8公里为单位。
总共 4个区域。
World Machine 里总共会制作出 4个资源。
最终游戏里会使用的工作资源是,每个区域 16 张 * 4个地区总共制作出 64张 Vista Texture Map 数量就是对的。
最终贴图的尺寸是, PC 是 2048 pixel 就够了,手游上 1024 pixel 也应该够了。
