说明介绍
参考资料
参数集合,它们可以被传递到引擎的可执行文件用来配置控制其如何运行的选项。
命令行参数-官方文档https://docs.unrealengine.com/5.0/zh-CN/command-line-arguments-in-unreal-engine/
-----------------------------------------------------------------------------------------------------
命令行参数-官方文档https://docs.unrealengine.com/5.3/zh-CN/command-line-arguments-in-unreal-engine/
-----------------------------------------------------------------------------------------------------
------------------------------------
自己的实践举例:编辑器模式下启动服务器与客户端。
为了测试。用第三人称模板新建UE工程MyDSGame。在项目中拷贝ThirdPersonExampleMap地图重新命名为TestMap_Server地图作为服务器地图。
先启动服务器,在启动客户端
启动专用服务器
新建StartSever.bat文件,内容如下
::为了测试。用第三人称模板新建UE工程MyDSGame。在项目中拷贝ThirdPersonExampleMap地图重新命名为TestMap_Server地图作为服务器地图。
::----如果双击运行.bat文件出现乱码,则将每行注释之间空一行
::启动专用服务器
::命令格式解释如下:
::"引擎.exe路径" "项目路径" "指定的地图路径.右键拷贝地图资源的引用路径" -server(指定服务器模式启动) -port=7777(指定端口地址) -log(输出日记) -nosteam(不清楚啥意思)
"C:\UE4271\Engine\Binaries\Win64\UE4Editor.exe" "C:\Users\tanglei\Documents\Unreal Projects\MyDSGame\MyDSGame.uproject" "/Game/ThirdPersonCPP/Maps/TestMap_Server.TestMap_Server" -server -port=7777 -log -nosteam
::----如果双击运行.bat文件出现乱码,则将每行注释之间空一行
::启动客户端连接服务器
::命令格式解释如下:
::"引擎.exe路径" "项目路径" 27.0.0.1:7777(指定的服务器地址与端口,27.0.0.1代表本地服务器) -game(指定游戏模式下运行) -windowed(指定为窗口模式) -ResX=800(窗口X) -ResY=620(窗口Y) -log(输出日记) -nosteam(不清楚啥意思)
::-game:在此示例中,-game 参数是标记,它在命令行上存在就相当于告知UE编辑器可执行文件你想在游戏模式下(可以理解项目打包成.exe后再运行.exe)运行 MyDSGame.uproject. 如果没有此参数,则会使用UE编辑器 打开运行 MyDSGame.uproject 项目。
::"C:\UE4271\Engine\Binaries\Win64\UE4Editor.exe" "C:\Users\tanglei\Documents\Unreal Projects\MyDSGame\MyDSGame.uproject" 127.0.0.1:7777 -game -windowed -ResX=800 -ResY=620 -log -nosteam
启动客户端连接专用服务器
新建StartClient.bat文件,内容如下
::为了测试。用第三人称模板新建UE工程MyDSGame。在项目中拷贝ThirdPersonExampleMap地图重新命名为TestMap_Server地图作为服务器地图。
::----如果双击运行.bat文件出现乱码,则将每行注释之间空一行
::启动专用服务器
::命令格式解释如下:
::"引擎.exe路径" "项目路径" "指定的地图路径.右键拷贝地图资源的引用路径" -server(指定服务器模式启动) -port=7777(指定端口地址) -log(输出日记) -nosteam(不清楚啥意思)
::"C:\UE4271\Engine\Binaries\Win64\UE4Editor.exe" "C:\Users\tanglei\Documents\Unreal Projects\MyDSGame\MyDSGame.uproject" "/Game/ThirdPersonCPP/Maps/TestMap_Server.TestMap_Server" -server -port=7777 -log -nosteam
::----如果双击运行.bat文件出现乱码,则将每行注释之间空一行
::启动客户端连接服务器
::命令格式解释如下:
::"引擎.exe路径" "项目路径" 27.0.0.1:7777(指定的服务器地址与端口,27.0.0.1代表本地服务器) -game(指定客户端模式启动) -windowed(指定为窗口模式) -ResX=800(窗口X) -ResY=620(窗口Y) -log(输出日记) -nosteam(不清楚啥意思)
::-game:在此示例中,-game 参数是标记,它在命令行上存在就相当于告知UE编辑器可执行文件你想在游戏模式下(可以理解项目打包成.exe后再运行.exe)运行 MyDSGame.uproject. 如果没有此参数,则会使用UE编辑器 打开运行 MyDSGame.uproject 项目。
"C:\UE4271\Engine\Binaries\Win64\UE4Editor.exe" "C:\Users\tanglei\Documents\Unreal Projects\MyDSGame\MyDSGame.uproject" 127.0.0.1:7777 -game -windowed -ResX=800 -ResY=620 -log -nosteam
------------------------------------
------------------------------------
自定义命令行参数参考(编辑器启动客户端端)
新建(.bat文件)
::参考文档 https://docs.unrealengine.com/5.3/zh-CN/command-line-arguments-in-unreal-engine/
::-game:在此示例中,-game 参数是标记,它在命令行上存在就相当于告知UE编辑器可执行文件你想在游戏模式下(可以理解项目打包成.exe后再运行.exe)运行 Bomberman.uproject. 如果没有此参数,则会使用UE编辑器 打开运行 Bomberman.uproject 项目。
::-windowed -ResX=800 -ResY=620 窗口+分辨率 方式启动UE4项目。
::此处设置虚幻引擎编辑器EXE文件所在目录,每个人的引擎安装目录有所不同。
::后面设置项目的目录Bomberman.uproject,设置自己的项目目录即可
::----
::GameMapName 是启动游戏时的地图名字或者地图路径,可不填(不填写使用的时项目中设置的启动地图)
::使用位于Maps目录之外的地图在虚幻编辑器中打开游戏,?game=MyGameMode可选项
::UnrealEditor.exe MyGame.uproject /Game/Maps/BonusMaps/BonusMap.umap?game=MyGameMode -game
::----
SET EDITOR_EXE_DIR=C:\UE4271\Engine\Binaries\Win64
@echo off
SET UE_EXE=%EDITOR_EXE_DIR%\UE4Editor.exe
start /B "Client" "%UE_EXE%" "C:\UnrealProjects\Bomberman\Bomberman.uproject" GameMapName -game -windowed -ResX=800 -ResY=620 -nosteam -log=MyLog.txt
下面应用举例:详情参考上面官方文档
模式
这些参数强制主编辑器可执行程序 (UnrealEditor.exe
) 以使用未烘焙内容的游戏或服务器来运行。
这些命令是不区分大小写的。
示例:
UnrealEditor.exe -game
开关
根据特定关键字的及它的应用目的的不同,这些参数可以传入到游戏或编辑器中。有些参数是一般的开关(-UNATTENDED
),而其它的参数是设置开关,它们是 键=值
对 (-LOG=MyLog.txt
)。这些命令是大小写不敏感的。传入普通的开关的语法是在每个参数前面加上一个减号 ‘-',然后后面紧跟上那个参数。设置开关除了服务器开关外,其它的不需要以 ‘-'开头。
示例:
UnrealEditor.exe -silent LOG=MyLog.txt