ue4cmd怎么调用_[UE4,automation]UE4批渲染cmd篇

本文介绍了如何在不启动UE4编辑器的情况下,利用CMD命令行进行批量序列渲染。通过设置不同的CMD指令,可以实现预设序列的批处理渲染,适用于大量渲染任务。内容包括打开UE4地图、渲染序列的基本命令,以及高级的渲染设置和多任务调度。此外,还详细解释了CMD中设置变量、for循环和算数表达式的用法,以帮助读者构建批处理渲染脚本。
摘要由CSDN通过智能技术生成

之前做项目的过程中,有一部分工作是在UE4里制作输出小短片。由于要完成的量比较大,所以研究了一些批渲染的方法。

逻辑上跟以前在maya里用batch render差不多,不过UE4这边的设置相对繁琐一点点。

本文讲解了在不打开UE4软件的前提下,批量输出预先设置好的sequence序列 的方法。

文章内容粗浅简单,权当抛砖引玉了。

注意:本文调用的是"/Script/MovieSceneCapture.AutomatedLevelSequenceCapture",也就是相当于4.24及以前版本中,在sequence面板里点击render moive一样。 跟4.25更新的movie render queue无关。

为什么要用cmd做批渲染:

我们已经知道UE4.25中更新了非常好用的movie render queue工具,质量高而且方便自定义和输出。 奈何UE更新速度之迅猛,应该有不少项目还没切到4.25 ,还用不了render queue。

另外,在cmd指令里配置多任务,编辑效率和方便性我个人用下来是感觉比render queue高的,而且可以通过开动小脑筋实现简单的分布式渲染。让局域网内的多台机器同时处理一批序列。比如说我一共要渲20个序列,有四台肉鸡,那么可以每台肉鸡自动分5个去渲。

所以,总的来说,研究下怎么用cmd做批渲染,依然有用武之地;而且灵活性便利性都不错。

用cmd打开UE4地图:

我们先从基本的来——打开UE4项目里的某一张地图。

要打开某张地图的话,首先我们需要知道的信息是:

UE4Editor.exe 文件的位置

想要打开的地图所在的项目位置

所要打开的地图位置

比如说:

UE4Editor路径 —— "D:\Program Files\UE_4.24\Engine\Binaries\Win64\UE4Editor.exe"

项目路径—— "D:\Projects\UnrealProjects\renderMovieTest\renderMovieTest.uproject"

地图路径—— "D:\Projects\UnrealProjects\Test\Content\Maps\testLaunch"

其中UE4的项目路径可以用相对路径表示,为—— /Game; 所以地图路径可以写为“/Game/Maps/testLaunch”

然后我们新建一个txt文本文件,在文本中写入

"D:\Program Files\UE_4.24\Engine\Binaries\Win64\UE4Editor.exe" D:\Projects\UnrealProjects\renderMovieTest\renderMovieTest.uproject /Game/maps/shot0010

这样一串文本,ctrl+s 保存一下;再把txt文件的后缀改成bat。再双击运行这个bat,你就可以看到我们的UE4启动了,并且正在打开我们指定好的那张图。目标达成。

聪明的朋友可能会在琢磨一件事,就是为什么UE4Editor路径 加了双引号,而另外两个路径没有加双引号呢?

因为cmd命令,基本上是在玩字符串,每一条字符串就是一条command,而在cmd里输入的绝大多数字符,都会被理解成字符串,不管你有没有加 单引号 或者 双引号。而字符串的分隔就是用空格或者回车的。

也就是说 D:\Projects\UnrealProjects\renderMovieTest\renderMovieTest.uproject 这一条路径,在cmd里实际上是一个字符串,是一条command,而D:\Program Files\UE_4.24\Engine\Binaries\Win64\UE4Editor.exe 因为路径里有空格,所以会被理解成两条字符串—— D:\Program 和Files\UE_4.24\Engine\Binaries\Win64\UE4Editor.exe。

这当然不是我们想要的结果,我们需要把这两条字符串当成一个command来处理,这个时候就需要用双引号把这个路径括起来,这样,其中的空格也会理解成字符串的一部分。

也就是说,任何没有空格的一条字符串,你都可以不加双引号(也可以加)。而如果出现了空格,就必须加双引号。

用cmd渲染一个序列:

在上一节打开一张地图的基础上,我们只要继续加一些指令就可以渲染了。

其中必须要加的一条是: -MovieSceneCaptureType="/Script/MovieSceneCapture.AutomatedLevelSequenceCapture"

这条可以让我们使用渲染相关的各种cmd指令。

然后需要定义需要渲染的sequence文件路径,这里需要加上-LevelSequence=:

-LevelSequence="/Game/Sequence/testRende02"

另外我们还需要指定输出序列的文件夹位置,这里需要加上 -MovieFolder=:

-MovieFolder=&

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值