glWaitSync и загрузка большого буфера - PullRequest
0 голосов
/ 03 апреля 2019

Следующий сценарий: рабочий поток, который выделяет и загружает буферы GPU, затем вызывает glFenceSync. Поток рендеринга получает дескрипторы буфера и рисует их, используя glWaitSync для синхронизации.

Теперь мой вопрос: если рабочий поток начинает большую загрузку, которая занимает, скажем, 500 мс, а затем вызывает glFenceSync, а поток рендеринга немедленно использует буфер, не будет ли рендеринг по-прежнему задерживаться / заикаться на ~ 500 мс, даже если рендеринг сам поток не потому, что сервер GL должен ждать загрузки, прежде чем он сможет обработать следующий вызов?

Должен ли я использовать только glClientWaitSync для проверки ограждения и не выдавать команду рендеринга для незавершенного буфера, чтобы команды рендеринга, буферы которых уже завершены, могли рендериться немедленно?

...