A czemu nie SFML chociażby? Przez długi czas używałem i uważam tą bibliotekę za najlepszą w swoim rodzaju. Szybka, bardzo intuicyjna, a przykładów i opisów jest w internecie mnóstwo.
Biblioteka SFML jest niedorobiona...
Niby taka nowa i nowoczesna, a nie posiada bardzo ważnej funkcji: blokowanie kursora myszy w oknie, tak żeby sobie samemu rysować kursor myszy (lub nie) i pobierać relatywne przemieszczenie. Obejścia wykorzystujące sf::Mouse::setPosition() zabijają wydajność i nie działają tak jak powinny. Dlatego nawet jak chciałbym użyć SFML w swoim nowym projekcie, to tego nie zrobię i wciąż korzystam z SDL+OpenGL ;) Tak wygląda blokowanie kursora w SDL:
void Main::warpMouseOn() // blokowanie kursora myszy w oknie aplikacji
{
SDL_ShowCursor(0);
SDL_WM_GrabInput(SDL_GRAB_ON);
}
[...]
int x,y;
SDL_GetRelativeMouseState(&x,&y); // pobieranie relatywnego przemieszczenia
Są pewne rzeczy, które mi się w SFML podobają (np. ładowanie zasobów z pamięci), ale poprawna obsługa myszy jest ważniejsza ;)