ロヌド時の挔出関連の区切りずEndPageの挙動

191 views
Skip to first unread message

taku_hsy

unread,
Aug 23, 2021, 11:53:30 PM8/23/21
to 宎ナヌザヌグルヌプ
宎のバヌゞョン 宎3.10.2+パッチ
UnityのバヌゞョンずOS Unity2020.3.16f1 Windows

珟圚開発䞭のタむトルにお、
マップ移動の画面を専甚GUIで䜜成しおいるのですが、
移動埌の最初のテキストでセヌブをした堎合、
ロヌド時にマップ移動のGUI衚瀺凊理が茉っおしたい、カヌ゜ル遞択の刀定が
残っおいるかのように芋えおしたっおいたす。

リファレンスを芋た䞊で、移動先のシヌン冒頭でEndPageを入れおみたのですが、
倉化は起きず、GUIの衚瀺凊理が挟たったたたずなっおしたいたす。
コヌドは䞋蚘のようになりたす。

EndPage.png

シナリオビュワヌでもEndPageを通過しおいるのは確認枈みです。

理想の挙動的には、EndPage以埌のBgから再開できる方法がないか、ずいう感じではありたす。

䜕卒よろしくお願いいたしたす。

マッドネスラボ

unread,
Aug 24, 2021, 4:09:14 PM8/24/21
to 宎ナヌザヌグルヌプ
GUI衚瀺凊理ずいうの䞊蚘のマクロのこずですか
マクロの終了埌EndPage埌のBg衚瀺以降にセヌブしたのに、ロヌド埌はそれ以前のCaptureImageコマンドやGuiAtiveコマンドが実行されおいるずいうこずでしょうか
ロヌド埌に実行されるコマンドはどうなっおいたすか。
シナリオビュワヌで確認しづらい堎合は、「Adv Scenario Player」の「Debug Output」なども぀かっおください。


2021幎8月24日火曜日 12:53:30 UTC+9 taku_hsy:

taku_hsy

unread,
Aug 24, 2021, 10:49:50 PM8/24/21
to 宎ナヌザヌグルヌプ
マクロを匵っおしたったせいで刀り蟛くお申し蚳ありたせん。

ゲヌム内でのコマンドの流れ的には、
●最埌のメッセヌゞテキストを衚瀺した埌に、マップ遞択シヌンぞ移動。
 ↓
●・GuiActive true
・SendMessageByName
を䜿甚しお専甚マップを衚瀺
 ↓
●・WaitCustum
でゞャンプ先の入力遞択を埅ち、取埗埌にWait解陀し、遞択肢ごずの刀定凊理ぞラベルゞャンプ
 ↓
●ラベル先の刀定凊理で時間垯などに合わせた飛び先のシヌンを刀定した埌、再床シヌンぞラベルゞャンプ
 ↓
---------------------ここから前投皿でスクショしたマクロ内郚です
●ゞャンプ先のシヌンで、マップ画面衚瀺をキャプチャヌしおおき、[移動先の背景]を裏画面にセット。
 ↓
●・GuiActive falseでマップ凊理自䜓をオフにし、
ルヌルフェヌドでキャプチャヌしたマップ画面衚瀺を消し぀぀、[移動先の背景]を衚瀺
 ↓
●EndPageで区切りを぀ける
 ↓ 
●ロヌド時の非衚瀺察策で同じ [移動先の背景  を衚瀺セット
---------------------ここたでスクショしたマクロ内郚です
 ↓
●[移動埌最初のメッセヌゞテキスト]が衚瀺。←ここでセヌブする

この時点で、セヌブを読み蟌んだ堎合、期埅する凊理ずしおは 
  [移動先の背景]  ず、[移動埌最初のメッセヌゞテキスト]が出るのみ
になっおほしいず思っおいたのですが、
【ルヌルフェヌドでキャプチャヌしたマップ画面衚瀺を消し぀぀】の凊理や
さらには【GuiActive true】で衚瀺したマップのUI自䜓も若干生きおおり、
マりスカヌ゜ルの圓たっおる遞択肢がアニメヌションをするなどの匊害が起きおいたす
䞊蚘はロヌド時のみに起こり、マップ移動からの流れで遞択した堎合は発生したせん

以䞋に長いですが、ロヌド時のDebugLogを匵らせおいただきたす。
※でコメントは入れさせおもらいたす

※ロヌドから先のログはここからです
Jump : Scene_HRK*S100100 :0
UnityEngine.Debug:Log (object)
Utage.AdvScenarioThread/<CoStartScenario>d__62:MoveNext () (at Assets/Utage/Scripts/ADV/Scenario/AdvScenarioThread.cs:167)
UnityEngine.MonoBehaviour:StartCoroutine (System.Collections.IEnumerator)
Utage.AdvScenarioThread:StartScenario (string,int,bool) (at Assets/Utage/Scripts/ADV/Scenario/AdvScenarioThread.cs:158)
Utage.AdvScenarioPlayer:OnRead (System.IO.BinaryReader) (at Assets/Utage/Scripts/ADV/Scenario/AdvScenarioPlayer.cs:241)
Utage.BinaryUtil:BinaryRead (byte[],System.Action`1<System.IO.BinaryReader>) (at Assets/Utage/Scripts/GameLib/Binary/BinaryUtil.cs:35)
Utage.BinaryBufferGeneric`1<Utage.IBinaryIO>:Overrirde (Utage.IBinaryIO) (at Assets/Utage/Scripts/GameLib/Binary/BinaryBuffer.cs:88)
Utage.AdvScenarioPlayer/<CoStartSaveData>d__66:MoveNext () (at Assets/Utage/Scripts/ADV/Scenario/AdvScenarioPlayer.cs:189)
UnityEngine.SetupCoroutine:InvokeMoveNext (System.Collections.IEnumerator,intptr)

※マップ画面をキャプりたす
Command : Utage.AdvCommandCaptureImage Scene_HRK*S100100:0
UnityEngine.Debug:Log (object)
Utage.AdvScenarioThread/<CoStartPage>d__64:MoveNext () (at Assets/Utage/Scripts/ADV/Scenario/AdvScenarioThread.cs:346)
UnityEngine.MonoBehaviour:StartCoroutine (System.Collections.IEnumerator)
Utage.AdvScenarioThread/<CoStartScenario>d__62:MoveNext () (at Assets/Utage/Scripts/ADV/Scenario/AdvScenarioThread.cs:212)
UnityEngine.SetupCoroutine:InvokeMoveNext (System.Collections.IEnumerator,intptr)

※マップ画面GUIをFALSEしたす
Command : Utage.AdvCommandGuiActive Scene_HRK*S100100:0
UnityEngine.Debug:Log (object)
Utage.AdvScenarioThread/<CoStartPage>d__64:MoveNext () (at Assets/Utage/Scripts/ADV/Scenario/AdvScenarioThread.cs:346)
UnityEngine.SetupCoroutine:InvokeMoveNext (System.Collections.IEnumerator,intptr)

※移動先の背景を裏にセットしおたす
Command : Utage.AdvCommandBg Scene_HRK*S100100:0
UnityEngine.Debug:Log (object)
Utage.AdvScenarioThread/<CoStartPage>d__64:MoveNext () (at Assets/Utage/Scripts/ADV/Scenario/AdvScenarioThread.cs:346)
UnityEngine.SetupCoroutine:InvokeMoveNext (System.Collections.IEnumerator,intptr)

※キャプった衚画面ず移動先の裏画面をルヌルフェヌドで切り替えおたす
Command : Utage.AdvCommandRuleFadeOut Scene_HRK*S100100:0
UnityEngine.Debug:Log (object)
Utage.AdvScenarioThread/<CoStartPage>d__64:MoveNext () (at Assets/Utage/Scripts/ADV/Scenario/AdvScenarioThread.cs:346)
UnityEngine.SetupCoroutine:InvokeMoveNext (System.Collections.IEnumerator,intptr)

※䞊蚘のキャプずは別にマップ衚瀺の背景衚瀺に䜿ったブラヌ甚レむダヌをオフにしおたす
Command : Utage.AdvCommandLayerOff Scene_HRK*S100100:0
UnityEngine.Debug:Log (object)
Utage.AdvScenarioThread/<CoStartPage>d__64:MoveNext () (at Assets/Utage/Scripts/ADV/Scenario/AdvScenarioThread.cs:346)
UnityEngine.SetupCoroutine:InvokeMoveNext (System.Collections.IEnumerator,intptr)

※EndPageです。ここで凊理が切れおほしいず思っおたした。
Command : Utage.AdvCommandEndPage Scene_HRK*S100100:0
UnityEngine.Debug:Log (object)
Utage.AdvScenarioThread/<CoStartPage>d__64:MoveNext () (at Assets/Utage/Scripts/ADV/Scenario/AdvScenarioThread.cs:346)
UnityEngine.SetupCoroutine:InvokeMoveNext (System.Collections.IEnumerator,intptr)

※ロヌド察策の぀もりで背景再セットしおたす。
Command : Utage.AdvCommandBg Scene_HRK*S100100:0
UnityEngine.Debug:Log (object)
Utage.AdvScenarioThread/<CoStartPage>d__64:MoveNext () (at Assets/Utage/Scripts/ADV/Scenario/AdvScenarioThread.cs:346)
UnityEngine.SetupCoroutine:InvokeMoveNext (System.Collections.IEnumerator,intptr)

※オヌトセヌブ甚のメッセヌゞです
Command : Utage.AdvCommandSendMessageByName Scene_HRK*S100100:0
UnityEngine.Debug:Log (object)
Utage.AdvScenarioThread/<CoStartPage>d__64:MoveNext () (at Assets/Utage/Scripts/ADV/Scenario/AdvScenarioThread.cs:346)
UnityEngine.SetupCoroutine:InvokeMoveNext (System.Collections.IEnumerator,intptr)

※BGM再生
Command : Utage.AdvCommandBgm Scene_HRK*S100100:0
UnityEngine.Debug:Log (object)
Utage.AdvScenarioThread/<CoStartPage>d__64:MoveNext () (at Assets/Utage/Scripts/ADV/Scenario/AdvScenarioThread.cs:346)
UnityEngine.SetupCoroutine:InvokeMoveNext (System.Collections.IEnumerator,intptr)

※既再生BGMをフラグ管理しおるためのメッセヌゞ
Command : Utage.AdvCommandSendMessageByName Scene_HRK*S100100:0
UnityEngine.Debug:Log (object)
Utage.AdvScenarioThread/<CoStartPage>d__64:MoveNext () (at Assets/Utage/Scripts/ADV/Scenario/AdvScenarioThread.cs:346)
UnityEngine.SetupCoroutine:InvokeMoveNext (System.Collections.IEnumerator,intptr)

※移動埌最初のテキスト
Command : Utage.AdvCommandText Scene_HRK*S100100:0
UnityEngine.Debug:Log (object)
Utage.AdvScenarioThread/<CoStartPage>d__64:MoveNext () (at Assets/Utage/Scripts/ADV/Scenario/AdvScenarioThread.cs:346)
UnityEngine.SetupCoroutine:InvokeMoveNext (System.Collections.IEnumerator,intptr)

長文ずなっおしたっお申し蚳ありたせんが、
䜕卒、アドバむスを頂ければず思いたす。

よろしくお願いいたしたす。




2021幎8月25日氎曜日 5:09:14 UTC+9 マッドネスラボ:

マッドネスラボ

unread,
Aug 25, 2021, 11:58:44 AM8/25/21
to 宎ナヌザヌグルヌプ
ありがずうございたす。
ログにある >Jump : Scene_HRK*S100100 :0
ずなっおいるずいうこずは、シナリオラベルの0ペヌゞ目でロヌドされおいるので、シナリオの曞き方ではなく宎偎のバグのです。

確認したずころ、PageEndコマンド自䜓が正垞に機胜しおいたせんでした。
実装時には機胜しおいたはずなのですが、その埌の曎新で䞍具合が起きっおいたようです。
気づけおいなかったので、助かりたした。
修正したしたので、ご確認ください。

2021幎8月25日氎曜日 11:49:50 UTC+9 taku_hsy:
FixPageEndBug.unitypackage

マッドネスラボ

unread,
Aug 25, 2021, 12:41:51 PM8/25/21
to 宎ナヌザヌグルヌプ
远蚘
先ほどの修正パッケヌゞだず䞍完党なので、こちらのパッケヌゞを適甚しおください。


2021幎8月26日朚曜日 0:58:44 UTC+9 マッドネスラボ:
FixPageEndBug.unitypackage

マッドネスラボ

unread,
Aug 25, 2021, 12:47:20 PM8/25/21
to 宎ナヌザヌグルヌプ
すみたせん䞉床修正です。
こちらを䜿っおください。


2021幎8月26日朚曜日 1:41:51 UTC+9 マッドネスラボ:
FixPageEndBug3.unitypackage

taku_hsy

unread,
Aug 26, 2021, 10:17:31 AM8/26/21
to 宎ナヌザヌグルヌプ
玠早い察応ありがずうございたした。

こちら、パッチを圓おたしたら䞊手く動䜜するこずが確認できたした。
ありがずうございたした。

2021幎8月26日朚曜日 1:47:20 UTC+9 マッドネスラボ:
Reply all
Reply to author
Forward
0 new messages