Miesiąc temu w Vulkan 1.3.246 wprowadzono nowe rozszerzenie VK_EXT_shader_object, nad którym pracowali programiści od Activision po Valve. Główny programista Zink, Mike Blumenkrantz z Valve, był przez ostatnie kilka tygodni zajęty przygotowaniem obsługi tego modułu cieniującego do użycia przez ten sterownik OpenGL-on-Vulkan.
VK_EXT_shader_object dodaje nowy typ obiektu modułu cieniującego do reprezentowania pojedynczego skompilowanego etapu modułu cieniującego. Obiekty shaderów Vulkan mają być bardziej elastyczną, ale porównywalnie wydajną alternatywą dla obiektów potokowych.
Na początku tego tygodnia Blumenkrantz otrzymał część pierwszą swojego kodu do wykorzystania obiektów shaderów w cynku. W tym kodzie scalającym zauważył:
“to ponownie implementuje i używa obiektu EXT_shader_object dla oddzielnych shaderów
…ale tylko w Tomb Raider (2013), ponieważ w przeciwnym razie pętle sprzężenia zwrotnego są zepsute
…a także własność nvidia ulegnie awarii podczas próby wykonania tego mają jednak wiele błędów
, więc naprawdę to implementuje coś, czego nikt nie może użyć, ale gdyby użyli tego w referencyjnej implementacji EXT_shader_object, która faktycznie funkcjonowała (tj. Lavapipe), to działałoby dobrze.”
Połączenie z dnia na dzień było drugą częścią EXT-shader_object Zinka implementacja:
“umożliwia to użycie EXT_shader_object dla wszystkich oddzielnych prekompilacji shaderów
idealnie, gdy sterowniki nadrobią zaległości, oznacza to, że powinno być możliwe (wreszcie) granie w Tomb Raider (2013) bez żadnych problemów.”
Więc w końcu trafienie Mesa 23.2-devel dzisiaj również jest ostatnią częścią trzy:
„to jest ostatnia część, umożliwiająca użycie obiektów shaderów do wszystkich prekompilacji, jeśli to możliwe/dostępne
…
to powinno pasować do funkcjonalności GPL, ale powinno również (teoretycznie) mieć znacznie mniejsze obciążenie procesora, więc włączyłem to jako nowe ustawienie domyślne, jeśli jest dostępneobecnie nie zmieniam żadnych wymagań dotyczących włączania obiektów cieniujących, więc prawdopodobnie będzie to możliwe tylko do użytku na komputerach stacjonarnych”
To z kolei powinno zapewnić płynną rozgrywkę w grach OpenGL, takich jak Tomb Raider, działających na Zink.
Jest na mojej liście TODO, aby wkrótce przeprowadzić kilka świeżych testów porównawczych Zink przynajmniej dla sprzętu Intel Arc Graphics i AMD Radeon z ich otwartymi sterownikami dla Linuksa.