アセットバンドル生成後のビルドエラー

1,970 views
Skip to first unread message

taro

unread,
Apr 17, 2018, 5:17:58 AM4/17/18
to 宴ユーザーグループ
Unityの習熟度: 初心者
宴のバージョン: 3.3.5
UnityのバージョンとOS: 2017.2.0f3 Windows

お世話になっております。
ゲームの公開後にシナリオのExcelファイルをパッチの配信という形で更新したいため、アセットバンドルの利用を考えております。
以下を参考にStreamingAssetsを生成するところまではできました。
http://madnesslabo.net/utage/?s=StreamigAssets&x=0&y=0

しかしAdvEngineStartarからStrageType:StreamingAssetsに変更してビルドしようとすると、4つのコンソールエラーが出てビルドできません。
(StrageType:Localなら問題なくビルド・再生できます)

エラー内容を見ているとフォルダパスが見つからないと出ているようですが、StreamingAssetsフォルダ内を確認すると該当ファイルはちゃんと存在しているようで、動かない原因が分からない状況です。

以下、補足とコンソールエラーになります。
・開発機はWindowsでターゲットもWindowsを想定しているので、BuildMode:AllPlatform、BuildTargetFlags:Windowsで生成
・他のプラットフォーム用のフォルダなどは混じっておりません
・Resource元には"Assets/(プロジェクト名)/Resources/(プロジェクト名)"フォルダを指定
・出力先には"Assets/StreamingAssets/(プロジェクト名)"フォルダを指定
・元ファイルの大文字がStreamingAssets内では全て小文字に変更されていますがこれはエラーには関係ないでしょうか?(Sample.png→sample.asset)
・Unity画面上で再生すると、少しつっかえてから普通に動きます(つっかえている間はフォントが表示されていないので、StreamingAssetsを参照できずLocalフォルダの参照に切り替えているように見えます)

色々と設定を試しながら何度もStreamingAssetsを生成してみたのですが、ことごとくダメでした。
恐れ入りますが、解決法をご教示頂けると幸いです。
よろしくお願いいたします。

-------------------------------------エラー(1)-------------------------------------
DirectoryNotFoundException: Could not find a part of the path "Assets\StreamingAssets\(プロジェクト名)\Windows\texture\sprite\(画像ファイル名).asset.manifest" or "Temp\StagingArea\Data\StreamingAssets\(プロジェクト名)\Windows\texture\sprite\(画像ファイル名).asset.manifest"

System.IO.File.Copy (System.String sourceFileName, System.String destFileName, Boolean overwrite) (at /Users/builduser/buildslave/mono/build/mcs/class/corlib/System.IO/File.cs:124)
UnityEditor.FileUtil.UnityFileCopy (System.String from, System.String to, Boolean overwrite) (at C:/buildslave/unity/build/Editor/Mono/FileUtil.cs:207)
UnityEditor.FileUtil.CopyDirectoryFiltered (System.String source, System.String target, Boolean overwrite, System.Func`2 includeCallback, Boolean recursive) (at C:/buildslave/unity/build/Editor/Mono/FileUtil.cs:142)
UnityEditor.FileUtil.CopyDirectoryFiltered (System.String source, System.String target, Boolean overwrite, System.Func`2 includeCallback, Boolean recursive) (at C:/buildslave/unity/build/Editor/Mono/FileUtil.cs:156)
UnityEditor.FileUtil.CopyDirectoryFiltered (System.String source, System.String target, Boolean overwrite, System.Func`2 includeCallback, Boolean recursive) (at C:/buildslave/unity/build/Editor/Mono/FileUtil.cs:156)
UnityEditor.FileUtil.CopyDirectoryFiltered (System.String source, System.String target, Boolean overwrite, System.Func`2 includeCallback, Boolean recursive) (at C:/buildslave/unity/build/Editor/Mono/FileUtil.cs:156)
UnityEditor.FileUtil.CopyDirectoryFiltered (System.String source, System.String target, Boolean overwrite, System.Func`2 includeCallback, Boolean recursive) (at C:/buildslave/unity/build/Editor/Mono/FileUtil.cs:156)
UnityEditor.FileUtil.CopyDirectoryFiltered (System.String source, System.String target, Boolean overwrite, System.Func`2 includeCallback, Boolean recursive) (at C:/buildslave/unity/build/Editor/Mono/FileUtil.cs:156)
UnityEditor.FileUtil.CopyDirectoryFiltered (System.String source, System.String target, Boolean overwrite, System.Func`2 includeCallback, Boolean recursive) (at C:/buildslave/unity/build/Editor/Mono/FileUtil.cs:156)
UnityEditor.FileUtil.CopyDirectoryFiltered (System.String source, System.String target, Boolean overwrite, System.String regExExcludeFilter, Boolean recursive) (at C:/buildslave/unity/build/Editor/Mono/FileUtil.cs:121)
UnityEditor.FileUtil.CopyDirectoryRecursiveFiltered (System.String source, System.String target, Boolean overwrite, System.String regExExcludeFilter) (at C:/buildslave/unity/build/Editor/Mono/FileUtil.cs:102)
UnityEditor.FileUtil.CopyDirectoryRecursiveForPostprocess (System.String source, System.String target, Boolean overwrite) (at C:/buildslave/unity/build/Editor/Mono/FileUtil.cs:97)
UnityEditor.PostprocessBuildPlayer.InstallStreamingAssets (System.String stagingAreaDataPath, UnityEditor.BuildReporting.BuildReport report) (at C:/buildslave/unity/build/Editor/Mono/BuildPipeline/PostprocessBuildPlayer.cs:76)
UnityEditor.PostprocessBuildPlayer.InstallStreamingAssets (System.String stagingAreaDataPath) (at C:/buildslave/unity/build/Editor/Mono/BuildPipeline/PostprocessBuildPlayer.cs:67)
DesktopStandalonePostProcessor.SetupStagingArea () (at C:/buildslave/unity/build/Editor/Mono/BuildPipeline/DesktopStandalonePostProcessor.cs:160)
DesktopStandalonePostProcessor.PostProcess () (at C:/buildslave/unity/build/Editor/Mono/BuildPipeline/DesktopStandalonePostProcessor.cs:24)
UnityEditor.WindowsStandalone.WindowsDesktopStandalonePostProcessor.PostProcess (BuildPostProcessArgs args) (at C:/buildslave/unity/build/PlatformDependent/WinPlayer/Extensions/Managed/WindowsDesktopStandalonePostProcessor.cs:195)
UnityEditor.PostprocessBuildPlayer.Postprocess (BuildTargetGroup targetGroup, BuildTarget target, System.String installPath, System.String companyName, System.String productName, Int32 width, Int32 height, BuildOptions options, UnityEditor.RuntimeClassRegistry usedClassRegistry, UnityEditor.BuildReporting.BuildReport report) (at C:/buildslave/unity/build/Editor/Mono/BuildPipeline/PostprocessBuildPlayer.cs:271)
UnityEngine.GUIUtility:ProcessEvent(Int32, IntPtr)

-------------------------------------エラー(2)-------------------------------------
Error building Player: 2 errors

-------------------------------------エラー(3)-------------------------------------
Build completed with a result of 'Failed'
UnityEngine.GUIUtility:ProcessEvent(Int32, IntPtr)

-------------------------------------エラー(4)-------------------------------------
UnityEditor.BuildPlayerWindow+BuildMethodException: 3 errors
  at UnityEditor.BuildPlayerWindow+DefaultBuildMethods.BuildPlayer (BuildPlayerOptions options) [0x00207] in C:\buildslave\unity\build\Editor\Mono\BuildPlayerWindowBuildMethods.cs:172
  at UnityEditor.BuildPlayerWindow.CallBuildMethods (Boolean askForBuildLocation, BuildOptions defaultBuildOptions) [0x00050] in C:\buildslave\unity\build\Editor\Mono\BuildPlayerWindowBuildMethods.cs:83
UnityEngine.GUIUtility:ProcessEvent(Int32, IntPtr)

マッドネスラボ

unread,
Apr 17, 2018, 9:57:36 AM4/17/18
to 宴ユーザーグループ
ビルドできないというのであればUnityのエラーだと思います。
StreamingAssetsはファイルをそのままコピーするはずなので、それができていなのであればUnity自体のエラーかと思います。
Unity公式に質問してください。

一応、ほかに原因として考えられるのは
・PCのHDD容量が足りずに、ビルド作業に必要なサイズを確保できていない。(これはPCのほうでダイアログなりで警告がでると思いますので考えづらいですが)
・「プロジェクト名」や「ファイル名」の部分に日本語を使っている。
 Unityは一応日本語で動作しない場合はUnityのバグとして処理してるそうですが、日本語を使うとMacとWindowsで互換性がないときもあったりとバグが出やすいです。基本的には日本語名は使わないほうが無難です。


taro

unread,
Apr 19, 2018, 9:04:29 PM4/19/18
to 宴ユーザーグループ
ご返信ありがとうございます。

プロジェクト名やファイル名に日本語は使用していなかったのですが、
ディレクトリによって何か変化がないか試してみたところ、Cドライブ直下にプロジェクトを置いた場合にのみ正常にビルドできました。
その場合もVideoPlayerの動画だけが正常に再生されませんでしたが、こちらもUnityの不具合のようだったので、宴の基本機能を使ってカバーしました。
できる範囲が広くて助かります。

ありがとうございました。
Reply all
Reply to author
Forward
0 new messages