Con tutti i miei programmi SDL/OpenGL, il framerate è bloccato a 60fps, quindi sembra che il vsync sia abilitato, ma non da me, né nel mio codice o nelle mie impostazioni. quindi mi piacerebbe ora se c'è un modo per disabilitarlo, forse in alcune impostazioni macOS profonde?Come disabilitare vsync su macOS
risposta
dopo anni alla ricerca di una soluzione alternativa (e con l'aiuto di Brett Hale) questo è ciò che ha funzionato per me - ho aggiunto quel pezzo di codice all'inizio del mio ciclo di rendering (e non solo in init, come Apple sembra ripristinare le impostazioni swapinterval ogni volta ...) ed è stato finalmente in grado di avere framerate desincronizzare:
#ifdef __APPLE__
GLint sync = 0;
CGLContextObj ctx = CGLGetCurrentContext();
CGLSetParameter(ctx, kCGLCPSwapInterval, &sync);
#endif
non dimenticare di includere <OpenGL/gl.h>
non è la più bella soluzione ma in realtà è l'unica che ho trovato che funziona come un fascino.
Benvenuti in SO. Ho delineato un approccio here per una domanda simile. Dovresti considerare che la maggior parte degli LCD Mac è bloccata a 60 Hz e che l'hardware più recente è limitato a 120 Hz. La disattivazione di vsync potrebbe semplicemente comportare cicli di CPU/GPU sprecati e probabilmente introdurre artefatti da strappare.
Questo mi ha permesso di ottenere circa 700 fotogrammi al secondo sul mio MacBook Pro.
- Download Graphics Tools for Xcode - Late August 2014
- Installare o semplicemente montare Strumenti grafici
- Aprire Quartz Debug
- Vai su Strumenti -> Mostra Fascio Strumenti Sync
- Selezionare Disabilita raggio di sincronizzazione
Non è neanche permanente , perfetto per test/benchmarking.
- 1. Sincronizzazione di più finestre OpenGL su vsync
- 2. Abilitazione VSync in Vulkan
- 3. Come riavviare il server PostgreSQL su MacOS?
- 4. Come installo g ++ su MacOS X?
- 5. Come posso ottenere callback vsync su canvas HTML5?
- 6. Cambia porta Jenkins su MacOS
- 7. glewInit() non riesce su macOS
- 8. GLFW VSync non funziona
- 9. Vsync in Flex/Flash/AS3?
- 10. sed "Etichetta non definita" su MacOS
- 11. Installare Wireshark su MacOS X tramite birra
- 12. errore di comando SED su MacOS X
- 13. Come disabilitare l'output su log4j.rootLogger?
- 14. Come posso cancellare la cache CoreBluetooth su MacOS?
- 15. Come installare Mono su macOS così mono funziona nel terminale?
- 16. Comprendere la necessità dei segnali VSYNC Android
- 17. No vsync senza composizione Aero; impossibile attivare Aero su CreateDesktop() desktop creato
- 18. SwapBuffers non bloccanti() con VSync = on
- 19. MacOS e OpenCV
- 20. Disabilitare l'autosuggestion su WebView?
- 21. Editore CoffeeScript per MacOS
- 22. Come disabilitare l'ordinamento su jQuery.DataTables init?
- 23. Xamarin.Forms - Come disabilitare Tab su TabbedPage?
- 24. Come disabilitare l'evidenziazione su ListView in Xamarin.Forms
- 25. Come disabilitare la tastiera su un UITextView?
- 26. Come disabilitare cliccando su ListView in Android?
- 27. Come disabilitare l'interazione dell'utente su MKMapView?
- 28. Formattazione HTML5 su MacOS X? (preferibilmente con TextMate)
- 29. Errore "opzione non valida" quando si utilizza find su macOS
- 30. Come installare wget in macOS (Capitan/Sierra)?
Sì, ho smesso di guardarmi intorno per trovare una soluzione ... Grazie comunque! – Nox