Unity命令行打包WebGL的示例代碼
1.掃描所有場景,保存并添加到Build Settings中
using System.Collections;
using System.Collections.Generic;
using System.IO;
using UnityEditor;
using UnityEngine;
using UnityEngine.SceneManagement;
public class SceneUtils
{
#if UNITY_EDITOR
public static void RefreshAllScene()
{
// 設(shè)置場景 *.unity 路徑
string resourcesPath = Application.dataPath;
// 遍歷獲取目錄下所有 .unity 文件
string[] absolutePaths = Directory.GetFiles(resourcesPath, "*.unity", SearchOption.AllDirectories);
List<EditorBuildSettingsScene> list = new List<EditorBuildSettingsScene>();
// 定義 場景數(shù)組
for (int i = 0; i < absolutePaths.Length; i++)
{
string path = "Assets" + absolutePaths[i].Remove(0, resourcesPath.Length);
path = path.Replace("\\", "/");
// 通過scene路徑初始化
list.Add(new EditorBuildSettingsScene(path, true));
}
// 設(shè)置 scene 數(shù)組
EditorBuildSettings.scenes = list.ToArray();
}
public static void RefreshScene(params string[] tagetPaths)
foreach (string tagetPath in tagetPaths)
{
if (path.Contains(tagetPath))
{
// 通過scene路徑初始化
list.Add(new EditorBuildSettingsScene(path, true));
}
}
#endif
}2.暴露一個打包的方法,方便命令行調(diào)用
using System.Collections;
using System.Collections.Generic;
using UnityEditor;
using UnityEngine;
/// <summary>
/// 命令行批處理
/// </summary>
public class Batchmode
{
#if UNITY_EDITOR
static List<string> levels = new List<string>();
[MenuItem("FViteMVC/Build/BuildWebGL", false)]
public static void BuildWebGL()
{
// 打包前需要做的事情
FviteMvcEditor.RefreshAllScene();
foreach (EditorBuildSettingsScene scene in EditorBuildSettings.scenes)
{
if (!scene.enabled) continue;
levels.Add(scene.path);
}
// 第一個參數(shù)為所有場景路徑
// 第二個參數(shù)是打包位置
// 第三個參數(shù)是目標平臺
// 第四個參數(shù)是構(gòu)建選項 None代表執(zhí)行指定的構(gòu)建,不包含任何特殊設(shè)置或額外任務(wù)
BuildPipeline.BuildPlayer(levels.ToArray(), "Build", BuildTarget.WebGL,BuildOptions.None);
}
#endif
}3.寫一個.bat文件
@echo off echo lunch unity.exe ,please wait a moment... "C:\Program Files\Unity\Hub\Editor\2020.3.18f1c1\Editor\Unity.exe" -quit -batchmode -projectPath "D:\Unity\Unity\FViteMVC" -executeMethod Batchmode.BuildWebGL echo "Build WebGL done" pause
到此這篇關(guān)于Unity命令行打包WebGL的文章就介紹到這了,更多相關(guān)Unity打包WebGL內(nèi)容請搜索腳本之家以前的文章或繼續(xù)瀏覽下面的相關(guān)文章希望大家以后多多支持腳本之家!
相關(guān)文章
c#數(shù)據(jù)庫與TXT導(dǎo)入導(dǎo)出的實例
最近剛學(xué)完ADO.NET,做了個數(shù)據(jù)導(dǎo)入導(dǎo)出的題目,是將txt中的數(shù)據(jù)導(dǎo)入數(shù)據(jù)庫,然后將數(shù)據(jù)庫中的數(shù)據(jù)導(dǎo)出到txt中,這里說的數(shù)據(jù)的格式是“tom|23”,tom指名字,23指年齡。廢話也不多說了,大家直接看代碼。2013-04-04
C#和vb.net實現(xiàn)PDF 添加可視化和不可見數(shù)字簽名
本文通過C#程序代碼展示如何給PDF文檔添加可視化數(shù)字簽名和不可見數(shù)字簽名。文中通過示例代碼介紹的非常詳細,具有一定的參考價值,感興趣的小伙伴們可以參考一下2021-08-08
C#實現(xiàn)讀取DataSet數(shù)據(jù)并顯示在ListView控件中的方法
這篇文章主要介紹了C#實現(xiàn)讀取DataSet數(shù)據(jù)并顯示在ListView控件中的方法,涉及C#操作DataSet及ListView控件的相關(guān)技巧,具有一定參考借鑒價值,需要的朋友可以參考下2015-10-10
c#中SAPI使用總結(jié)——SpVoice的使用方法
最近使用C#重做了點名系統(tǒng)(要用到TTS,讓計算機點名)使用了SAPI,在這里總結(jié)一下SpVoice的使用方法。2011-10-10
C# Dynamic關(guān)鍵字之:解析dynamic就是Object
本篇文章是對C#中dynamic關(guān)鍵字就是Object進行了詳細的分析介紹,需要的朋友參考下2013-05-05

