Traumachicken

6/02/2011

Unity :prefab

実はインスタンスの作り方すらわからんかった
Unityではまず元となるクラスをprefabで作る


ひひ
Assets>Create>Prefabを実行すると
HierarchyではなくProjectに空のprefabができる
これは.prefabとして該当フォルダにファイルが実際に作成されたものだ

CubeやPlaneも他人の作ったprefabを使っていたというわけだ

中身を追加するには、
Hierarchyパネルでしこしこ組み立てたオブジェクトを
空のprefabにドラッグしてやる

prefabのプロパティに同じものが追加されたら成功

var prefab : Transform ; 
Instantiate (prefab, Vector3(0, 0, 0), Quaternion.identity);

あとはこの1行でいくらでも複製できる2行かよ

プロパティパネルでprefab変数にprefabをぶちこもう

これをコードで呼び出す方法を探していたわけなんだが
まあとりあえずこれでいいや

Hierarchyで青ネームになっているオブジェクトは、
何かのprefabからできたものであることを表わしている


そのオブジェクトは今もprefabとリンクしていて、
SelectやRevertといったボタンがプロパティに表示されているはずだ

Selectを押すとソースのprefabを選択する
Revertはインスタンスに加えた変更をソースの内容に戻しそう
Applyはインスタンスに加えた変更をソースに適用する

ソースを編集したい場合は、
リンクされたインスタンスを編集してApplyする

もちろんソースに加えた変更は
リンクされているインスタンスにも即適用される当たり前だろ

リンクをぶち壊すには、
インスタンスに新しいコンポーネントやオブジェクトを追加する
ダイアログが出るので、確認してぶち壊す


作成されたインスタンスの名前には勝手に(Clone)が付くらしい

なんかセカンドライフを思い出した

0 件のコメント: