私はJavaで2D RPGゲームを作成していますが、どのようにキャラクターの動きをピクセル単位で滑らかにすることができるのか疑問に思っています。Javaで文字の動きを滑らかにするにはどうすればよいですか?
私は20分ごとに実行されるアニメーションスレッドを持っており、すべてを描画します。
私はJavaで2D RPGゲームを作成していますが、どのようにキャラクターの動きをピクセル単位で滑らかにすることができるのか疑問に思っています。Javaで文字の動きを滑らかにするにはどうすればよいですか?
私は20分ごとに実行されるアニメーションスレッドを持っており、すべてを描画します。
動きをx = x + dxで計算すると、xをディスプレイのx軸よりも高い解像度にするのが最も簡単な方法です。
x軸が640ピクセルの場合、xの範囲は0 - > 5120(640 * 8)です。次に、あなたの画面に合うようにちょうど細かくレンダリングするとき(4を加えてビットシフトを行います)。
あなたのキャラクターがフレームごとにサブピクセルの量を移動するようにシミュレートすることができます。その結果、スムーズな動きが得られます。
ありがとう!今すぐテストして、それが動作するかどうかを確認します。 –
これを行うにはどのようなコードを使用していますか? – Adrian
たとえば、OpenGLを使用してfloat座標を使用できます。このようにして、文字のすべてのピクセル(この場合はテクセル)が投影され、補間され、より滑らかに見えるようになりました。 – Rekin
私はちょうど "x = x + dx;"というコードを使用しています。 dxは-1になります。 –