VelとPhysics
- ※解説修正情報※
- ●2014-04-13:Ctrl=1+方向キー↓の屈み移行での速度変化は100番からでは起きない。
- ●2013-01-12:Physics=Aによる自動着地の部分。誤→ステート開始時 正→速度処理直後
■Vel・Velocity(速度)について
- 速度用トリガー
- 速度用ステートコントローラー
- VelはVelのオプション・ステートコントローラーによってのみ設定される。
- Velで動かし終わった後は0にリセットをしないとずっと動き続ける。
- 例外的にStateNo!=100&&StateType=S&&Ctrl=1のとき方向キー↓(屈む)でVel Xが0になる。
- StateNo=100(前ダッシュ)からは例外的にVel Xが0にならない。
- Velは毎フレーム、自身のステート処理後にその数値分キャラの座標を移動させる。
- ※検証不足※Bindなど行なっている場合、行われないというかVel自体が消える?
- 順番は「ステート処理>速度を座標に加算>速度に物理状態の影響を与える>次のキャラorフレーム」
- 物理状態(Shysics)については後述
- SC-/PosFreezeなどの影響を受けている場合はVelによる移動を行わない。
- SC-/ExplodもVelを設定できる。
- ExplodはPhysicsが無い代わりに、Acccel(加速度)を設定できる。
- Accelは毎フレーム、Accelの数値分Velに加算される。
- SC-/ProjectileもVelを設定できる
- Explod同様Accelの他、VelMul(速度倍率)を設定できる。
- VelMulは毎フレーム、Velの数値を「Vel*VelMul」にする。
■Physics(物理状態)について
ステート冒頭のオプション、あるいは
SC-/StateTypeSetで指定する。
状態によって、Velに影響を与える他、状態・状況によってはステートの移行も行う。
なおPhysicsを参照できるトリガー情報は無い。
- Physicsの種類
- Physics = N
- 影響無し。Velに影響を与えない一定のVelを保って処理をしたい場合はコレ。
- Physics = S
- Physics = C
- Physics = A
- 空中状態。毎フレーム、Y速度をVel Y+Const(Movement.yaccel)にする。
- この状態で速度移動処理の後、Vel Y > 0(落下中)でPos Y> >= 0(地面から下)だった場合
52番ステートへ移動し再度番号ステートを読み込み直すという自動着地処理を行う。- 105番ステートは例外的に自動着地をしない。
- ステート内部で着地するタイミングを認識したい場合は
(Vel Y+Const(movement.yaccel ) > 0 && ( Pos Y + Vel Y )>=0 )
こうした条件になる。
- なお52番ステートのPhysicsをAにしてしまった場合、永久ループが発生し処理が終わらずフリーズの状態に陥る。
- あと自動着地が行われた場合、自動で足元に埃エフェクトが発生する。
- また自動着地が行われるとSC-/Offset処理がリセットされる模様?
- 空中動作でのPhysicsについて
- 空中動作はPhysics=A(空中)で処理することが多いが
- 専用の着地ステートを使用する場合、自動着地をさせない為にN(無し)にしなければならない。
- またその場合、落下速度はSC-/VelAddやSC-/Gravityによって再現することになる。
- 着地のタイミングは(Vel Y > 0 && ( Pos Y + Vel Y )>=0 ))がベターです。
最終更新:2014年04月13日 20:46