「Unity/Editor/プレイヤービルド」の版間の差分
提供: 初心者エンジニアの簡易メモ
(→Editorのシーンを設定) |
(→BuildSettingsのScenesInBuildに設定したものを設定する方法) |
||
| 行37: | 行37: | ||
上のbuildPlayerOptions.scenesを、下のscenesに置き換える | 上のbuildPlayerOptions.scenesを、下のscenesに置き換える | ||
<pre> | <pre> | ||
| + | using System.Collections.Generic; | ||
| + | |||
buildPlayerOptions.scenes = GetScenes(); | buildPlayerOptions.scenes = GetScenes(); | ||
| + | |||
static string[] GetScenes() | static string[] GetScenes() | ||
{ | { | ||
2022年3月9日 (水) 13:27時点における版
Assets/Scripts/Editor/BuildPlayerExample.cs
using UnityEditor;
using UnityEngine;
using UnityEditor.Build.Reporting;
public class BuildPlayerExample : MonoBehaviour
{
[MenuItem("Tools/ProjectBuild WebGL")]
public static void ProjectBuild()
{
BuildPlayerOptions buildPlayerOptions = new BuildPlayerOptions();
buildPlayerOptions.scenes = new[] { "Assets/Scenes/SampleScene.unity" };
buildPlayerOptions.locationPathName = "WebGLBuild"; // 生成されるビルドのディレクトリ名
buildPlayerOptions.target = BuildTarget.WebGL;
buildPlayerOptions.options = BuildOptions.None;
BuildReport report = BuildPipeline.BuildPlayer(buildPlayerOptions);
BuildSummary summary = report.summary;
if (summary.result == BuildResult.Succeeded)
{
Debug.Log("Build succeeded: " + summary.totalSize + " bytes");
}
if (summary.result == BuildResult.Failed)
{
Debug.Log("Build failed");
}
}
}
BuildPipelineの公式マニュアル参考:http://docs.unity3d.com/ja/current/ScriptReference/BuildPipeline.BuildPlayer.html
Unityメインメニュー/Build/Build WebGLで実行できる。
上記例では、実行すると、WebGLBuildのディレクトリに、ビルドファイルが、生成される
BuildSettingsのScenesInBuildに設定したものを設定する方法
上のbuildPlayerOptions.scenesを、下のscenesに置き換える
using System.Collections.Generic;
buildPlayerOptions.scenes = GetScenes();
static string[] GetScenes()
{
List<string> sceneList = new List<string>();
EditorBuildSettingsScene[] scenes = EditorBuildSettings.scenes;
foreach (EditorBuildSettingsScene scene in scenes)
{
sceneList.Add(scene.path);
}
return sceneList.ToArray();
}
参考:https://kido0617.github.io/unity/2020-03-29-build-script/
