0

はい、私は小数または小数が以前に尋ねられたことに気づきました。私はそれらの用途を知っており、小数は正確で、小数は正確ではありません。

私が取り組んでいるゲームには、1 秒あたり 36 ピクセルの移動速度を持つプレーヤーがあります。これを 1 秒間に約 10 回更新すると、毎回 3.6 になります。これを正確にしたいのですが、10 進数は 16 バイト (128 ビット) を占めます。これはかなりの量です。精度を維持したい場合は、代わりに整数を使用して数値をスケーリングする必要がありますか? または..フロートの方が適していますか?Float と Int32 はどちらも 4 バイトを使用しますが、整数は数値を失うことはありません。では、Integer の方が適しているのではないでしょうか? それでは、なぜフロートを使用するのでしょうか?

基本的に、速度と精度のためにどちらを使用する必要がありますか? 現在、小数を使用しています。ゲームの詳細に入る前に変更したいと思います。そうしないと、すべての変更を行うのが難しくなります。

4

1 に答える 1

1

16バイトは他のタイプに比べて多いです。時期尚早の最適化ではなく、要件を満たすものを選択してください。

int を使用して x/10 として解釈することも検討してください。そうすれば、不正確さが蓄積されなくなります。ただし、これらの 128 ビットが本当にあなたを悩ませている場合に限ります (そうすべきではありません)。

于 2013-07-09T18:18:51.177 に答える