数十回に一度発生する程度の間隔ですが、壁判定のあるオブジェクトの上にキャラクターがジャンプでギリギリ落ちるか落ちないかの端っこの位置に着地した時に、落下はしていない(オブジェクトの上にキャラクターは乗ったままの)状態にもかかわらず。落下モーション(下方向で壁判定に接していない時のモーション)になってしまうことがあります。
「左右移動の入力を受け付けない」状態の時にこれが発生してしまうと操作不能になり、リセットするしかなくなってしまうため、非常に困っています。対策いただくことは可能でしょうか?
数十回に一度発生する程度の間隔ですが、壁判定のあるオブジェクトの上にキャラクターがジャンプでギリギリ落ちるか落ちないかの端っこの位置に着地した時に、落下はしていない(オブジェクトの上にキャラクターは乗ったままの)状態にもかかわらず。落下モーション(下方向で壁判定に接していない時のモーション)になってしまうことがあります。
「左右移動の入力を受け付けない」状態の時にこれが発生してしまうと操作不能になり、リセットするしかなくなってしまうため、非常に困っています。対策いただくことは可能でしょうか?
再現をしてみますので、以下お教えいただけますか?
キャラクターと対象物のコリジョン形状はそれぞれ四角形、カプセルどの形でしょうか?
取り急ぎ四角形同士の接触では確認できましたがカプセル型等でも発生しているようであれば教えていただけると助かります!
ご連絡ありがとうございます。
私が確認しているのは四角四角の場合のみです。
カプセルの場合は確認しておりません。
間違っているかもしれませんが体感として、高いところからオブジェクトが落下して、落下速度が速い状態で別オブジェクトの端に着地した時に起こりやすい気がします。
スピードが速いとコリジョンとコリジョンとの接触判定がうまくいかないのかと推測していました。
おまたせしました。
こちら調査をしたところ、
Godotの「マージン」機能による影響とのことでした。
このマージンを最小値 (0.001
)に設定して頂くければカドがカドに着地しても壁判定との接触判定が取られるようになるそうです。
ご対応ありがとうございます。
早速marginを設定して、何度かオブジェクトのカドに着地する動作を試してみたところ、以前のような症状は発生しませんでした。これで様子をみたいと思います。
小さいすぎると坂登りの時カクカクになるからご注意を
こちら本日配信の1.0.18でさらなる修正をさせていただきまして、marginを大きく戻しても問題が発生しないようにさせていただきました。