Bariera zasobów (resource barrier)
Instrukcja we współczesnych API graficznych, która ogłasza, że zasób zmienia sposób użycia — bez niej GPU czyta na wpół zapisane tekstury.
GPU przetwarza pracę w głębokim potoku i agresywnie korzysta z pamięci podręcznych. Gdy ta sama tekstura jest najpierw zapisywana jako render target, a chwilę później czytana w shaderze, sterownik musi wiedzieć o zmianie, żeby opróżnić cache i wstawić właściwą zależność między etapami. Takim powiadomieniem jest bariera zasobów: jawne przejście z jednego stanu w drugi, czasem połączone ze zmianą layoutu obrazu.
Starsze API, jak OpenGL i Direct3D 11, robiły to niejawnie, a często zachowawczo. Vulkan i Direct3D 12 przerzuciły odpowiedzialność na programistę w zamian za mniejszy narzut. Źle umieszczone bariery to klasyczne źródło zarówno uszkodzonej grafiki, jak i niepotrzebnych przestojów. Nie mylić z procesorową barierą pamięci — pokrewnym pomysłem na innym poziomie.