タグ

2017年1月14日のブックマーク (1件)

  • OnDestroyの処理中にInstantateは避けるべき - テラシュールブログ

    先日のゲームジャムで、ゲームのシーンを終了させた時に大量のパーティクルがシーンに残るといった事案が発生しました。何が原因かと調べてみた所、パーティクル生成をOnDestroyで行っていることが原因でした。 OnDestroyはオブジェクトが消滅したタイミングで呼ばれる命令ですが、 これの実行中にInstantiateを呼ぶとシーン再生終了時にゴミが残る事象があります。 これは例えば、こんなコードで発生します。 void OnDestroy () { GameObject.Instantiate (new GameObject ("gomi")); } この現象が発生した祭、下のようなメッセージが表示されるので、 分かりやすいです。 Some objects were not cleaned up when closing the scene. (Did you spawn new Game

    OnDestroyの処理中にInstantateは避けるべき - テラシュールブログ