В последние несколько лет застой в развитии графических API на PC/Mac в общем-то уже стал статусом кво. Наш ROBLOX, скажем, работает на DX9 и в ус не дует (у нас там 15-20% XP все еще, например). Кроме отдельных AAA-игр, которых можно пересчитать по пальцам, у всех остальных все либо также, либо вообще нет десктопа как платформы
(
Read more... )
Reply
Как поднять на Windows совершенно понятно, см. http://public.closedcircles.com/posts/gdc-2014-directx12
Тех command lists может быть много от разных приложений, scheduler вполне может запускать их несколько. Остается менеджмент памяти, для него в WDDM 2.0 вроде сделали виртуальную память для GPU, чтобы не пейджить туда-сюда все вместе и уменьшить оверхед.
Все вполне многозадачно.
Reply
Reply
Резетить стейт не в каждом буфере, а все-таки при переключении одного device context на другой. Т.е. в случае, когда одно приложение (или другое очень редко), почти нет оверхеда.
Пайплайн - это интересный вопрос, да. Scheduler всегда может знать, какой пакет следующий и отдать его драйверу. А вот сможет ли он не полностью GPU останавливать, чтобы стейт менять - интересно.
Reply
Reply
(The comment has been removed)
Reply
(The comment has been removed)
Только если монитор всего один, что уже достаточно часто неправда ;)
Reply
Расскажи какой-нибудь пример стейта, который очень сложно переключить?
Reply
Reply
Leave a comment