動的に配置したオブジェクトを残しておきたい

プログラムで動的に配置したオブジェクトを保存したい。
実行中にオブジェクトをプレハブに入れようとしたが入らなかった。
Fileメニューからシーンの別名保存をやってみたができなかった。
そこでEditor拡張のスクリプトを色々調べてみたところ、
PrefabUtilityってのがあった。
そのなかの、CreatePrefab関数をつかってみた。 実行時にGameObjectが参照できればそれをプレハブに入れることができた。
たくさんの配置物がある場合でも空のGameObject作ってその下に配置して、そのオブジェクトごとPrefab化してしまえばよい。
いや、調べてみるもんだね。

ただし実行にやたら時間がかかるので注意。

いろいろ実験してみたら次のことがわかった。

  • 実行中にプレハブに入れようとしてできなかったのはどうやら勘違いのようだ。
  • よってやりたかったことのほとんどは上記のような方法を取らずにドラッグアンドドロップでできた。
  • ただし、シーン上のゲームオブジェクトを複数選択して持って行く事はできないので、1つの空オブジェクトにいれてから、そのオブジェクトをプレハブに持っていく。

トップ   編集 凍結 差分 バックアップ 添付 複製 名前変更 リロード   新規 一覧 単語検索 最終更新   ヘルプ   最終更新のRSS
Last-modified: 2012-08-25 (土) 20:07:08 (2552d)