【干货分享】3Ds MAX VR全景录屏预演工具免费下载-VFXQH

本篇文章摘取自MoonShine国人特效师洪健淇的博客,VFXQH只对其进行繁体简体编译,保持原有文章,版权归作者所有,有兴趣的朋友可以点击超链了解更多!


最近公司开始越来越多VR的案子,看有些只是要确认动态的previz,也必须用Vray算出来很浪费时间。最近了解到windows的command line的强大后,测试一下发现要写出生成VR viewport视频其实不会太艰难,便着手进行。
由于对于Maxscript不是很深入,在这次写工具的过程中遇到一些关卡,在这边笔记下来。

【干货分享】3Ds MAX VR全景录屏预演工具免费下载-VFXQH
最后完成的工具如上图:

指定要撷取的摄像机,给予文件名路径,选择是否缩放尺寸,指定截图质量,选择是否要算成视频,视频质量,是否保留截图序列,是否只撷取Geometry,撷取的时间范围。

Script的整体流程是,创造六个摄像机绑在指定摄像机上,撷取六个方位截图,产生Cubemaps,再把Cubemaps转换成Equirectangular形式,最后再算成视频档。
【干货分享】3Ds MAX VR全景录屏预演工具免费下载-VFXQH

遇到的第一个问题便是产生的Cubemaps怎么转换成Equirectangular?

在经过多方数据参考后,按照这个网址的解答去制作了maxscript版本的算式。问题是,maxscript的bitmap可撑不住这种算法,一般尺寸就会运算很久,所以果断放弃。

后来不断寻觅一些可以从command line执行的转换程序,找到一个非常理想的程序叫做krpanotools,里面便含有一个cube2sphere的exe档,去做轻便并快速的转换。

而且这个程序是读取六张单张个别的Cubemap,所以我不用在maxscript先行合并起来,省去了一段maxscript运算缓慢的时间。

【干货分享】3Ds MAX VR全景录屏预演工具免费下载-VFXQH

另外要把转换出来的图象序列,在编码成H.264视频,毕竟这种VR全景的预览,都是要丢给GearVR或者Kolor播放器,这边便使用了已经封装好的ffmpeg去做处理,相当简单方便。

剩下的就是去做maxscript跟windows command line的整合,并去隐藏或者命名一些档案让整个程序看起来简化一些。

【干货分享】3Ds MAX VR全景录屏预演工具免费下载-VFXQH

在流程方面的关卡都解决后,遇到撷取viewport画面的问题,要怎么去侦测使用者的viewport设定,并去关闭viewport上不必要的信息,甚至取消背景的渐层,统一viewport的灯光,才能让六张截图完美融接。

代码有大半的行数都是花在这上面:撷取设定->覆盖设定->(截图)->还原设定。

尤其有一部份必须调用DialogMonitorOPS去做设定,这部分整理了很久才做出很简洁的Fuction去处理。

脚本下载请点击我!作者说脚本还有BUG,代码引用自:forums.cgsociety.org/showthread.php?t=821250forums.cgsociety.org/showthread.php?t=911589有能力的朋友可以自己编译完善。

VFXQH 原创版权所有 • 转载请注转自 VFXQH