Houdini PCG:远程Build多地块思路
先上一张数据图表,来表明在大世界开发中,PCG内容使用远程Build的高效性。

如上图所示,在4台农场机的支撑下,64个地块的Build时间从本地约45m降至了约6分钟。
那么该如何规划一套可以让农场机介入的PCG Build流程?
我们假设PCG文件叫做pcg.hip,地块内所有的pcg内容,都将由该文件通过接收项目场景数据及参数、cook,然后将pcg结果数据输出到指定文件夹,最后这些pcg结果数据会由引擎编辑器工具解析、导入。
首先,是服务机的搭建。
需要针对服务机开发:
1. “地块订单接收/发放”服务,用来从客户机接收Build请求,然后将请求根据农场机的状态,再决定如何分发Build命令。
2. 接收农场的完成Build命令信息,并转达客户机的引擎编辑器。
3. 将一个文件夹作为共享文件夹,供客户机、服务机进行网络磁盘映射,姑且定为H盘。客户机将在该盘上存放场景数据;农场机将在该盘上读取场景数据、Houdini工程(由pcg.hip和hda、dso、dll、缓存数据构成);服务机将在该盘上存放Houdini工程。
其次,对于客户机,在引擎编辑器端开放一个按钮,当框选、锁定了需Build的地块,并点击了该按钮后:
1. 将本次地块Build所需的所有场景数据,包括但不限于高度图、场景描述文件及对应资产、mask图、路网信息,都从项目美术工程内抽出并发往H盘,姑且定为放于 H:\电脑名\地块编号 下。
2. 执行完1后,将每个地块的Build请求发予服务机。
3. 接收到服务机的某地块Build完毕信息后,找到 H:\客户机电脑名\地块编号\export 下的pcg结果数据,引擎编辑器工具对其解析、导入。
最后,对于农场机:
1. 开发一套服务,当服务机给到Build命令,该服务按图索骥,启动Houdini、pcg.hip,更入参数。
2. pcg.hip文件cook完毕,并将结果输出到H:\客户机电脑名\地块编号\export 后,该服务告知服务机已完成Build命令,并关闭Houdini。
- 感谢你赐予我前进的力量
赞赏者名单
因为你们的支持让我意识到写文章的价值🙏
本文是原创文章,采用 CC BY-NC-ND 4.0协议,完整转载请注明来自 零度冰山
评论
隐私政策
你无需删除空行,直接评论以获取最佳展示效果
