基本的に私は物理学を使ったゲームでドラッグを試しています. 横方向の動きを減らす必要があります (マイナスにするだけでなく、0 に近づけるなど)。
(アイテムが右に動く場合は正の力、左に動く場合は負の力)
今、私はこれをやっています:
if (objects[i]->force.x > 0)
objects[i]->force.x -= drag;
else
objects[i]->force.x += drag;
これは問題なく機能しますが、これを行うためのより洗練された方法が必ずあると感じています。
また、0 を超えないようにする方法を見つけるのも悪くありません。