変化球シミュレータ
なにこれ
Unityの物理演算でマグヌス効果をそれっぽく再現してみた、って感じのもの。回転軸と進行方向のベクトル外積・回転速度・速度の2乗に 比例する力をフレーム毎に計算してボールに与えている。空気抵抗もジャイロ成分と回転量に応じて少なくなるようにしてみたけど、 マグヌス効果にしろ空気抵抗にしろ係数とか数式とかは「いいかんじ」になるように適当に思いつきで実装しているので、 現実の軌道とはかなり異なることもあると思う。縫い目の影響とかは考えてないので、4シームと2シームの違いとかナックルボールとかは無い。
画面とか操作とか
メイン画面
- throw : 投球開始
- ... : 球速・回転など設定
- 1~8 : 視点切り替え
- x0.5 : 0.5倍速
- zone : ストライクゾーンを表示
ホームベース側の小さい白丸が投げるときのターゲットで、 もし回転の影響が無ければボールはほぼそこを通るよって場所。大きい白丸は実際にボールがホームベース上を通過したときの場所で、 つまり大小の白丸の位置の違いが回転による変化量を表している。右側にいろいろ情報が表示されるけど、Movementが変化量の欄で、 Xのプラスは投手から見て右方向、Yのプラスは上方向の変化を表す。
設定画面
- Target X&Y : ターゲット(前述)の位置設定
- Throw Hand : 右投げ/左投げ 切り替え
- Velocity : 初速の設定 80~180 km/h
- Spin Speed : 回転量(回転速度)の設定 0~60 rps(回転毎秒)
- Spin Angle : 上下回転・左右回転の設定 0→下回転 +90→右回転 -90→左回転 ±180→上回転
- Spin Gyro : ジャイロ回転成分の設定 回転軸ベクトルを進行方向に何度倒すか 0→ジャイロ回転無し ±90→完全なジャイロ回転