Я обнаружил, что SwapBuffers в OpenGL будет занят - подождите, пока графическая карта не будет выполнена с ее рендерингом или если она ждет V-Sync.
Это проблема для меня, потому что я не хочу тратить 100% процессорного ядра, просто ожидая завершения карты. Я не пишу игру, поэтому я не могу использовать циклы процессора для чего-то более продуктивного, я просто хочу привести их к другому процессу в операционной системе.
Я нашел функции обратного вызова, такие как glutTimerFunc и glutIdleFunc, которые могли бы работать для меня, но я не хочу использовать перенасыщение. Тем не менее, избыток должен каким-то образом использовать обычные функции gl для этого, правильно?
Есть ли какая-либо функция, такая как "glReadyToSwap" или аналогичная? В этом случае я мог бы проверить, что каждая миллисекунда или около того, и определить, следует ли мне подождать дольше или сделать обмен. Я мог бы также предположить, что, возможно, пропустите SwapBuffers и напишите мою собственную аналогичную функцию, которая не занята - подождите, если кто-то сможет указать мне в правильном направлении.