プレイヤーオブジェクトがシーン開始約10秒後に勝手にDestroy()
されます。
実際にDestroy()
されているのかわかりませんが、プレイヤーオブジェクトが突然ヒエラルキーから消え、プレイヤーオブジェクトを取得し続けている他オブジェクトのスクリプトがプレイヤーを見失ってエラーを吐き続けます。
僕が用意したスクリプト内にはプレイヤーをDestroy()
するコードどころか他のオブジェクトをDestroy()
するコードもありません。
おそらく導入したPUN2の影響だと思います。というのも、PUN2を組み込む前はそのようなエラーは吐かれなかったので。
いつもシーン開始10秒後(誤差2秒くらい)にこのような現象が起きるのですが、十秒後に処理が呼び出されるというコードも書いていません。
僕のゲームはシーンAでロビーやルーム検索などを済ませ、実際のゲームはシーンBで行っています。以下がコードです。
シーンA(ロビーやルーム検索などを行う)
C#
1 void Start(){ 2 PhotonNetwork.ConnectUingSettings(); 3 } 4 5 public override void OnConnectedToMaster(){ 6 PhotonNetwork.CreateRoom(Random.Range(0, int.MaxValue).ToString()); 7 } 8 9 public override void OnCreatedRoom() 10 { 11 LoadB(); 12 } 13 14 public void LoadB() 15 { 16 PhotonNetwork.IsMessageQueueRunning = false; 17 SceneManager.LoadSceneAsync("SceneB"); 18 }
シーンB(ゲーム)
C#
1 void Start(){ 2 PhotonNetwork.IsMessageQueueRunning = true; 3 GameObject Player = PhotonNetwork.Instantiate("Player", new Vector3(0,0,0), Quaternion.identity); 4 }
明らかにコードは合っているようにしか見えないのですが、いかんせん突然ゲームオブジェクトが消されるので何か追加の情報が必要であればコメントください。
プレイヤーのゲームオブジェクトにはPhotonView
がアタッチされていますが、そのObserved Components
にはPhotonTransformView
しかアタッチされていません。
回答お願いします。
回答1件
あなたの回答
tips
プレビュー
バッドをするには、ログインかつ
こちらの条件を満たす必要があります。