Unity一般打包流程
通常打包流程主要是通过 Building setting
来选择需要打包的场景后出包到指定文件夹位置,也可以采用 [MenuItem("MyMenu/Do Something")]
中使用static函数来选择打包路径和打包方式——需要将该脚本放置在 Editor
文件夹下
[MenuItem("Test/BuildAndroid")]
public static void BuildAndroid() {
string path = Path.GetFullPath("D:\\Packages") + "/Backbag" + ".apk";
BuildPipeline.BuildPlayer(GetBuildScence(), path, BuildTarget.Android, BuildOptions.None);
}
命令行控制
- Launching Unity
- 首先我们需要在
Unity.exe
所在目录下执行 - 选择对应Option
命令语句解释
命令语句 | 解释 |
---|---|
-batchmode | 以批处理模式运行 Unity。在批处理模式下,Unity 无需人为操作即可运行命令行参数。它还抑制了部分弹出窗口(例如“保存场景”窗口);但是,Unity 编辑器本身会照常打开。使用命令行参数时,您应该始终以批处理模式运行 Unity,因为它允许自动化不间断地运行 |
-quit | 其他命令执行完毕后将退出Unity编辑器。但会导致错误消息被隐藏(显示在Editor.log文件) |
-executeMethod <ClassName.MethodName> | Unity 打开项目后立即执行静态方法,并在可选的资产服务器更新完成后执行。执行方法所在脚本必须在Editor文件中而且是static的。要从命令行进程返回错误,要么抛出异常导致 Unity 退出并返回代码 1,要么调用 EditorApplication.Exit 并返回非零代码 |
此外Unity Standalone Player平台中也能执行一些参数(官方文档中指Mac、Windows和Linux)
要在从命令行以批处理模式启动输入 PATH_TO_STANDALONE_BUILD -projectPath PROJECT_PATH -batchMode
比如 C:\projects\myproject\builds\myproject.exe
-batchMode
命令语句 | 解释 |
---|---|
-batchmode | 在"headless"模式下运行游戏。游戏将不显示任何内容,或接受用户输入。主要作用于网络游戏的服务器 |
-single-instance (Linux and Windows only) | 同一时候只允许一个游戏实例运行。如果另一个实例已在运行,然后再次通过 -single-instance启动它的话会调节到现有的这个实例 |
-force-(…) | 强制性的使用规定的渲染方式(DirectX 、Metal、OpenGL等 ) |
-screen-(…) | 重新规定屏幕的大小或者是出现方式(弹窗或全屏) |
Player Setting——PC
Player Settings提供了各种选项来帮助你完成最终游戏的出包,虽然说有很多不