0

基本的に、それが機能する方法は、フレームを更新して、たとえば24ティックごとに表示し、フレームが更新されるたびに、新しいスプライトの高さと幅を再計算してレンダリングし、重力ロジックなどがうまく機能するようにします。しかし、私が今抱えている問題は言葉だけで説明するのは少し難しいので、私はこの写真を使って私を助けます

絵

つまり、基本的に必要なのは、最初のフレームでスプライトをフリーズし、次にフリーズを解除して2番目のフレームでフリーズした場合、2番目のフレームのスプライト(たとえば、動きやすい)を開始せずに足場に立てるだけです。重力と元に戻すときは、最初のスプライトを足場の下に置かずに通常のように足場に戻します。

私はこれを行うための2つのアイデアを持っていましたが、それが最も効率的な方法かどうかわからないので、あなたの意見を聞きたいと思います。

4

1 に答える 1

0

私の問題を修正しました、それが将来も効果的に機能するかどうかはわかりませんが、それは私にとってかなり良い方法のようです

(オブジェクトFootholdに対してエンティティのcurrentFoothold定義を追加し、エンティティがOnGroundの場合、そのフットホールドオブジェクトを現在立っているフットホールドに自然に設定します。高さを再計算するときに、エンティティがOnGround && foothold!= nullの場合、エンティティのを設定します。マップ内の足場のY座標に対するY座標)

于 2012-09-08T15:06:21.657 に答える