Hmm, dla mnie to jest oczywiste ale już tłumacze. Będzie długo bo trzeba trochę historii OpenGL i DXa przytoczyć żeby mieć pełen obraz.
(Przy okazji wyleje swój hejt na MS i doedukuje gawiedź.)Dawno temu MS stwierdził że odcina się od OpenGL, na rzecz swojego własnego zamkniętego standardu, czyli Direct3D, który miał stać się częścią DirectX. Sprzeciw środowiska programistów był ogromny, sam Carmak napisał nawet list otwarty który punktował elementarne braki D3D i nakłaniał MS żeby zaniechał support tego ustrojstwa. Jednak MS przewidział co ze swoją mocą i kasą mogą zrobić i dalej tworzyli directa.
DirectX w odróżnieniu do OpenGL to gotowe środowisko w którym można zrobić całą grę, nie trzeba się posiłkować innymi bibliotekami jak w przypadku OGL. Mimo to specyfikacja samego direct3D jest po prostu słabsza, zubożona i mniej zoptymalizowana względem OGL (Jak wszystko czego dokonał MS
).
Powodem dla którego DX odebrał spory kawałek tortu OGL była jego prostota. Oferował masę gotowych rozwiązań typu "push button - recive baccon", był dużo łatwiejszy do ogarnięcia niż OGL dlatego sporo twórców zaczęło się go uczyć na równi z tym drugim.
Gdzieś w okolicach 95-96 MS skumał się z Segą i władowali kupę kasy w Dreamcasta który był w dużej mierze oparty o DXa. Niestety był to standard zupełnie obcy dla japońców (bo tam pc gaming nie istniał, nie było potrzeby się uczyć DXa). Mniej więcej dlatego na Dreama powstało tak mało gier (nie zdarzyli się nauczyć DXa) i kasowo okazał się gwoździem do trumny dla Segi. Gwóźdź ten dobiła PS2 która była mocniejszą maszyną i miała narzędzia bardziej przyjazne dla japońców którzy OpenGL stosowali od 1990 roku.
W okolicach 1998 MS wpompował ogrom kasy w DXa i swoją pierwszą własną konsolę czyli DirectXBox (dokładnie taka geneza nazwy). Narzędzia były super, wszyscy zaczęli robić gry na DXie. Wszyscy poza firmami które miały wyśmienitych koderów którzy wiedzieli że DX jest wąskim gardłem i będzie ograniczał rozwój grafiki (Dodatkowo MS porzucił prace nad
Farenheitem). Jedna z tych firm to idSoftware z Carmakiem na czele.
(
Ten koleś poza tym że jest geniuszem programistycznym jest też świrem. Czysto ideowo wspiera rozwój nowych technologi. Wystarczy przypomnieć ze poza robieniem gier interesuje się astronomią (Grunt, Phobos, Uriel... z Q3A to nazwy księżyców naszego układu) i projektuje lądownik kosmiczny.Warto też dodać że maszyny do analiz medycznych działają zazwyczaj na najnowszych specyfikacjach OpenGL, czyli rozwój grafiki w grach to nie tylko ładniejsze rozwalanie wirtualnych głów ale też lepsze składanie tych w realu. )
Nowy XO to oczywiście poszerzająca się przepaść w różnicach standardów i znowu świetne narzędzia dla twórców którzy chcą gry robić szybko, łatwo, przyjemnie i w dupie mają ogólny rozwój technologii graficznych. I tutaj dochodzimy do sedna problemu.
Obecnie jeśli ktoś chce pracować w branży gier na stanowisku kodera wymagana jest świetna znajomość DXa i dlatego większość koderów przestaje głębiej uczyć się OpenGL (jakieś tam pojęcie mieć zawsze muszą). Gry multiplatformowe robi się najpierw na DXie bo jest łatwiej (i od razu robi się grę na XO i PC) a dopiero potem portuje na OpenGLa żeby odpaliła je PS3.
Oczywiście to nie jest tak że DX ma jakie featuresy których nie ma OGL (bo ten ma ich więcej i lepiej) i dlatego gry są brzydsze. Chodzi o to że te standardy nie są kompatybilne i żeby uzyskać podobny efekt z DXa na OGL trzeba się bardziej napocić (a koderzy uczyli się DXa...) i gmatwać kod żeby jednocześnie był zgodny z głównym silnikiem gry jak i OGL. Przez to wymijanie i gmatwanie kodu gry są mniej stabilne i trzeba robić cięcia żeby nie klatkowały jak stroboskop na technoparty.
Z Rage jest inaczej bo powstawał od początku na OpenGL (jak kazda gra id), wykorzystując jego najlepsze cechy i to na DXa będą portowane gry robione w tym engine. I tak będą wyglądały świetnie dzięki megatexture który sam w sobie nie jest zależny od środowiska 3d ale wszystkie inne efekty będą dużo słabsze niż gdyby gre odpalić na maszynie opartej o OpenGL.
Krótko mówiąc to jest powód dla którego Rage będzie wymiatał grafiką i id po raz kolejny ustanowi standardy branży. Sprzętowa implementacja Megatexture w nowym Xie i PS4? Każdy z nas by się cieszył.
TotalOfftop: Nowa generacja konsol będzie rzeźnią przez te blokowanie się standardów. Bluray w Xie, DX vs OpenGL, pewnie procesory o innych architekturach, CUDA w Xie i OpenCL w PS4, Motion controlery, hiper bogate Niny które może dołączyć do wyścigu. Będzie się kur** działo, oj bedzie!