Direct3D niebawem będzie stałą częścią linuksowego desktopu

W czasie gdy Microsoft wraz z producentami kart graficznychpracują nad nowym Direct3D 12, linuksowa społeczność nie zasypujegruszek w popiele… też pracując nad Direct3D. Co prawda to pracanad implementacją w linuksowych bibliotekach graficznych wersjisprzed dziesięciu lat, ale jeśli się powiedzie, to granie wstarsze windowsowe gry na Linuksie przestanie być jakimkolwiekproblemem.

Austriacki programista Christoph Bumiller, znany z prac nadotwartym sterownikiem nouveau dla kart Nvidii, niebawem już dopnieswego. Zaprezentowany przez niego po raz pierwszy w zeszłym roku kodimplementacji Direct3D 9 dla Mesy ma sporą szansę trafić dooficjalnych wydań tej biblioteki graficznej. Tak przynajmniejtwierdzi Marek Olšák, jeden z współtwórców Gallium3D,biblioteki wykorzystywanej do tworzenia sterowników grafiki 3D,będącej jednym z kluczowych komponentów Mesy. Kod statetrackera Gallium Nine (czylimechanizmu tłumaczącego polecenia stanu i rysowania na ciągobiektów i operacji zrozumiałych dla sprzętu) miał osiągnąćwymaganą jakość i działa bardzo stabilnie. Pojawiły się teżłatki dla środowiska uruchomieniowego Wine, pozwalające mu nabezpośrednie korzystanie z tego interfejsu, z pominięciem etaputranslacji na OpenGL. Za tym wszystkim przyszli użytkownicy – niejest to już tylko akademicki eksperyment.

Obraz

Wyniki są bowiem bardzozachęcające. Jeszcze w styczniu tego roku David Heidelberger z iXitGroup na łamach swojego bloga pisał,że na jego konfiguracji sprzętowej (zintegrowana grafika AMD 6550D)BioShock w rozdzielczości FullHD wyciąga z nowym statetrackerem 35-45 FPS, podczas gdybez niego wydajność spada do 23-35 FPS. Jest to poważna różnica– między grywalnością a klatkowaniem. Dzisiaj efekty są jeszczelepsze – na poniższym wideo możecie zobaczyć, jak wygląda Callof Duty: Modern Warfare 3, uruchomiony na wine z Gallium Nine.

Call of duty 6 Modern Warfare 3 Running on wine and gallium-nine ( native directx9 ) 

Już raz wcześniej próbowano wprowadzić Direct3D do bibliotekigraficznej Mesa, uzasadniając to sporym narzutem przy uruchamianiugier z Windows na Linuksie, wiążącym się z użyciem warstwytranslacyjnej środowiska uruchomieniowego Wine, która odpowiada zatłumaczenie wywołań Direct3D na OpenGL. Natywna implementacjabyłaby znacznie szybsza i przynajmniej w teorii, zapewniałabyznacznie większą kompatybilność z realnie wydanym kodem,nietestowanym przecież pod kątem zgodności z Wine.

Za cel rozpoczętych w 2010 roku prac wzięto wówczas Direct3D10, z elementami wersji 11 – ale po trzech latach wszystkoskończyło się klapą. Stworzony kod był niskiej jakości,praktycznie nikt z niego nie korzystał, a w dodatku sami deweloperzyWine narzekali, że kłóci się on z multiplatformową naturą ichśrodowiska uruchomieniowego. Stworzony bowiem wówczas *statetracker, działał bowiemwyłącznie na Linuksie i tylko w obecności sterowników grafikiGallium3D. Oprócz problemów technicznych, programistów niepokoiłypotencjalne problemy prawne. Prawnicy Microsoftu mogli pojawić sięw każdej chwili, by ocalić API z Redmond przed heretyckąimplementacją za pomocą sądowego nakazu. W 2013 roku kod statetrackera *D3D1X został więc zbiblioteki Mesa ostatecznie usunięty.

Rozwijany dziś z takimentuzjazmem Gallium Nine nie przynosi rozwiązania kwestiimultiplatformowości. Działa wyłącznie na otwartych sterownikachnouveau i radeon, zgodnych z Gallium3D. Nie jest też odporny naewentualny pozew Microsoftu. Społeczności jednak najwyraźniej tonie obchodzi – ludzie wreszcie mają Direct3D dla Linuksa, którepo prostu działa.

Warto tutaj wspomnieć o jeszczejednej kwestii. O ile sterownik radeon osiągnął bardzo wysokąjakość i wydajność (w dużym stopniu dzięki przychylnemupodejściu AMD do programistów Open Source), to w wypadku nouveauwciąż i wydajność i stabilność pozostawiają sporo do życzenia.Jest jednak nadzieja, że w bliskiej przyszłości jakośćlinuksowych otwartych sterowników i bibliotek graficznych znaczniesię polepszy. Red Hat poinformował,że chce zatrudnić na pełen etat deweloperów, których zadaniembędzie praca z różnymi rodzajami sprzętu i upewnianiesię, że działa on świetnie pod kontrolą Linuksa, a takżeulepszanie ogólnego stanu całego stosu graficznego systemu.

Źródło artykułu: www.dobreprogramy.pl
Wybrane dla Ciebie
Windows 11 z nową aktualizacją. Poprawi m.in. Eksplorator plików
Windows 11 z nową aktualizacją. Poprawi m.in. Eksplorator plików
Linux 7.1 RC2 dostępny. Poprawki KVM i narzędzia AI
Linux 7.1 RC2 dostępny. Poprawki KVM i narzędzia AI
Ministerstwo Cyfryzacji: 355 mln zł na chmurę rządową i cyfrową tożsamość
Ministerstwo Cyfryzacji: 355 mln zł na chmurę rządową i cyfrową tożsamość
Microsoft usuwa pasek boczny z Edge'a. Copilot zostaje
Microsoft usuwa pasek boczny z Edge'a. Copilot zostaje
Windows 10 u co czwartego gracza. Nowe dane Steam
Windows 10 u co czwartego gracza. Nowe dane Steam
Wiadomość o nadpłacie za gaz. Podszywają się pod Orlen
Wiadomość o nadpłacie za gaz. Podszywają się pod Orlen
Zapowiedź zmian w mObywatelu. Rewolucja dla kierowców
Zapowiedź zmian w mObywatelu. Rewolucja dla kierowców
Odpalił Dooma w... chatbocie. Ty też możesz
Odpalił Dooma w... chatbocie. Ty też możesz
YouTube włącza PIP dla wszystkich użytkowników
YouTube włącza PIP dla wszystkich użytkowników
Kabel USB-C: co sprawdzić przed zakupem?
Kabel USB-C: co sprawdzić przed zakupem?
Aktualizacja KSeF 2.0. Pozwala zgłaszać fałszywe faktury
Aktualizacja KSeF 2.0. Pozwala zgłaszać fałszywe faktury
Nowość w Uberze. Rośnie konkurencja dla Booking
Nowość w Uberze. Rośnie konkurencja dla Booking
NIE WYCHODŹ JESZCZE! MAMY COŚ SPECJALNIE DLA CIEBIE