DXVK - wysokowydajna implementacja Direct3D11 dla Linuksa
Przepis (głównie klikany) na uruchomienie DXVK - implementacji Direct3D11 w API Vulkan na Linuksie. DXVK to całkiem nowy wymiar wydajności i kompatybilności w stosunku do starej implementacji Wine.
k.....2 z- #
- #
- #
- #
- #
- #
- 78
Komentarze (78)
najlepsze
Zastanawiające jest jednak to, że jeden człowiek pisze implementację, która robi taki skok jakościowy, różnica w porównaniu do DX->OpenGL jest ogromna. (nawet już DX10 jest tłumaczony do DXVK a powstaje projekt by tak zrobić z DX9).
Jakość kodu - tu c++ (Wine to C) też b. wysoka.
Do czego zmierzam. Ostatnio dużo ruchów w stronę Linuksa robi Valve, ciekawe
Nie szukam spisku. To tylko luźne rozważania. Zastanów się, implementacja OGL trwała latami i była prowadzona przez znaczną część społeczności i nagle zjawia się doitsujin, który świetnie jest rozeznany w technologiach graficznych i właściwie od marca robi projekt, który jest rewolucyjny. Nie dość, że systematycznie i często udoskonala kod, to jeszcze na bieżąco udziela się w dyskusjach, więc poświęca projektowi mnóstwo czasu.
Taki programista to skarb dla każdej firmy tworzącej
Myślę, że tu kilka czynników się nałożyło:
1. doitsujin jest bardzo utalentowany
2. doitsujin pracuje ciężko (bo w realnym świecie nie ma czegoś takiego jak "work smart not hard")
3. łatwiej napisać implementację w Vulkanie
4. łatwiej napisać implementację w C++ niż w C
5. nie trzeba sobie radzić ze strukturami organizacji (Wine)
---
Czytałem kiedyś opowieść Briana Hooka, pracownika 3dfx i twórcy API glide o tym jak przeszedł do
@marcinwlo: i niestety urżnięcie wydajności. Choć pewnie Windowsowa warstwa abstrakcji też swoje ucina nim wypadnie wynik w postaci rozkazów zrozumiałych dla GPU.
Dla DX9 jest VK9, niestety on wymaga jeszcze nieco pracy.
A, no i użytkownicy AMD, mogą skorzystać z gallium-nine dla DX9, który jest równie dopieszczony jak DXVK.
jeśli o rozrywkę chodzi to fakt, linuksik sto lat za murzynami, ale kto wie, może za jakiś czas porzucę DualBoot na rzecz pingwinka.