We wszystkich moich programach SDL/OpenGL, ilość klatek na sekundę utknęła przy 60 fps, więc wygląda na to, że opcja vsync jest włączona, ale nie przeze mnie, ani w moim kodzie ani moich ustawieniach. więc chciałbym teraz, jeśli istnieje sposób, aby go wyłączyć, może w niektórych głębokich ustawieniach macOS?Jak wyłączyć vsync na macOS
Odpowiedz
Po latach szukają obejścia (iz pomocą Brett Hale) jest to, co pracował dla mnie - Dodałem, że kawałek kodu na początku mojego uczynić pętli (i nie tylko init, jak Apple wydaje się zresetować ustawienia swapinterval za każdym razem ...) i mógł wreszcie mieć anulowanie synchronizacji framerate:
#ifdef __APPLE__
GLint sync = 0;
CGLContextObj ctx = CGLGetCurrentContext();
CGLSetParameter(ctx, kCGLCPSwapInterval, &sync);
#endif
nie zapomnij podać <OpenGL/gl.h>
To nie jest najładniejszy rozwiązanie, ale tak naprawdę to jedyny, który znalazłem działający jak urok.
Witamy w SO. Nakreśliłem podejście here dla podobnego pytania. Należy wziąć pod uwagę, że większość monitorów LCD Mac jest zablokowana na 60 Hz, a nowsze urządzenia są ograniczone do 120 Hz. Wyłączenie funkcji vsync może po prostu spowodować zmarnowanie cykli procesora/procesora graficznego i prawdopodobnie wprowadzenie artefaktów łzawiących.
Pozwoliło mi to obejść ~ 700 klatek na sekundę na moim MacBooku Pro.
- Download Graphics Tools for Xcode - Late August 2014
- Zainstaluj lub po prostu zamontować Narzędzia graficzne
- Otwórz Quartz Debug
- przejdź do Narzędzia -> Pokaż Beam Sync Narzędzia
- wybierz Wyłącz Beam Synchronizacja
To także nie jest trwałe , idealny do testowania/testowania.
Och, mój gad, po całym tym czasie !! Wielkie dzięki! – Nox
Próbowałem tego i nic się nie stało. Co ja robię źle? –
1. Sprawdź, czy testowana aplikacja faktycznie przekracza 60 klatek na sekundę; 2. To rozwiązanie było dla Mavericks 10.9, nieprzetestowane dla Yosemite lub El Capitan. – cevaris
- 1. Jak czekać na VSYNC w aplikacji Xlib?
- 2. Jak zainstalować Lua na MacOS?
- 3. Włączanie VSync w Vulkan
- 4. Vsync w Flex/Flash/AS3?
- 5. Jak zainstalować gettext na MacOS X
- 6. Jak zainstalować g ++ na MacOS X?
- 7. Meshlabserver na MacOS nie działa
- 8. Synchronizacja wielu okien OpenGL z funkcją vsync
- 9. Zainstaluj/Odinstaluj Apache2 na MacOS Sierra 10.12.1
- 10. Jak wyłączyć podświetlenie na obrazie
- 11. Jak wyłączyć zaznaczenie na TextBox
- 12. Jak wyłączyć HTTPS na Heroku
- 13. Interfejs kakao na MacOS X Keychain
- 14. glewInit() kończy się niepowodzeniem na macOS
- 15. ipython na MacOS 10.10 - polecenie nie znaleziono
- 16. Lokalizacja pliku my.cnf na komputerze MacOS
- 17. błąd polecenia SED na MacOS X
- 18. Błąd pakietu na systemie MacOS 10.12 Sierra
- 19. Ustaw PYTHONPATH w Emacs na MacOS?
- 20. Jak ustawić domyślną wersję Pythona 3.5 na MacOS?
- 21. Jak korzystać z Homebrew na wielu użytkownikach MacOS Konfiguracja Sierra
- 22. Jak uzyskać długość String w Swift3 na macOS
- 23. MacOS i OpenCV
- 24. Nie mogę zainstalować OpenCV3 na Anaconda3 python3.6 na macOS
- 25. Jak zainstalować pakiet w aplikacjach macOS
- 26. Jak na stałe wyłączyć debugowanie w demontażu?
- 27. Jak wyłączyć HTTP/2 na IIS 10
- 28. Jak wyłączyć blokadę tabulatora na panelu stosowym
- 29. Jak mogę wyłączyć wiązania na div
- 30. Jak na dobre wyłączyć stan oglądania?
Tak, przestałem się rozglądać, aby znaleźć rozwiązanie ... Dzięki! – Nox