Size: a a a

pro.graphon (and gamedev)

2020 November 17

VK

Vitaliy ◀️TriΔng3l▶️... in pro.graphon (and gamedev)
alexcher
стоп, завершение src stages - это завершение стадии во всех вызовах отрисовки? (vkDrawIndexed и подобные)
Во всех, которые были до этого барьера по submission order
источник

a

alexcher in pro.graphon (and gamedev)
Vitaliy ◀️TriΔng3l▶️ Kuzmin
Во всех, которые были до этого барьера по submission order
а как тогда барьер будет отслеживать их, чтобы понять, когда стадия выполнена?
источник

VK

Vitaliy ◀️TriΔng3l▶️... in pro.graphon (and gamedev)
alexcher
а как тогда барьер будет отслеживать их, чтобы понять, когда стадия выполнена?
Есть аппаратная команда "записать в память что-то, когда произошло что-то", когда доработала шейдерная стадия, например
источник

VK

Vitaliy ◀️TriΔng3l▶️... in pro.graphon (and gamedev)
И есть команда "подождать, пока в памяти будет что-то, например, там будет не ноль, или будет единица, перед тем, как начинать что-то"
источник

a

alexcher in pro.graphon (and gamedev)
Vitaliy ◀️TriΔng3l▶️ Kuzmin
Есть аппаратная команда "записать в память что-то, когда произошло что-то", когда доработала шейдерная стадия, например
и происходит это при сбросе кэшей для конкретного ресурса?
источник

a

alexcher in pro.graphon (and gamedev)
Vitaliy ◀️TriΔng3l▶️ Kuzmin
И есть команда "подождать, пока в памяти будет что-то, например, там будет не ноль, или будет единица, перед тем, как начинать что-то"
а если там уже записано нужное значение, команда выполнится сразу же?
источник

a

alexcher in pro.graphon (and gamedev)
alexcher
и происходит это при сбросе кэшей для конкретного ресурса?
а если так, то это позволит узнать, когда один из самбитов/вызовов отрисовки закончил. а как дожидаться всех?
источник

VK

Vitaliy ◀️TriΔng3l▶️... in pro.graphon (and gamedev)
alexcher
а если там уже записано нужное значение, команда выполнится сразу же?
Оно не может быть "уже записано", но ивент сработает сразу, если сейчас ничего не происходит, чего надо дождаться
источник

a

alexcher in pro.graphon (and gamedev)
Vitaliy ◀️TriΔng3l▶️ Kuzmin
Оно не может быть "уже записано", но ивент сработает сразу, если сейчас ничего не происходит, чего надо дождаться
ну, если вдруг то, чего надо ждать произошло еще до вызова ожидания
источник

VK

Vitaliy ◀️TriΔng3l▶️... in pro.graphon (and gamedev)
alexcher
ну, если вдруг то, чего надо ждать произошло еще до вызова ожидания
Ну сразу запишется, и сразу же станет равно нужному значению, и сразу же пойдёт дальше работа
источник

a

alexcher in pro.graphon (and gamedev)
Vitaliy ◀️TriΔng3l▶️ Kuzmin
Ну сразу запишется, и сразу же станет равно нужному значению, и сразу же пойдёт дальше работа
а, ну окей
источник

VK

Vitaliy ◀️TriΔng3l▶️... in pro.graphon (and gamedev)
alexcher
и происходит это при сбросе кэшей для конкретного ресурса?
Тебе такие тонкости не важны, в любом случае
источник

VK

Vitaliy ◀️TriΔng3l▶️... in pro.graphon (and gamedev)
Тебе важно, что если ты поставишь правильный барьер (ну или зависимость в субпассе), у тебя будет корректное поведение без потенциальных гоночек
источник

VK

Vitaliy ◀️TriΔng3l▶️... in pro.graphon (and gamedev)
Не обязательно прямо сброс кэша будет
источник

VK

Vitaliy ◀️TriΔng3l▶️... in pro.graphon (and gamedev)
Просто между src stage/access/layout и dst stage/access/layout доступ будет согласован и синхронизирован
источник

a

alexcher in pro.graphon (and gamedev)
Vitaliy ◀️TriΔng3l▶️ Kuzmin
Просто между src stage/access/layout и dst stage/access/layout доступ будет согласован и синхронизирован
даже в разных рендерпассах и сабмитах?
источник

a

alexcher in pro.graphon (and gamedev)
а для чего тогда семафоры?
источник

a

alexcher in pro.graphon (and gamedev)
синхронизация между разными очередями?
источник

a

alexcher in pro.graphon (and gamedev)
а в рамках одной очереди достаточно барьеров?
источник

VK

Vitaliy ◀️TriΔng3l▶️... in pro.graphon (and gamedev)
alexcher
синхронизация между разными очередями?
Да, или между present и труъ очередью
источник