質問: ### 前提・実現したいこと ツリーにオーナメントをHinge Joint 2Dを使用して接続し、ゆらゆら揺らせたいと考えています。 同じオーナメントを複数設置する為、プレハブ化をしたいのですが プレハブ化した段階で「Connected Rigid Body」(ツリーのオブジェクト)が解除されてしまいます。 プレハブ化したものに直接D&Dしようとしても禁止マークが出ます。 何か対処方法はありませんでしょうか? また、特定の条件(マウスクリックを解除した時に、オーナメントがツリーに重なっていたら) Hinge Joint 2Dを有効にする手段も模索しています。 こちらも併せてご教授いただければと思います。 ### 発生している問題・エラーメッセージ ``` エラーメッセージ ``` ### 該当のソースコード ``` ここにご自身が実行したソースコードを書いてください ``` ### 試したこと 課題に対してアプローチしたことを記載してください ### 補足情報(言語/FW/ツール等のバージョンなど) Unity 2017.2
回答: オブジェクト生成時にConnected Rigid Bodyを設定したい場合は、以下のような形で出来るかと思います。 ``` GameObject obj = Instantiate (プレハブ, 親オブジェクトにしたいtransform) as GameObject; HingeJoint2D hinge = obj.GetComponent (); hinge.connectedBody = ツリーのRigidbody; ``` マウスクリック解除時に〜というのは「unity ドラッグ」等で検索してください。 タイミングの取得が出来たら、後は`hinge.enabled = trueまたはfalse;`で有効無効が切り替えられます。(hingeはHingeJoint2Dコンポーネント)