- 913 名前:名前は開発中のものです。 [2023/07/21(金) 10:32:19.22 ID:Z+zOC6cO.net]
- >>899
ただ引き合うだけで良いのか、極性を考慮した動きが欲しいのかでも話が変わってきますが とりあえず前者と仮定してお話しますね。 2DならPointEffectorがありますが、3Dならスクリプトが必須だと思います。 引きあうオブジェクトは両方Rigidbody(物理演算コンポーネント)とColliderを持ってる前提として、やることは大きく分けて4つです。 1.近くのオブジェクトのColliderを検出する https://docs.unity3d.com/ja/2021.1/ScriptReference/Physics.OverlapSphere.html 2.検出したCollider(引き寄せる相手)がRigidbodyを持っているかチェックする https://docs.unity3d.com/ja/2019.4/ScriptReference/Component.TryGetComponent.html 3.引き合う力を計算する 4.AddForceで双方のRigidbodyに3で計算した力を加える https://docs.unity3d.com/ja/2021.2/ScriptReference/Rigidbody.AddForce.html これらの処理をFixedUpdateの中に記述すればOKです。
|

|