Я видел в нескольких местах утверждение, что вызов glClientWaitSync
с GL_SYNC_FLUSH_COMMANDS_BIT
эквивалентен вызову glFlush
после создания забора.Я попробовал это с моим кодом, но, похоже, он не работал должным образом.
Мой код генерирует вектор пар PBO / fence и передает их дальше.Позже, петля ждет заборов и затем использует связанный PBO.В моей системе glClientWaitSync
(забор, 0, 0) работал нормально.На coleague's, и при использовании настройки двойного экрана, он заблокирован навсегда.Проблема была решена путем выполнения glFlush
после создания забора.
Поскольку в некоторых местах я читал, что GL_SYNC_FLUSH_COMMANDS_BIT
потенциально быстрее, я попытался заменить флэш этим.В результате было возвращено поведение блокировки.
В чем может быть причина разницы?Есть идеи, как это определить?Спасибо.