5

SDL 1.2では、SDL_WM_GrabInputを使用して、(非表示の)マウスを画面の中央に配置していました。これは私に一人称シューティングゲームのための無制限の回転の自由を与えました。SDL2はこの関数を提供しなくなりましたが、SDL_SetWindowGrabを備えています。これは、各ループ(イベント読み取り)の後にマウスを画面の中央に再配置しているようには見えません。マウスがウィンドウの端に当たってxrel値が生成されなくなる前に、プレーヤーを1回半だけ回転させることができます。これはバグですか、それとも私が使用すべき別の機能がありますか?

4

1 に答える 1

4

SDL_SetRelativeMouseMode()試してみてくださいSDL_GetRelativeMouseState()

または、マウスを各フレームの最近に移動しますSDL_WarpMouseInWindow()

于 2012-05-08T13:59:31.287 に答える