Ich habe mit SDL 2.0 herumgespielt, aber nach der Suche habe ich nichts online gefunden, um Retina Macs zu unterstützen. Beim Erstellen eines Fensters mit dem folgenden Code.
%Vor%Es erzeugt ein Fenster, das eine tatsächliche Größe von 1000 * 1000 hat. Das ist nicht wirklich ein Problem, weil Apps so funktionieren sollen, dass sie einen Hidpi-Bildschirm verwenden. Beim Laden von Bildern finde ich jedoch keine Möglichkeit, Bilder zu laden, die für Retina-Bildschirme doppelt so groß sind, und meine Bilder sehen immer verschwommen aus.
Aktuelle Versionen von SDL2 unterstützen die Netzhaut.
Um ein Retina-Fenster zu erstellen, übergeben Sie ein Flag SDL_WINDOW_ALLOW_HIGHDPI
in SDL_CreateWindow()
.
Nach einem resize-Ereignis können Sie die tatsächliche Pufferauflösung mit dem API-Aufruf SDL_GL_GetDrawableSize()
überprüfen.
Derzeit unterstützt SDL keine Retina-Displays auf Macs (oder High-DPI-Displays auf Windows-Rechnern).
Es gibt Diskussionen darüber, wie diese Features am besten hinzugefügt werden können, sowie einige Prototyp-Patches für den Bug-Tracker von SDL: Ссылка
Vermutlich werden wir in einer zukünftigen Version von SDL2 die offizielle Retina-Unterstützung sehen. Oder wenn Sie bereit sind, Ihre eigenen SDL-Bibliotheken zu kompilieren, funktionieren diese Patches für mich.
Tags und Links macos retina-display sdl