22日目を書かせていただきます。ECSそろそろ触っておかなきゃなーと思ってる最中、概念や導入部分から公式サンプルの解説までかなり丁寧に説明してくださっているのでめちゃめちゃありがたかったです!必見!どうも、くそすけです。Unity関連でアドベントカレンダーを書くのは2回目になります。2015年にこんな記事を書いてました。どんなテンションで書いてたのかもう思い出せない...chroske.hatenablog.com最近作ってるもの友人のデザイナーさん達とこんなゲームを作っております。ゴリラと人間が鬼ごっこする最高にHappy&Wildなゲームです。誰かを巻き込んで個人開発をするのは初めてだったりするので、ちゃんと完成までもっていかないとなあと思っております。僕が担当しているのはUnityとリアルタイムサーバの部分です。マルチプレイなんです。アクセス来て捌けなかったらどうしようとか皮算用しておりますがまあ大丈夫でしょう。そんな来ないってどこかで見かけたら遊んでやってください!今回はこのゲームでも使っているアニメーションしてるモデルをラグドール化する方法についてです。今ラグドール?!って感じかと思いますがラグドールです。ネタがなかった...洋ゲーなどではお馴染みラグドール。関節がぐにゃぐにゃのあれですね。和製商業ゲームだとあんまり見かないような気がしますが僕はこの表現が結構好きです。Object/Ragdoll]からこちらのイケメンゴリラをラグドール化していきます。ゴリラってかっこいいよね!ラグドールにアニメーションをつけるUnityのメカニムアニメーションはラグドールを動かすことを多分想定していないので、ラグドールをそのままアニメーションさせようとすると生まれたての子鹿みたいになります。イケメンが台無しですねなので各パーツに付与されたRigidbodyのisKinematicをtrueにして物理を無効化してやる必要があります。Rigidbody).isKinematic=newValue;}}こんな感じの処理でいいでしょう。GetComponentsInChildrenしてるのでパーツ数が多いと重くなるかもしれませんが。アニメーションしてるモデルをラグドール化するさっきtrueにしたisKinematicを今度はfalseにしてアニメーションを止めてやるだけです。isKinematicを切り替えてからアニメーションを止めてやったほうが綺麗にラグドール化する気がします。誤差の範囲だとは思いますが。false;}ラグドールをふっ飛ばすAddForceしてやりましょう。impactPower;impactTarget.AddForce(impact,ForceMode.VelocityChange);}}}}クリックしたところにrayを飛ばしてそこにAddForceしてやるようにしました。まとめまあ実装するとしたらこんな感じだよねーって内容だったと思います。意外性もないっていう。物理でなにかしらが動いてるだけでもゲームっぽい雰囲気は出ますし、実装も簡単なのでカジュアルなゲームで使ってみたら面白い演出が出来たりするんじゃないかなーと。noteひよこのたまごnotargs.com検索mailはてなブログをはじめよう!chroskeさんは、はてなブログを使っています。ブログを報告するスターをつけました引用をストックしましたストック一覧を見る閉じる引用するにはまずログインしてくださいログイン閉じる引用をストックできませんでした。再度お試しください閉じる限定公開記事のため引用できません。