以下の内容はhttps://www.karvan1230.com/entry/2020/06/02/215844より取得しました。


【Unity】シンプルな物理ツールキット-磁力・水・風-VR対応

一段落

全国的に緊急事態宣言が解除されプロ野球やJリーグも再開が決まって、長く続いたコロナ禍が一段落したのと呼応したわけではないのですが、個人的に仕事の面でも一段落がつき、プライベート面はとっくに波が停止しているので、ここ最近は何事もない平穏な日々が続いております。

その所為かゲーム制作の方はGameJamに参加するも箸にも棒にも掛からぬような感じだったこともあり、全くモチベーションが上がらない状態で、1年掛けた2.5DSTGも進捗が進まないどころか大きく作り変える事にしたり、今年中にゲームアプリをリリースできるのか不透明な情勢です。

 

そんな訳でブログネタにするようなUnityの技術的な知見も広がっていないので、今回もアセット紹介となります。

 

物理ツールキット

『切磋琢磨するしかない!』を制作する際に物理演算に沿ったギミックを作れないか考えていたのですが、コガネブログさんの以下の記事を見つけて、ギミックとして使えそうだったので購入しました。

 

baba-s.hatenablog.com

その名の通り"磁力・水・風"の物理の挙動を再現できるアセットとなっています。

"Simple"とあるようにパラメータ等はシンプルで特に難しい設定無く導入することができます。

 

磁力

磁力を使う場合は磁力の影響を受ける全てのオブジェクトにRigidbodyとこのアセットの「Magnet」コンポーネントを設定します

f:id:Karvan:20200602214716p:plain
磁石が引き付けられる範囲を"OuterRadius"、引き付けれて停止する(オブジェクトがくっつく)範囲を"InnerRaius"で指定します。

 

挙動はこんな感じ

f:id:Karvan:20200602214808g:plain

 

浮力

浮力は浮力が発生するオブジェクト(水となるオブジェクト)にRigidbodyと「Water」コンポーネントを設定します

f:id:Karvan:20200602214922p:plain

この「Water」が設定されたオブジェクトに接触したRigidbody全てに対して「浮力」の効果を加えます

 

f:id:Karvan:20200602214949g:plain

キャラクターのお尻が浮いてるのは重心設定の関係です。

 

風力

風力の場合はまず空のオブジェクトにBoxCollider等のColliderを設定します。これが風力を受ける範囲になります

そして「Wind」コンポーネントを設定します。

f:id:Karvan:20200602215136p:plain

 

風の方向はSceneビュー内にて水色の線で表示されるので、それを見ながらオブジェクトを回転させて風向きを設定します。

f:id:Karvan:20200602215206p:plain

浮力と同様、この「Wind」が設定されたオブジェクトのCollider内にある全てのRigidbodyに対して「風力」の効果を加えます

 

f:id:Karvan:20200602215241g:plain

分かりやすいように風の範囲にパーティクルを表示しています

 

 簡単に導入できる

前述のように"磁力・水・風"の物理効果を簡単にゲーム内に導入することができます。

『切磋琢磨するしかない!』では風力だけ使用しましたが、アイデア次第で多種多様なギミックを作ることができるかと思います。

 

assetstore.unity.com




以上の内容はhttps://www.karvan1230.com/entry/2020/06/02/215844より取得しました。
このページはhttp://font.textar.tv/のウェブフォントを使用してます

不具合報告/要望等はこちらへお願いします。
モバイルやる夫Viewer Ver0.14