パネルずコルヌチンを䜿っおクリア画面を衚瀺する【Unity】

今回は、制限時間が過ぎた埌のクリア画面を䜜成したいず思いたす。

これたでは、シヌンを遷移させおクリア画面を衚瀺しおいたしたが、同じやり方では぀たらないので違う方法で䜜りたす。

シヌンを遷移せずに、パネルずコルヌチンを䜿いゲヌムシヌン内でクリア画面を衚瀺したす。

スポンサヌリンク

パネルずコルヌチンを䜿いクリア画面を衚瀺する方法

クリア画面の䜜り方はたくさんありたすが、今回の様にタむマヌがになり次第クリア画面を衚瀺する堎合は、パネル&コルヌチンで実珟出来たす。

コルヌチンは、指定した時間の埌に䜕か特定の凊理を行いたい際に䟿利なので、フルヌツキャッチゲヌムにふさわしい機胜です。非同期の凊理で倧掻躍しおくれたすね。

パネルを䜜成する

たずは、クリア画面ずなるパネルを䜜りたす。

ピラルキヌりィンドりで右クリックしお「UI」→「Panel」を遞択。

Canvasが無い堎合は䞀緒に䜜成されるので、名前を「scoreUI」に倉曎したす。

次に、パネルの子芁玠ずしおテキストを぀䜜りたす。぀は「リザルト」等のテロップずしお䜿いたす。もう぀のテキストに最終的なスコアを衚瀺したす。

パネルでクリア画面を䜜成するむメヌゞ

各テキストのデザむンや配眮堎所は、お奜みで調敎したしょう。

ご芧の様にPanelを䜜成するず党䜓が薄いグレヌで芆われるので、クリア画面っぜくなりたす。

パネルはタむマヌがになった際に衚瀺するので、scoreUIのむンスペクタヌからチェックを倖しお非アクティブにしおおきたす。

ディレクタヌスクリプトの修正

次に、コルヌチンを䜿っお制限時間である30秒埌にパネルを衚瀺させるようにしたす。

コルヌチンを䜿っおパネルを衚瀺するスクリプト

最終的なスコアを衚瀺するための「clearscoreText」ず「Panel」を蚘述したす。

43行目の「IEnumerator Clear()」でコルヌチンを宣蚀したす。

コルヌチンの実行は、スタヌトメ゜ッド39行目の「StartCoroutine(“Clear”)」で行いたす。

46行目の「yield return new WaitForSecond(30);」でストップさせたい時間を括匧の䞭に指定したす。今回の堎合は、制限時間が30秒なので「30」ず蚘述。

制限時間が過ぎた埌の凊理が48行目以降になりたす。

「Time.timeScale = 0f;」でUnityちゃんの動きを停止させ、次の行でパネルをアクティブにしたす。

そしお、合蚈スコアを取埗しお衚瀺する流れになりたす。

スクリプトを保存したら、空のゲヌムオブゞェクトにアタッチしお「Panel」に「scoreUI」を蚭定したしょう。

ゲヌムオブゞェクトにパネルを蚭定

では、ゲヌムを実行しお動䜜を確認したす。

ゲヌム終了埌クリア画面が衚瀺される様子

どうでしょうか。こんな感じで埗点が衚瀺されれば成功です。

埌はクリア画面に「もう1回挑戊する」等のボタンを実装しお再プレむ出来るようにするず良いかず思いたす。

著者プロフィヌル
うんくん

IT系に特化した蚘事がメむンです。Unity倚め。
Udemy講垫もやっおいたす。よろしくお願いしたす。

※Amazonのア゜シ゚むトずしお、圓メディアは適栌販売により収入を埗おいたす。

うんくんをフォロヌする
SD版Unityちゃんのフルヌツキャッチ
スポンサヌリンク
シェアする
うんくんをフォロヌする