unity ダイアログボックス② sceneの名前を変えた後の画面遷移がうまくいかない
何か所か変更した後のプログラムは、それをコピーペーストして
新しいバージョン名にして、そこから改編するようにしています。
改編中に、再起不能になったときに、一個前のプログラムからやり直せるからです。
(以前も書いたけど、こんなことしなくて良いのが多分、GitHubなんでしょう・・・
苦手意識払拭して使っていかないと永久に使えないままだな・・・)
で、今回バージョン名を0.9から1.2に変えました。
↓この面白みの全くないのが現時点のスタート画面です。
スタートボタンを押したら
↓この絵カード画面に遷移します。
スタート画面のボタンにアタッチしているスクリプトです。
using System.Collections;
using System.Collections.Generic;
using UnityEngine;
using UnityEngine.SceneManagement;
public class OpenButton : MonoBehaviour
{
public void OnClickStartButton()
{
SceneManager.LoadScene("ecard1.2");
}
void Update()
{
//Escキーを押したらアプリを閉じる
if (Input.GetKey(KeyCode.Escape))
{
Application.Quit();
}
}
}
シーンの名前は
↑このままなのに、なんで
"ecard1.2"
に変更してもちゃんと遷移するのか・・・
そして
↑シーン名を変えるとエラーが。
Scene 'ecard0.9' couldn't be loaded because it has not been added to the build settings or the AssetBundle has not been loaded.
To add a scene to the build settings use the menu File->Build Settings...
deepl翻訳によると
シーン 'ecard0.9' は、ビルド設定に追加されていないか、AssetBundle が読み込まれていないため、読み込むことができませんでした。・・・・
的なことが書いてあるのですが、ボタンにアタッチしているスクリプトは
SceneManager.LoadScene("ecard1.2");
に、書き換え済みです。
どうして 'ecard0.9' に行こうとさせるのか・・・???
過去に遡って調べると
Unity視線アプリscene移動① タイトルシーンを作る - 支援機器やアプリなどのメモ
去年の12月にこの部分で苦労しまくった痕跡を残していました。
私はこの画面遷移がどうも苦手のようです。
・・・
// SceneManager.LoadScene("ecard1.2");
コメントにしても画面遷移しようとすることが分かり、
なにやらおかしなことが起きていることが発覚。
エラー文をよくみると、とっくに「視線で絵カード1.2」に名前を変えているのに、
未だに「視線で絵カード0.9」から読もうとしていることが分かりました。
コピーペーストするときに何かが起きたようです。ちょっとフォルダの方を見てみようと思います。