想定外の場所で反応することがありました。
意味不明な現象でしたが、原因は「カメラが複数あったこと」でした。
私の作り方では、まずシーン遷移をコントロールするために、
DontDestroyOnLoad で決して破棄されないオブジェクトを一つ作ります。
そのオブジェクトにくっついたスクリプトが
Application.LoadLevel や Application.LoadLevelAdditive を行うことで
制御を行っていたのですが、この「非破壊オブジェクト」は、何の気なしにカメラでやってたんですね。
そのおかげで、「制御されたシーンにおいてあるメインカメラ」と「非破壊オブジェクトとなったカメラ」の
ふたつがあることで、まったく想定外の座標でも OnMouseDown などが反応する、ということになってしまいました。
Unityには無害な空オブジェクトを作る Create Empty というメニューがありますので、
ちゃんとこちらを利用しましょう、という反省でした。
0 件のコメント:
コメントを投稿