【Unityスクリプト解説】ForceMode

<概要>

力のベクトルを加え方を指定するenum型です。

F(力)= ma (質量×加速度)
a = F / mとなるのが普通ですが、これはこの力のかかり方を変えるものです。
速さを求めるにはv = v0 + atなので v = v0 + Ft / m

↓これはAddForceで右側に100の力をかけています。
このオブジェクトの質量は全て5です。

force_compare

↓は力を加えた1フレーム目の速度です。100の力を加えるとこれだけの違いが出ることがわかります。

force

<名前空間・型>

・namespace
UnityEngine

・型
enum型

<要素>

Force

自然の物理法則に最も近い力の掛け方です。

力 = 質量*距離/時間2 → F = ma → a = F / m
という計算の仕方をします。使い方としては、自然と近いので継続的に力を加えていって段々速くなっていく形で使用することが多いです。例えば、FixedUpdateで何秒間力を加え続けるなどです。徐々に加速していく表現等に使用します。

Acceleration

質量を無視した力の掛け方です。

力 = 距離/時間2 → a = F
という計算の仕方をします。Forceとの違いが質量のみなので使い方としては同じです。

Impulse

瞬間的な力のかけ方と言われます。加速を無視していきなり最高速になります。

力 = 質量 * 距離 / 時間 → v = F / m
という計算の仕方をします。かかった力が直接速さに関与していることが見てとれます。
使い方としてはForceとは違い、1度のみ力をかけるような使い方が多いです。

VelocityChange

瞬間的な力のかけ方なのですが、加速を無視していきなり最高速になる上に質量まで無視するため、かけた力はすなわち速度になります。

力 = 距離 / 時間 → v = F
という計算の仕方をします。

<ゲーム業界で年収をあげたいなら>

もしあなたがゲーム業界で働いて、年収を上げたいのであればフリーランスになるという道もあります。↓の記事でフリーランスの案件情報サイト一覧をまとめてあるので、覗いてみるのも手だと思います。



タイトルとURLをコピーしました