[過去ログ] 【3Dゲームエンジン】Unity質問スレッド32 (1002レス)
上下前次1-新
このスレッドは過去ログ倉庫に格納されています。
次スレ検索 歴削→次スレ 栞削→次スレ 過去ログメニュー
リロード規制です。10分ほどで解除するので、他のブラウザへ避難してください。
997: 2017/12/21(木)20:52 ID:m2pWnfBj(2/2) AAS
例えば、物理演算を使用する場合、Unityで設定できるのは、
速度velocityと力AddForce、角速度angularVelocityとトルクTorqueだけです。
(位置positionや角変位rotationは原則いじらないほうが良いです)
すると、直線移動や自転だけなら設定が簡単ですが、
公転のような円運動を行うには、物理法則に準じた命令を与える必要があります。
物理演算では、transform.RotateAroundを使えないので、
そういう場合に自分で工夫して実装できるかどうかに関わってくると思います。
998: 2017/12/22(金)00:21 ID:ko83+b2p(1) AAS
一番とっつきにくいのは回転運動だと思います。
Rigidbodyでは、ForceMode.Accelerationがあるので、
加速度Vector3 a(m/s/s)を得たい場合は、
AddForce(a, ForceMode.Acceleration)とするだけ、
角加速度Vector3 aa(rad/s/s)を得たい場合は、
AddTorque(aa, ForceMode.Acceleration)とするだけですが、
Rigidbody2Dでは、ForceMode.Accelerationがないので、
加速度Vector2 a(m/s/s)を得たい場合は、
AddForce(a * mass)としたり、
角加速度float aa(度/s/s)を得たい場合は、
AddTorque(aa * inertia * Mathf.Deg2Rad)とする必要があります。
要するに、ニュートンの運動方程式や、
オイラーの回転運動方程式を使う必要が出てきます。
速度は、2DはVector2 v(m/s)、3DはVector3 v(m/s)で分かりやすいですが、
角速度は、2Dはfloat w(度/s)、3DはVector3 w(rad/s)と単位が変わります。
Torqueではrad単位で入れないと、inertiaと乗算できないので面倒です。
999: 2017/12/22(金)02:24 ID:BHuKTyia(1) AAS
オイラーは、ドラマー♪
1000: 2017/12/22(金)10:39 ID:GTvlornd(1) AAS
10年は 夢のよう
100年は 夢また夢
1000年は 一瞬の光の矢
過ぎてく時間は怖くない
輝きを失う事が嫌なのです
1001(1): 1001 ID:Thread(1/2) AAS
このスレッドは1000を超えました。
新しいスレッドを立ててください。
life time: 53日 5時間 33分 36秒
1002(1): 1002 ID:Thread(2/2) AAS
5ちゃんねるの運営はプレミアム会員の皆さまに支えられています。
運営にご協力お願いいたします。
───────────────────
《プレミアム会員の主な特典》
★ 5ちゃんねる専用ブラウザからの広告除去
★ 5ちゃんねるの過去ログを取得
★ 書き込み規制の緩和
───────────────────
会員登録には個人情報は一切必要ありません。
月300円から匿名でご購入いただけます。
▼ プレミアム会員登録はこちら ▼
外部リンク:premium.5ch.net
▼ 浪人ログインはこちら ▼
外部リンク[php]:login.5ch.net
上下前次1-新書関写板覧索設栞歴
スレ情報 赤レス抽出 画像レス抽出 歴の未読スレ
ぬこの手 ぬこTOP 0.015s