Warsztat.GD

Programowanie => Programowanie grafiki => Wątek zaczęty przez: bies w Marzec 07, 2006, 13:18:02

Tytuł: OpenGL vs DirectX
Wiadomość wysłana przez: bies w Marzec 07, 2006, 13:18:02
Zaczynam dedykowany wątek do świętych wojenek zwolenników bibliotek graficznych. Jeśli ktoś koniecznie chce się wypowiedzieć nt. wyższości jednej nad drugą proszę robić to tutaj. Analogiczne wątki w innych miejscach będą kasowane.
Tytuł: Odp: OpenGL vs DirectX
Wiadomość wysłana przez: Majtek w Marzec 07, 2006, 14:13:33
znowu zacznie się wojna ;) Oba są tak samo dobre więc po co to. w sumie lepszy jest ten krórego więcej znasz bo więcej w nim zrobisz ;D
Tytuł: Odp: OpenGL vs DirectX
Wiadomość wysłana przez: mr666 w Marzec 07, 2006, 15:45:31
znowu zacznie się wojna ;) Oba są tak samo dobre więc po co to. w sumie lepszy jest ten krórego więcej znasz bo więcej w nim zrobisz ;D

Racja, racja, ale OGL jest przenosny, a DX nie (no chyba ze mowimy o XBOXie).


Tytuł: Odp: OpenGL vs DirectX
Wiadomość wysłana przez: shyha w Marzec 07, 2006, 15:47:56
znowu zacznie się wojna ;) Oba są tak samo dobre więc po co to. w sumie lepszy jest ten krórego więcej znasz bo więcej w nim zrobisz ;D

Racja, racja, ale OGL jest przenosny, a DX nie (no chyba ze mowimy o XBOXie).

Skoro jest przenośny na XBOX'a tzn, że jest przenośny czy nie? :P

Więc oba są przenośne :) sam obaliłeś swój argument :D
Tytuł: Odp: OpenGL vs DirectX
Wiadomość wysłana przez: Krzysiek K. w Marzec 07, 2006, 16:15:46
Z mojej perspektywy wygląda to tak:

* OpenGL:
+ przenośność pomiędzy wieloma systemami
+ proste API dobre do nauki podstaw 3D
+ automatyzuje wiele rzeczy
- uczy złych nawyków (glVertex, brrr)
- nie korzysta z zalet obiektów
- cały bałagan z rozszerzeniami, bez których czasem nie da się obejść
- utrudnienia w programowaniu zaawansowanych rzeczy pod różne karty

* Direct3D
+ możliwość przeniesienia na XBox'a
+ łatwość w pisaniu jednocześnie pod wiele typów kart graficznych
+ obiektowe API poprawia czytelność i zrozumiałość kodu
+ prostote i zrozumiałe API, po pokonaniu pierwszych trudności
+ wygodny dostęp do wielu funkcji kart
- mniejsza ilość gotowych przykładów w sieci
- zabawa z odświerzaniem zasobów

Z mojej perspektywy wygląda to tak, że OpenGL jest dobry dla początkujących, średniozaawansowanych i profesjonalistów z dużym budżetem, a Direct3D dla średniozaawansowanych, zaawansowanych i profesjonalistów (wszystkich). Oczywiście nie mówię, że nie można się wyłamać z tych ram, ale, moim zdaniem, wtedy będzie nieco trudniej przebrnąć przez pewne rzeczy. Na moim przykładzie, w tej chwili większość rzeczy piszę pod OpenGL, ale powoli będę przesuwał nacisk na Direct3D, ponieważ w OpenGL zaczyna się robić zbyt duża zabawa z rozszerzeniami, co wymaga czasu i odpowiedniego sprzętu (niestety, na GeForce nie mogę pisać pod niektóre Radeony - Direct3D w większości usuwa ten problem).


Wszystko, co napisałem powyżej, to moje prywatne zdanie i każdy ma prawo się z nim nie zgodzić, ale nie powinien wymagać ode mnie zmiany moich poglądów. :)
Tytuł: Odp: OpenGL vs DirectX
Wiadomość wysłana przez: CzerwonyKapturek w Marzec 07, 2006, 16:38:05
A z mojej perspektywy wygląda to tak:

* OpenGL:
+nie korzysta z zalet obiektów

* Direct3D
- obiektowe API

 ;D :P
To oczywiście jest względne i każdy będzie tu miał inne zdanie

Cytuj
- cały bałagan z rozszerzeniami, bez których czasem nie da się obejść
Co do rozszerzeń to oczywiście masz racje - to problem - ale tylko pod Windows - no i nie zapominajmy komu to zawdzięczamy  ;D

Cytuj
+ możliwość przeniesienia na XBox'a
Zgadzam się - to jedna z największych zalet DX.
Tytuł: Odp: OpenGL vs DirectX
Wiadomość wysłana przez: shyha w Marzec 07, 2006, 16:46:34
Cytuj
- cały bałagan z rozszerzeniami, bez których czasem nie da się obejść
Co do rozszerzeń to oczywiście masz racje - to problem - ale tylko pod Windows - no i nie zapominajmy komu to zawdzięczamy  ;D
Co?
A zawdzięczamy temu, że jest kilku producentów kart graficznych. Ach ta niedobra konkurencja....
Tytuł: Odp: OpenGL vs DirectX
Wiadomość wysłana przez: mr666 w Marzec 07, 2006, 16:51:37
znowu zacznie się wojna ;) Oba są tak samo dobre więc po co to. w sumie lepszy jest ten krórego więcej znasz bo więcej w nim zrobisz ;D

Racja, racja, ale OGL jest przenosny, a DX nie (no chyba ze mowimy o XBOXie).

Skoro jest przenośny na XBOX'a tzn, że jest przenośny czy nie? :P

Więc oba są przenośne :) sam obaliłeś swój argument :D

Ha... tu mnie masz :P
Mialem po prostu na mysli PC-ty czy inne Mac'y

Moze sformuluje inaczej: OGL jest bardziej przenosne ;) lub DX nie jest przenosny na inne PeCetowe OS-y.
Tytuł: Odp: OpenGL vs DirectX
Wiadomość wysłana przez: SauRooN w Marzec 07, 2006, 17:07:21
Nie wiem czy ta dyskusja ma jakikolwiek sens, znajomość API graficznych to jest taka zupełna podstawa programowania grafiki, więc o co ten krzyk? W praktyce i tak trzeba znać i jedno i drugie. W jednej firmie będziesz pisał z wykorzystaniem GL'a, w drugiej z wykorzystaniem D3D, w trzeciej z wykorzystaniem obu, a i tak prawdopodobnie nawet nie zetkniesz się bezpośrednio w kodzie z bezpośrednimi wywołaniami API, chyba że firma będzie tworzyła silnik od zera (co jest raczej mało prawdopodobne), o wiele ważniejsza jest orientacja w tym, jak to dokładnie działa. Podobnie jest z shaderami, w praktyce trzeba umieć sprawnie posługiwać się i Cg i GLSL'em i HLSL'em i w razie potrzeby zrobić coś w asmie, a i tak dobra znajomość tych języków to tylko totalna podstawa. Im lepiej znasz oba API, tym lepiej rozumiesz różnice i podobieństwa między nimi, widzisz analogie i lepiej potrafisz optymalizować kod odpowiedzialny za grafikę.

Pisałem bezosobowo ofkors ;)
Tytuł: Odp: OpenGL vs DirectX
Wiadomość wysłana przez: Krzysiek K. w Marzec 07, 2006, 17:11:02
Cytuj
Co do rozszerzeń to oczywiście masz racje - to problem - ale tylko pod Windows - no i nie zapominajmy komu to zawdzięczamy
Chyba pod Linuksem są mimo wszystko wspierane rozszerzenia takie jak ATI_fragment_shader, NV_register_combiners, czy EXT_framebuffer_object, bez których nie da się obejść, jeżeli chcesz mieć sensowne wyniki na przeciętnych kartach?

Cytuj
+ możliwość przeniesienia na XBox'a

Zgadzam się - to jedna z największych zalet DX.
Może dla mnie nie w tej chwili, ale to jest duża zaleta na przyszłość. Wbrew pozorom, gry na XBox'a to gigantyczny rynek, którego żaden światowy wydawca nie zignoruje. Oczywiście wyczuwam w Twojej wypowiedzi ironię, więc, jeżeli to nie jest oczywiste, zaznaczę, że wady i zalety przez mnie wymienione nie są wymienione w żadnej konkretnej kolejności i listy te są dalekie od kompletności. :)

Cytuj
Moze sformuluje inaczej: OGL jest bardziej przenosne ;) lub DX nie jest przenosny na inne PeCetowe OS-y.
W przypadku gier to, moim zdaniem, nie ma aż tak wielkiego znaczenia. Fajnie mieć możliwość uruchomienia danej gry pod Linuksem, ale jakoś wątpię w istnienie dużej liczby graczy nie mających żadnego dostępu do Windowsa, skoro większość gier jest i tak tylko na tą platformę. :)



SauRooN: Zgadzam się w zupełności, ale myślę, że w tym wątku chodzi bardziej o amatorskie projekty. :)
Tytuł: Odp: OpenGL vs DirectX
Wiadomość wysłana przez: Koshmaar w Marzec 07, 2006, 17:27:49
Myślę że po stronie plusów OpenGLa można by dodać jeszcze to, że jest rozwijany i wspierany przez konsorcjum ARB będące zrzeszeniem wielu dużych, znanych firm, zajmujących na rynku silną pozycję. Dzięki temu nie ryzykujemy że nawet jeśli w pewnej chwili któryś z członków zbankrutuje, to nie zostaniemy na lodzie z naszym OpenGLowym rendererkiem, gdyż inne firmy będą kontynuowały działalność ARB. Natomiast MS jest jeden, i wielu ludzi życzy mu jak najgorzej... więc choć jest to (bardzo) mało prawdopodobne, ale możliwa jest sytuacja gdy nawet ten gigant upadnie.

OTOH, DirectX dużo zyskał właśnie dzięki temu że tylko MS był zaangażowany w jego bepośrednie rozwijanie (ale to ma jeszcze dużo wspólnego z monopolistyczną pozycją tej firmy, oraz ilością $ na koncie). Niestety komunikacja i koordynacja jednego projektu pomiędzy wieloma firmami jest bardziej skomplikowana niż gdy istnieje tylko jeden wytwórca.


Btw, a co sądzicie o tym artykule: http://en.wikipedia.org/wiki/Direct3D_vs._OpenGL ?

EDIT:

Cytuj
Może dla mnie nie w tej chwili, ale to jest duża zaleta na przyszłość. Wbrew pozorom, gry na XBox'a to gigantyczny rynek, którego żaden światowy wydawca nie zignoruje.

PS3 będzie z kolei używała OpenGL ES 2.0... wbrew pozorom, to też jest gigantyczny rynek ;-)
Tytuł: Odp: OpenGL vs DirectX
Wiadomość wysłana przez: really w Marzec 07, 2006, 18:17:36
Ja do tej pory robiłem wszystko tylko w OGL, ale ostatnio coś mnie co raz bardziej zaczyna ciągnąć do D3D. Poniżej taki mały, subiektywny spis wad i zalet obu API:

Opengl:
+ bardzo łatwe do nauczenie
+ przenośność (między systemami)
+ dużo tutoriali  w sieci
- nie napisane obiektowo
- problemy z rozszerzeniami

Co do D3D to nie wiem na razie zbyt wiele, więc napiszę to, co od razu rzuca się w oczy:
+ obiektowość
+ ładnie zapakowane w SDK (instalujemy i niczym się nie przejmujemy :))
- trochę trudniejsze do nauki
- tylko Windows (i XBox)

P.S - powiecie, że się czepiam, ale wątek powinien się nazywać Opengl vs. Direct3D :D   
Tytuł: Odp: OpenGL vs DirectX
Wiadomość wysłana przez: Krzysiek K. w Marzec 07, 2006, 18:35:48
Cytuj
Myślę że po stronie plusów OpenGLa można by dodać jeszcze to, że jest rozwijany i wspierany przez konsorcjum ARB będące zrzeszeniem wielu dużych, znanych firm, zajmujących na rynku silną pozycję.
Za Direct3D stoją głównie Microsoft, ATI i NVidia, a także inni mniejsi producenci kart graficznych i rozwija się to także bardzo dynamicznie (wystarczy spojrzeć na API Direct3D 10, którego opis jest w nowych DirectX 9 SDK). Co do ARB, to ostatnie sprawozdanie z ich spotkania zamieszczone na opengl.org jest datowane na grudzień 2004 - może po prostu przestali umieszczać tam informacje, ale nie wygląda to najlepiej.

Cytuj
Natomiast MS jest jeden, i wielu ludzi życzy mu jak najgorzej... więc choć jest to (bardzo) mało prawdopodobne, ale możliwa jest sytuacja gdy nawet ten gigant upadnie.
Pomyślimy, jak już upadnie. Na razie się na to nie zanosi. :)

Cytuj
PS3 będzie z kolei używała OpenGL ES 2.0... wbrew pozorom, to też jest gigantyczny rynek ;-)
PS3 będzie, XBox już jest. :)

Cytuj
Poniżej taki mały, subiektywny spis wad i zalet obu API:
Mniej-więcej napisałeś to samo, co ja. :)
Tytuł: Odp: OpenGL vs DirectX
Wiadomość wysłana przez: SauRooN w Marzec 07, 2006, 19:22:54
Chyba pod Linuksem są mimo wszystko wspierane rozszerzenia takie jak ATI_fragment_shader, NV_register_combiners, czy EXT_framebuffer_object, bez których nie da się obejść, jeżeli chcesz mieć sensowne wyniki na przeciętnych kartach?
Krzysiek: nie wiem co rozumiesz przez przeciętne karty, ale GL_EXT_framebuffer_object jest dość nowym rozszerzeniem
Tytuł: Odp: OpenGL vs DirectX
Wiadomość wysłana przez: Reg w Marzec 07, 2006, 19:49:47
Najlepszy jest zawsze ten język/biblioteka, który znamy. Dlatego podążając tym tropem twierdzę, że DirectX rulez! :) W OpenGL też pisałem ale niewiele, tylko jedną grę.

Nie zgadzam się natomiast z powszechnie panująca opinią, że OpenGL jest łatwiejszy i dlatego lepszy dla początkujących. Ktoś może woleć taki sposób używania biblioteki jaki prezentuje OGL (strukturalne funkcje, to bindowanie tekstur itp. motywy), a ktoś może woleć API obiektowe takie jakie ma DX (ja takie wole). Myślę, że to kwestia gustu i trudno uznać jedno z nich za trudniejsze.
Tytuł: Odp: OpenGL vs DirectX
Wiadomość wysłana przez: Krzysiek K. w Marzec 07, 2006, 19:56:11
Cytuj
Krzysiek: nie wiem co rozumiesz przez przeciętne karty, ale GL_EXT_framebuffer_object jest dość nowym rozszerzeniem
Przez przeciętne karty rozumiem karty od GeForce 2 i Radeona 8500 w górę, które nie mają ps2.0. EX_framebuffer_object jest dosyć nowym rozszerzeniem, ale, z tego, co wiem, NVidia i ATI wspierają je także w starszych kartach.

Cytuj
Najlepszy jest zawsze ten język/biblioteka, który znamy.
Najlepiej jest znać i czuć się swobodnie w obu API. :)
Tytuł: Odp: OpenGL vs DirectX
Wiadomość wysłana przez: CzerwonyKapturek w Marzec 07, 2006, 20:02:08
Cytuj
- cały bałagan z rozszerzeniami, bez których czasem nie da się obejść
Co do rozszerzeń to oczywiście masz racje - to problem - ale tylko pod Windows - no i nie zapominajmy komu to zawdzięczamy  ;D
Co?
A zawdzięczamy temu, że jest kilku producentów kart graficznych. Ach ta niedobra konkurencja....
Nie, nie - zupełnie nie o to mi chodziło. Aktualna wersja OpenGL to chyba 1.5. Nie wiem dokładnie bo korzystam z OpenGL 1.1 + roszerzenia (które w najnowszej wersji są integralną częścią OpenGL) - Mało tego - każdy kto pisze pod windowsem korzysta z OpengL 1.1 + rozszerzenia - bo nie ma innego wyjścia. A zawdzięczamy to takiej a nie innej polityce Microsoftu (który z wiadomych względów nie lubi OpenGL). Na innych platformach jest OpenGL 1.5 i nie ma problemów z rozszerzeniami (prawie ;D).

Cytuj
Nie wiem czy ta dyskusja ma jakikolwiek sens
Pewnie, że nie ma sensu. ;D Ale fajnie jest się od czasu do czasu pokłócić nie? ;D :P

Cytuj
Cytuj
+ możliwość przeniesienia na XBox'a
Zgadzam się - to jedna z największych zalet DX.
Może dla mnie nie w tej chwili, ale to jest duża zaleta na przyszłość. Wbrew pozorom, gry na XBox'a to gigantyczny rynek, którego żaden światowy wydawca nie zignoruje. Oczywiście wyczuwam w Twojej wypowiedzi ironię, (...)
Nie miało być żadnej ironii - naprawdę tak uważam i jako użytkownikowi OpenGL mi tego najbardziej brakuje - jeżeli kiedyś zacznę się uczyć DX to najprawdopodobniej właścnie z tego powodu. Chciałem też dodać (we wcześniejszym poście), że z kolei PS3 ma być oparte na OpenGL (ale nie zdążylem bo się na autobus śpieszyłem ;D - zresztą i tak się spóźniłem  ;D)

Aha, ktoś jeszcze wspominał o męczarni z jakimiś dziwnymi rozszerzeniami (tymi nie ARB). Rzeczywiście jak ktoś chce mieć program kompatybilny wstecz (np od GF3 po GF7) to będzie musiał sięgać po te przestarzałe rozszerzenia (i przyznaje nierzadko sporo się namęczy bo zupełnie inaczej będzie pisząc pod karty nVidii, a inaczej pod ATI). ARB rozwiązuje ten problem, ale jednocześnie zwiększa wymagnia sprzętowe (ale nie zawsze). Niemniej jednak uważam że problem nie tkwi tu w API, ale raczej w tym że podejmujemy się trudnego zadania, które będzie tym trudniejsze im bardziej będziemy się "cofać w czasie" (im bardziej kompatybilne wstecz mają być nasze aplikacje)

Ja też kiedyś miałem takie podejście, żeby zaimplementować efekt tak żeby działał na każdym sprzęcie, ale gdy zauważyłem jak szybko rozwija siętechnologia (karty graficzne) stwierdziłem, że nie ma sensu bawić się ze starymi kartami, bo zanim skończę to wszystko implementować pojawi sienowa karta umożliwiająca robić nowe efekty i cała praca, albo pójdzie na marne albo będzie trzeba ją wykonać od nowa (wykorzystujac nowe mozliwości nowej karty).

Oczywiście tu DX ma przewagę bo on, ma taką kompatybilnosć wstecz już wbudowaną i odwala sporo roboty za nas.

Kończąc - Nie podejmowałbym się próby określenia które API jest lepsze bo to nie ma sensu - wiele rzeczy jest względnych (np czy API jest wygodne, łatwe w obsłudze, łatwe do nauki, dobre dla poczatkujacych itp - wszystko zależy - "dla kogo") dla odmiany postaram się wiec podać co oba API maja ze sobą wspólnego:
-wydajnosć
-poziom technologiczny (co potrafią)
-dokumentacja (ta oficjalna i wszystko inne w sieci - na temat obu API jest tego sporo)
-oba działąją pod Windowsem  ;D

Te 2 pierwsze są chyba najważniejsze i wydaje mi się że przy nich cała reszta to szczegóły.
Tytuł: Odp: OpenGL vs DirectX
Wiadomość wysłana przez: SauRooN w Marzec 07, 2006, 20:31:17
Przez przeciętne karty rozumiem karty od GeForce 2 i Radeona 8500 w górę, które nie mają ps2.0. EX_framebuffer_object jest dosyć nowym rozszerzeniem, ale, z tego, co wiem, NVidia i ATI wspierają je także w starszych kartach.
GL_EXT_framebuffer_object jest obsługiwany od GeForce'a 6200 i Radeona 9500

// edit: przepraszam, pomyłka. Od GeForce'a 4 Ti 4200
Tytuł: Odp: OpenGL vs DirectX
Wiadomość wysłana przez: matyssek w Marzec 07, 2006, 20:45:12
Ja kodze w DirectX, ale ostatnio zacząłem się uczyć OpenGL'a, zebym mogl je porownac i dokonac wyboru, ale jak na razie moje mozliwosci w oglu nie wyszly poza mozliwosc przesuwania kolorowego trojkacika na ekranie, wiec w tym momencie bardziej jestem za DX :) Szczegolnie podoba mi sie w nim obiektowosc.... mmmm... miodzio :D

pozdrawiam
matyssek

PS.
[..]
W OpenGL też pisałem ale niewiele, tylko jedną grę.
[...]
No właśnie Regedit, jak tam Twoje STA? bo coś ostatnio o tym troche ucichło :P
Tytuł: Odp: OpenGL vs DirectX
Wiadomość wysłana przez: Majtek w Marzec 07, 2006, 21:22:36
Przez przeciętne karty rozumiem karty od GeForce 2 i Radeona 8500 w górę, które nie mają ps2.0. EX_framebuffer_object jest dosyć nowym rozszerzeniem, ale, z tego, co wiem, NVidia i ATI wspierają je także w starszych kartach.
GL_EXT_framebuffer_object jest obsługiwany od GeForce'a 6200 i Radeona 9500
ja mam GeForce 5700 i jest to rozszerzenie

A co wersji OpenGL'a to jest już od jakiegoś czasu 2.0 którą łączy w sobie dużo rozszerzeń jak choćby obsługa shaderów
Tytuł: Odp: OpenGL vs DirectX
Wiadomość wysłana przez: shyha w Marzec 07, 2006, 22:45:08
Cytuj
- cały bałagan z rozszerzeniami, bez których czasem nie da się obejść
Co do rozszerzeń to oczywiście masz racje - to problem - ale tylko pod Windows - no i nie zapominajmy komu to zawdzięczamy  ;D
Co?
A zawdzięczamy temu, że jest kilku producentów kart graficznych. Ach ta niedobra konkurencja....
Nie, nie - zupełnie nie o to mi chodziło. Aktualna wersja OpenGL to chyba 1.5. Nie wiem dokładnie bo korzystam z OpenGL 1.1 + roszerzenia (które w najnowszej wersji są integralną częścią OpenGL) - Mało tego - każdy kto pisze pod windowsem korzysta z OpengL 1.1 + rozszerzenia - bo nie ma innego wyjścia. A zawdzięczamy to takiej a nie innej polityce Microsoftu (który z wiadomych względów nie lubi OpenGL). Na innych platformach jest OpenGL 1.5 i nie ma problemów z rozszerzeniami (prawie ;D).

Dalej nie wiadomo co ma polityka MS'a do tego czy w OGL są rozszerzenia czy ich nie ma. Wersję OGL masz razem z bibliotekami, których używasz i kartą graficzną. A skoro sam mówisze, że w OGL 1.5 prawie nie ma problemu z rozszerzeniami to utwierdzasz mnie w przekonaniu, że poza brakiem sympatii do MS'a to nie masz żadnego argumentu.
Tytuł: Odp: OpenGL vs DirectX
Wiadomość wysłana przez: CzerwonyKapturek w Marzec 07, 2006, 22:48:16
Cytuj
- cały bałagan z rozszerzeniami, bez których czasem nie da się obejść
Co do rozszerzeń to oczywiście masz racje - to problem - ale tylko pod Windows - no i nie zapominajmy komu to zawdzięczamy  ;D
Co?
A zawdzięczamy temu, że jest kilku producentów kart graficznych. Ach ta niedobra konkurencja....
Nie, nie - zupełnie nie o to mi chodziło. Aktualna wersja OpenGL to chyba 1.5. Nie wiem dokładnie bo korzystam z OpenGL 1.1 + roszerzenia (które w najnowszej wersji są integralną częścią OpenGL) - Mało tego - każdy kto pisze pod windowsem korzysta z OpengL 1.1 + rozszerzenia - bo nie ma innego wyjścia. A zawdzięczamy to takiej a nie innej polityce Microsoftu (który z wiadomych względów nie lubi OpenGL). Na innych platformach jest OpenGL 1.5 i nie ma problemów z rozszerzeniami (prawie ;D).

Dalej nie wiadomo co ma polityka MS'a do tego czy w OGL są rozszerzenia czy ich nie ma. Wersję OGL masz razem z bibliotekami, których używasz i kartą graficzną. A skoro sam mówisze, że w OGL 1.5 prawie nie ma problemu z rozszerzeniami to utwierdzasz mnie w przekonaniu, że poza brakiem sympatii do MS'a to nie masz żadnego argumentu.
Ehh.. Nie piszesz w OpenGL prawda?

Chodzi o to, że z funkcjonalności OpenGL 1.5 można oczywiście korzystać programujac pod Windows, ale trzeba to robić poprzez rozszerzenia. Rozszerzenia ARB o których mówie - są integralną częścią OpenGL 1.5 i nie trzeba ich inicjalizować i siez nimi bawić. A Pod Windows mamy tylko OpenGL 1.1 + ręczna inicjalizacja rozszerzeń ARB.
Tytuł: Odp: OpenGL vs DirectX
Wiadomość wysłana przez: Mic w Marzec 07, 2006, 23:38:20
Po za tym zabawe z extensionami mozna ograniczyc stosujac takie biblioteki jak glew. Do zastanowienia jest również przyszłość opengl es oraz linuksa(w tym przypadku sadze ze dosc odlegla - najmniej 4 lata, to w sumie nadaje sie na osobny wątek), ale w sumie i tak warto znać obywa.

Muszę przyznać że różne pomysły micorsoftu na ograniczanie opengl budzą moje zaniepokojenie. Do dzisiaj takie jak OpenGL 1.1 na Windowsach - reszta przez extensiony, a w przyszłości warjacje na Viscie
Tytuł: Odp: OpenGL vs DirectX
Wiadomość wysłana przez: migajek w Marzec 08, 2006, 00:01:22
Muszę przyznać że różne pomysły micorsoftu na ograniczanie opengl budzą moje zaniepokojenie. Do dzisiaj takie jak OpenGL 1.1 na Windowsach - reszta przez extensiony, a w przyszłości warjacje na Viscie
wariacje ;) btw moge wiedziec o jakich wariacjach na Viscie mowisz? :|
Tytuł: Odp: OpenGL vs DirectX
Wiadomość wysłana przez: Nazgob w Marzec 08, 2006, 01:28:08
Muszę przyznać że różne pomysły micorsoftu na ograniczanie opengl budzą moje zaniepokojenie. Do dzisiaj takie jak OpenGL 1.1 na Windowsach - reszta przez extensiony, a w przyszłości warjacje na Viscie
wariacje ;) btw moge wiedziec o jakich wariacjach na Viscie mowisz? :|

OpenGL ma byc emulowany przez DirectX(wiadomo co to oznacza dla predkosci) ze wzgledu na interfejs graficzny Aero. Ale z tego co wiem bedzie to doyczyc uruchamiania openGL w oknie a wiekszosc gier 3D jest na pelen ekran wiec nie bedzie zle :)
Tytuł: Odp: OpenGL vs DirectX
Wiadomość wysłana przez: Krzysiek K. w Marzec 08, 2006, 02:21:13
Cytuj
Mało tego - każdy kto pisze pod windowsem korzysta z OpengL 1.1 + rozszerzenia - bo nie ma innego wyjścia.
Błąd. Pod Windowsem korzystam z OpenGL 1.5, który udostępnia mi AllegroGL (po prostu automatycznie ładuje rozszerzenia przy inicjalizacji i daje funkcjom nazwy zgodne z OpenGL 1.5).

Cytuj
Na innych platformach jest OpenGL 1.5 i nie ma problemów z rozszerzeniami (prawie).
Załadowanie rozszerzenia i dopisanie ARB, EXT, ATI, czy NV w paru miejscach to żaden problem. Głównym problemem jest to, że dzięki braku ustandaryzowanych rozszerzeń trzeba wszystko testować i kodować kilka razy. Pod Direct3D przydatne rzeczy takie jak różne formaty pikseli, rendertargety, czy pixel shadery 1.x są po prostu w API. W OpenGL każdy producent robił je sobie, jak chciał, a ARB i EXT pod tym względem niedużo uporządkował.

Cytuj
Niemniej jednak uważam że problem nie tkwi tu w API, ale raczej w tym że podejmujemy się trudnego zadania, które będzie tym trudniejsze im bardziej będziemy się "cofać w czasie" (im bardziej kompatybilne wstecz mają być nasze aplikacje)
1. Wielu polskich graczy nadal ma GeForce 2, czy jakiegoś wbudowanego Intela.
2. Z kart, które wymieniłem powyżej, da się naprawdę wiele wycisnąć.
3. To, co powstanie na moim silniku najprawdopodobniej nie będzie wyglądać jak Oblivion, więc głupio by było dawać tak wysokie wymagania.
4. Programowanie pod starszy sprzęt nie jest wyjątkowo trudnym zadaniem, a z Direct3D powinno stać się jeszcze łatwiejsze dzięki bardziej zgeneralizowanemu API.

Cytuj
Ja też kiedyś miałem takie podejście, żeby zaimplementować efekt tak żeby działał na każdym sprzęcie, ale gdy zauważyłem jak szybko rozwija siętechnologia (karty graficzne) stwierdziłem, że nie ma sensu bawić się ze starymi kartami, bo zanim skończę to wszystko implementować pojawi sienowa karta umożliwiająca robić nowe efekty i cała praca, albo pójdzie na marne albo będzie trzeba ją wykonać od nowa (wykorzystujac nowe mozliwości nowej karty).
Wystarczy odpowiednio podejść do problemu świateł, cieni, materiałów i sposobów renderowania tego wszystkiego i odpowiednio uchwycić to w projekcie silnika. :)

Cytuj
A co wersji OpenGL'a to jest już od jakiegoś czasu 2.0 którą łączy w sobie dużo rozszerzeń jak choćby obsługa shaderów
Na wersje OpenGL bym wogóle nie patrzył, bo powstają po prostu przez doklejenie któregoś z wcześniejszych rozszerzeń do samego OpenGL. Jak pisałem wyżej, wczytanie paru wskaźników i dopisanie paru ARB czy EXT nie zmienia praktycznie nic w samej wygodzie API.
Tytuł: Odp: OpenGL vs DirectX
Wiadomość wysłana przez: shyha w Marzec 08, 2006, 09:41:28
Cytuj
(...)
Ehh.. Nie piszesz w OpenGL prawda?
Pisałem
Chodzi o to, że z funkcjonalności OpenGL 1.5 można oczywiście korzystać programujac pod Windows, ale trzeba to robić poprzez rozszerzenia. Rozszerzenia ARB o których mówie - są integralną częścią OpenGL 1.5 i nie trzeba ich inicjalizować i siez nimi bawić. A Pod Windows mamy tylko OpenGL 1.1 + ręczna inicjalizacja rozszerzeń ARB.
Właśnie, że nie do końca. Gdybyś miał odpowiednie: nagłówki, liby i dllki to masz OGL1.5, 2.0 i każdą inną wersję bo: możliwości techniczne określane są przez kartę graficzną a to do jakich funkcji masz dostęp z poziomu programu zależy od: sterownika i biblioteki. Sterownik masz, bibliotekę masz zgodną z 1.1. Ot. co. Dalej nie wiem co tu ma coś wspólnego z polityką MS'a.

A tak czy inaczej to i tak musisz sprawdzić, czy karta obsługuje rozszerzenia w wersji 1.5 co się sprowadza do tego co napisał Krzysiek K.
Tytuł: Odp: OpenGL vs DirectX
Wiadomość wysłana przez: CzerwonyKapturek w Marzec 08, 2006, 12:09:32
Błąd. Pod Windowsem korzystam z OpenGL 1.5, który udostępnia mi AllegroGL (po prostu automatycznie ładuje rozszerzenia przy inicjalizacji i daje funkcjom nazwy zgodne z OpenGL 1.5).
Hmm - Ja sobie z kolei korzystam z własnego kodu który robi to samo. Nie o to chodzi, że się nie da korzystać z OpenGL 1.5 pod Windows - chodzi o to że jest to utrudnione (a to czy piszesz kod sam czy korzystasz z innej biblioteki nie ma znaczenia)

Głównym problemem jest to, że dzięki braku ustandaryzowanych rozszerzeń trzeba wszystko testować i kodować kilka razy.
ARB standaryzuje rozszerzenia.

Pod Direct3D przydatne rzeczy takie jak różne formaty pikseli, rendertargety, czy pixel shadery 1.x są po prostu w API. W OpenGL każdy producent robił je sobie, jak chciał, a ARB i EXT pod tym względem niedużo uporządkował.
W OpenGL też są: formaty pikseli, render buffery i fragment programy, a oprócz tego każdy producent zrobił jeszcze swoje (masz poprostu większy wybór ;D ) Taka to już zaleta API tworzonego przez wiele firm, a nie przez jedną - wiele myśli, wiele pomysłów - z czasem jeden wygrywa i staje się częścią przyszłej wersji OpenGL.

Cytuj
Niemniej jednak uważam że problem nie tkwi tu w API, ale raczej w tym że podejmujemy się trudnego zadania, które będzie tym trudniejsze im bardziej będziemy się "cofać w czasie" (im bardziej kompatybilne wstecz mają być nasze aplikacje)
1. Wielu polskich graczy nadal ma GeForce 2, czy jakiegoś wbudowanego Intela.
2. Z kart, które wymieniłem powyżej, da się naprawdę wiele wycisnąć.
3. To, co powstanie na moim silniku najprawdopodobniej nie będzie wyglądać jak Oblivion, więc głupio by było dawać tak wysokie wymagania.
4. Programowanie pod starszy sprzęt nie jest wyjątkowo trudnym zadaniem, a z Direct3D powinno stać się jeszcze łatwiejsze dzięki bardziej zgeneralizowanemu API.
Wyciśnij HDR tone mapping, glow i Deferred Shading.
To miło że kochasz wszystkich rodzimych graczy - i ich stare sprzęty. ;D Ja mam tu inne podejście - mnie fascynują najnowsze i najbardziej zaawansowane technologicznie możliwości kart graficznych - dzięki którym jakość grafiki w grach powoli zbiża się do jakości filmowej. Dla mnie zabawa z programowaniem GF2 czy VooDoo to żadna zabawa - bo od pojawienia się tych kart na rynku mineła epoka (albo i dwie). Tak też chyba myśli ARB standaryzując tylko przyszłościowe rozszerzenie (i olewajac te przestarzałe).
Ja nie mam zamiaru ograniczać się tylko do polskiego rynku (wogóle nie planuje przyszłości w tym kraju).

Dalej nie wiem co tu ma coś wspólnego z polityką MS'a.
Widać ślepo kochasz Billa G.

A tak czy inaczej to i tak musisz sprawdzić, czy karta obsługuje rozszerzenia w wersji 1.5 co się sprowadza do tego co napisał Krzysiek K.
Nie tylko sprawdzić, ale także zainicjalizować - i nie trzeba by było tego robić dla ARB.

Pozatym wszyscy chyba nie dostrzegacie jednej rzeczy - MS nie robi DX bo nas wszystkich kocha i chce by panował pokój na świecie. To oczywiste, że gdy znaczenie OpenGL'a spadnie (albo gdy wogóle ludzie przestaną w nim programować :D ) to DX będzie poprostu płatny. MS włożył w to kupe pieniędzy, ale jak mu się uda zmonopolizować także rynek gier komputerowych - to pieniądza które zarobili na Windows bedą przy tym marnymi groszami. (Od razu zaznaczam, że nie mam nic przeciwko temu żeby ktoś za cieżką robotę zarabiał ciężką kasę i nie jestem jakiś anty-MS - nie wybieram także OpenGL z powodów ideologicznych - napisałem to poprostu żeby wam dać do myślenia)
Tytuł: Odp: OpenGL vs DirectX
Wiadomość wysłana przez: shyha w Marzec 08, 2006, 12:13:18
Dalej nie wiem co tu ma coś wspólnego z polityką MS'a.
Widać ślepo kochasz Billa G.
LOL. Nie ma jak mocny argument.

Napiszesz w końcu w jaki sposób polityka MS'a ma wpływ na to, że musisz w OGL używać rozszerzeń?
Tytuł: Odp: OpenGL vs DirectX
Wiadomość wysłana przez: CzerwonyKapturek w Marzec 08, 2006, 13:51:58
LOL. Nie ma jak mocny argument.

Napiszesz w końcu w jaki sposób polityka MS'a ma wpływ na to, że musisz w OGL używać rozszerzeń?

Argument? A jakim argumentem jest to że DX jest obiektowy, a OGL nie, albo to że jeden jest wydodniejszy, łatwiejszy itp - połowa argumentów w tym temacie to rzeczy względne i subiektywne, a ty jakoś czepiasz się akurat oczywistego faktu, że MS ogranicza na wszystkie dostępne sobie spsoby rozwój OpenGL na Windows.

Jak to robią? - Nie wiem - Jak bym znał metody działania MS to bym tu z wami nie dyskutował, ale podbijał międzynarodowy rynek systemów operacyjnych. MS tworzy Windows i jest (był?) w ARB (no i do tego ma jeszcze kupe kasy)- wiec chyba oczywiste że ma ogromny wpływ na rozwój OpenGL (zwłaszcza pod Win). Na wszystkich platformach jest OpenGL 1.5, a na Win 1.1 + exty - dlaczego? Chciałbym wierzyć, że to tylko taki przypadek i pan Bill G. nie ma z tym nic wspólnego, ale nie jestem aż tak naiwny (plany emulacji OpenGL pod DX to pewnie też tylko taki gest przyjaźni dla piszących pod OpenGL :P). Pozatym to nie ja wymyśliłem to że MS "zwalcza" OpenGL - to nie moja teza - więc nie pytaj mnie dlaczego miliomy ludzi na różnych forach w necie tak uważa.
Tytuł: Odp: OpenGL vs DirectX
Wiadomość wysłana przez: shyha w Marzec 08, 2006, 14:02:08
LOL. Nie ma jak mocny argument.

Napiszesz w końcu w jaki sposób polityka MS'a ma wpływ na to, że musisz w OGL używać rozszerzeń?

Argument? A jakim argumentem jest to że DX jest obiektowy, a OGL nie, albo to że jeden jest wydodniejszy, łatwiejszy itp - połowa argumentów w tym temacie to rzeczy względne i subiektywne, a ty jakoś czepiasz się akurat oczywistego faktu, że MS ogranicza na wszystkie dostępne sobie spsoby rozwój OpenGL na Windows.
LOL. Jak grochem o ścianę. Dobra, nieważne.
Tytuł: Odp: OpenGL vs DirectX
Wiadomość wysłana przez: Krzysiek K. w Marzec 08, 2006, 14:29:39
Cytuj
Nie o to chodzi, że się nie da korzystać z OpenGL 1.5 pod Windows - chodzi o to że jest to utrudnione
Takie utrudnienie to żadne utrudnienie. Pisząc o problemach z rozszerzeniami miałem na myśli kłopoty z przenośnością rozszerzeń ATI, NV, EXT i innych, oraz często pokręcone API tych rozszerzeń. Proponuję poczytać specyfikację NV_register_combiners - ja już wolę napisać odpowiedni pixel shader 1.1. :)

Cytuj
ARB standaryzuje rozszerzenia.
Nie kojarzę, żeby cokolwiek przydatnego ostatnio z ARB wyszło, a co do dotychczasowych rozszerzeń, to są tu ogromne braki, więc tak, czy inaczej jest się skazanym na ATI, NV i EXT.

Cytuj
W OpenGL też są: formaty pikseli, render buffery i fragment programy, a oprócz tego każdy producent zrobił jeszcze swoje (masz poprostu większy wybór ) Taka to już zaleta API tworzonego przez wiele firm, a nie przez jedną - wiele myśli, wiele pomysłów - z czasem jeden wygrywa i staje się częścią przyszłej wersji OpenGL.
Dla mnie to, że producenci nie mogą się dogadać ze sobą, jest raczej wadą, niż zaletą. Podobno OpenGL miał być przenośny, a tu nie da się nawet napisać pixel shadera 1.1 żeby to wszędzie poszło. :P

Cytuj
Wyciśnij HDR tone mapping, glow i Deferred Shading.
W 640x480 z normalmappingiem, twardymi cieniami, HDR (poświęcając parę bitów precyzji koloru) i glowem wycisnąłem z GeForce 2 30-40 FPS, a z Intela 855 20-30 FPS, więc się da. :)

Cytuj
Ja mam tu inne podejście - mnie fascynują najnowsze i najbardziej zaawansowane technologicznie możliwości kart graficznych - dzięki którym jakość grafiki w grach powoli zbiża się do jakości filmowej.
Kto powiedział, że ja nie mam takiego podejścia? Jak masz odpowiednią kartę, możesz włączyć sobie parallax mapping, a jak nie, to nadal cieszyć się normalmapami, które też miło wyglądają. W przyszłości planuję jeszcze inne bajery (np. możliwość włączenia miękkich cieni), ale najprawdopodobniej dopiero, jak się przeniosę z silnikiem pod Direct3D, bo pod OpenGL już po prostu wymiękam. :)

Cytuj
To oczywiste, że gdy znaczenie OpenGL'a spadnie (albo gdy wogóle ludzie przestaną w nim programować ) to DX będzie poprostu płatny.
Skąd wyciągasz takie wnioski? OpenGL tak, czy inaczej się jakoś utrzyma, więc wprowadzenie płatności za DirectX'a było by marketingowym samobójstwem Microsoftu - im będzie zawsze zależało na jak największej ilości programów pod DirectX (nawet tych amatorskich), bo to zapewnia popularność Windows'a. W momencie wprowadzenia takiej odpłatności wszyscy by zaczęli masowo przerzucać się spowrotem na OpenGL i prawdopodobnie przy okazji na Linuksy, a takiego błędu MS na pewno nie popełni.

Tytuł: Odp: OpenGL vs DirectX
Wiadomość wysłana przez: shyha w Marzec 08, 2006, 14:35:39
już pomijając wogóle fakt, że OGL jest standardem przemysłowym a co raczej nie grozi DX'owi
Tytuł: Odp: OpenGL vs DirectX
Wiadomość wysłana przez: CzerwonyKapturek w Marzec 08, 2006, 19:38:00
LOL. Jak grochem o ścianę. Dobra, nieważne.
Drugi akapit był ważniejszy - czytaj do końca.

Takie utrudnienie to żadne utrudnienie. Pisząc o problemach z rozszerzeniami miałem na myśli kłopoty z przenośnością rozszerzeń ATI, NV, EXT i innych, oraz często pokręcone API tych rozszerzeń.
Bo ATI i NV nie są przenośne.

Proponuję poczytać specyfikację NV_register_combiners - ja już wolę napisać odpowiedni pixel shader 1.1. :)
Czytałem i używałem. Ale odkąd pojawił się vp i fp już do register_combiners nie wrócę.

(...) a co do dotychczasowych rozszerzeń, to są tu ogromne braki, więc tak, czy inaczej jest się skazanym na ATI, NV i EXT.
Twój wybór, twoja opinia - pamietaj że jest ona subiektywna. Ja np nigdy na API OpenGL'a nie narzekałem - poprostu je lubie takie jakie jest. Różni ludzie - różne opinie zawsze tak bedzie. Gdyby API OpenGL'a było obiektywnie złe nikt by w nim nie programował.

Cytuj
To oczywiste, że gdy znaczenie OpenGL'a spadnie (albo gdy wogóle ludzie przestaną w nim programować ) to DX będzie poprostu płatny.
Skąd wyciągasz takie wnioski? OpenGL tak, czy inaczej się jakoś utrzyma, więc wprowadzenie płatności za DirectX'a było by marketingowym samobójstwem Microsoftu - im będzie zawsze zależało na jak największej ilości programów pod DirectX (nawet tych amatorskich), bo to zapewnia popularność Windows'a. W momencie wprowadzenia takiej odpłatności wszyscy by zaczęli masowo przerzucać się spowrotem na OpenGL i prawdopodobnie przy okazji na Linuksy, a takiego błędu MS na pewno nie popełni.
Oczywiście że OpenGL się utrzyma - nie ma dla niego konkurencji - jest jedymy miedzyplatformowym standardem renderowania grafiki 3d w czasie rzeczywistym. Na dzisiejsze czasy nie ma dla niego zagrożenia, ale 3dfx (ci od VooDoo) to też kiedyś byłą firma na topie, a potem co? Przejęła ja konkurencja - nVidia. Dziś MS to konkurencja dla OpenGL - a z konkurencją w gospodarce rynkowej się walczy (to normalne). Pewnie, że w najbliższym czasie MS nie "przejmie" OpenGL - chodzi mi o to że pewne ich poczynania wskazuja na to, że MS do tego dąży (i jak mówie - nie ma w tym nic złego, ani dziwnego - bo tak działa gospodarka wolnorynkowa). Jak myślicie kto zyska na monopolu, albo chociaż "naruszeniu równowagi"? Napewno nie programiści.

(Zaznaczam jeszcze raz i wyraźnie powtarzam, że powyższy akapit raczej bardzo czarna wizja przyszłości - nie wierzę że tak się stanie. Chciałem tylko na tym hipotetycznym przykładzie wszystkim uświadomić jaka jest różnica w celach między tym co robi wielka korporacja (i wcale nie chodzi tu tylko o MS), a tym co robi cała społeczność)
Tytuł: Odp: OpenGL vs DirectX
Wiadomość wysłana przez: st3tc w Marzec 08, 2006, 20:29:35
wszystkie FX 5xxx mialy osobne wyspecjalizowane fixed pipeline dla niskich ps-ow i shaderki ps1.x szly inna sciezka niz ps2.0. Dodajmy ze duzo szybsza sciezka - srednio 2-3 razy szybszy szaderek to szaderek 1.x. Byly nawet takie dzinksy, ze rendering wieloprzebiegowy na ps1.1 byl szybszy od jednoprzebiegowego na ps2.0.  Irytuje mnie gadka "przeciez jest ARB_fragment_duperel_costam". Spoko - tylko, ze speed jest dopiero od kart z silnikiem SM3.0 (mowie o nvidii - na ati nie pamietam dokladnie jak jest - ale chyba 9800 emulowal niskie shaderkami 2.0 (chyba !)). Na FX 5xxx uzycie RC i TS jest - jesli jest taka mozliwosc - ZAWSZE lepsze.

Teraz w opengl jest i tak mniejszy burdel niz byl wtedy jak je porzucilem i wyemigrowalem do oazy dx-a ;). To dobrze - sytuacja sie stabilizuje - ale i tak jest chaos z extami ktore wchodza (np fbo) a ktorych odp. d3d istnialy od dawna. itp itd ... ISS dzisiaj slicznie przeleciala (E-50 stopni/A-180 stopni -1.5 mag, APRS/Packet radio  :))

//edit Sauron ogladales ? ;) - jutro mam rodzynka - rozblysk iridium : ok -8.0 mag ! ;). Jep - orbitron - do tego konto w space-tracku - moge monitorowac blisko 9 tysiecy obiektow na orbicie :D

// updated 2006.03.09 - z najnowszych danych keplerianskich z space-tracka: rozblysk bedzie mial sile -8.1 magnitudo - ok 434 razy silniejszy blask niz wczorajszy przelot ISS po 19-stej ! :D aaaaaaaaa :D :D
Tytuł: Odp: OpenGL vs DirectX
Wiadomość wysłana przez: SauRooN w Marzec 08, 2006, 20:43:11
ISS dzisiaj slicznie przeleciala (E-50 stopni/A-180 stopni -1.5 mag :))
Nom... Orbitron? :D
Tytuł: Odp: OpenGL vs DirectX
Wiadomość wysłana przez: Krzysiek K. w Marzec 09, 2006, 01:00:16
Cytuj
Bo ATI i NV nie są przenośne.
Niestety, jedyną alternatywą dla tych rozszerzeń jest Direct3D, albo znaczne podniesienie wymagań sprzętowych, żeby załapać się na jakiegoś ARB'a (co jest kiepskim rozwiązaniem).

Cytuj
Czytałem i używałem. Ale odkąd pojawił się vp i fp już do register_combiners nie wrócę.
Jak już pisałem, głupio jest ustawiać wymagania sprzętowe na poziomie Obliviona, skoro Twoja gra tak dobrze najprawdopodobniej wyglądać nie będzie. ARB_vertex_program jest naprawdę niezły, bo wspiera go praktycznie wszystko (nawet wbudowane Intele emulują to softwareowo), ale dużo gorzej jest z ARB_fragment_program. Nie wiem, czy zagłębiałeś się w specyfikację ARBfp, ale powinieneś wiedzieć, że jeżeli driver stwierdza, że wspiera ARBfp, to mimo wszystko może odrzucać poprawnie napisane shadery, jeżeli nie jest w stanie ich uruchomić. Większość Radeonów wspiera pixel shader 2.0, podczas gdy ARBfp odpowiada nieco wyższym pixel shaderom (ps_2_a, albo ps_2_x), więc nawet jeżeli shader ARBfp uruchomi się na karcie NVidii, to na Radeonach już nie musi. W efekcie, pomimo sporych wymagań, nawet ARBfp nie zapewnia bezproblemowej przenośności.

Cytuj
Twój wybór, twoja opinia - pamietaj że jest ona subiektywna. Ja np nigdy na API OpenGL'a nie narzekałem - poprostu je lubie takie jakie jest. Różni ludzie - różne opinie zawsze tak bedzie. Gdyby API OpenGL'a było obiektywnie złe nikt by w nim nie programował.
Opinia obiektywna, czy subiektywna, pewne braki w API i rozszerzeniach OpenGL są zauważalne. Ci, którzy nie narzekają po prostu nie korzystają z pewnej funkcjonalności (np. olewają rozszerzenia ATI i NV, sztucznie podnosząc wymagania, by trafić w jakiegoś ARB'a), albo jakoś z tym żyją (np. Carmack w Doomi'e 3 zaprogramował kilkanaście ścieżek renderujących dla różnych GPU używając różnych rozszerzeń i nie narzekał, bo miał na to czas i środki).

Cytuj
Jak myślicie kto zyska na monopolu, albo chociaż "naruszeniu równowagi"? Napewno nie programiści.
Na polu systemów operacyjnych nie ma równowagi, wszystcy praktycznie jadą na Windowsach i jakoś nikt na to nie narzeka (poza zdegustowanymi Linuksowcami). Nie widzę więc, dlaczego programiści by mieli na tym stracić, zwłaszcza, że już w tej chwili nie ma równowagi (większość silników gier opiera się na Direct3D, a większość oprogramowania użytkowego na OpenGL).

Cytuj
(mowie o nvidii - na ati nie pamietam dokladnie jak jest - ale chyba 9800 emulowal niskie shaderkami 2.0 (chyba !))
Gdzieś czytałem, że Radeony z ps2.0 robiły dokładnie wszystko na 24-bitowych floatach, podczas gdy NVidia bawiła się w różne precyzje (fixed point 12-bitów i 16-32-bitowe floaty).

Cytuj
Teraz w opengl jest i tak mniejszy burdel niz byl wtedy jak je porzucilem i wyemigrowalem do oazy dx-a
Widzę, że w swoim rozumowaniu nie jestem sam. Myślę, że już sama nasza emigracja z OpenGL o czymś świadczy.
Tytuł: Odp: OpenGL vs DirectX
Wiadomość wysłana przez: Maedhros w Marzec 09, 2006, 01:40:45
Myślę że po stronie plusów OpenGLa można by dodać jeszcze to, że jest rozwijany i wspierany przez konsorcjum ARB będące zrzeszeniem wielu dużych, znanych firm, zajmujących na rynku silną pozycję. Dzięki temu nie ryzykujemy że nawet jeśli w pewnej chwili któryś z członków zbankrutuje, to nie zostaniemy na lodzie z naszym OpenGLowym rendererkiem, gdyż inne firmy będą kontynuowały działalność ARB. Natomiast MS jest jeden, i wielu ludzi życzy mu jak najgorzej... więc choć jest to (bardzo) mało prawdopodobne, ale możliwa jest sytuacja gdy nawet ten gigant upadnie.

Zgadza się , ale nie do końca. Jak narazie nie zapowiada się na to żeby Microsoft poszedł do piachu ,a nawet jęsli by się tak stało to napewno znajdzie sie ktos kto pociagnie dx-a dalej ,tak jak sie np. stalo z borlandem.  Martwiłbym się raczej o to czy w pewnym momencie sie nie okaze że direct 3d im sie znudził i zamienia na coś lepszego albo poprostu przestanie byc rozwijany, tymbardziej ze juz 2 komponenty dx-a tak skonczyły.
Tytuł: Odp: OpenGL vs DirectX
Wiadomość wysłana przez: Krzysiek K. w Marzec 09, 2006, 01:48:15
Cytuj
Martwiłbym się raczej o to czy w pewnym momencie sie nie okaze że direct 3d im sie znudził i zamienia na coś lepszego albo poprostu przestanie byc rozwijany, tymbardziej ze juz 2 komponenty dx-a tak skonczyły.
DirectDraw był przeznaczony wyłącznie do grafiki 2D i bardzo słabo wykorzystywał akcelerację, wobec czego gry 2D były robione w OpenGL i Direct3D i w efekcie DirectDraw umarł śmiercią naturalną, a zastąpił go całkowicie Direct3D. DirectPlay był zbugowany i mało kto z niego korzystał, a większość developerów i tak pisała obsługę sieci samemu w oparciu na WinSock, więc zakończenie wsparcia dla DirectPlay było równie naturalne. Co do Direct3D, to można mieć pewność, że dopóki Windows będzie rozwijany, to nawet jeżeli Direct3D zostanie zarzucony, to coś go zastąpi.
Tytuł: Odp: OpenGL vs DirectX
Wiadomość wysłana przez: Gloggie w Marzec 09, 2006, 02:04:22
Cytuj
DirectPlay był zbugowany i mało kto z niego korzystał
Ja z niego korzystałem (bo obok był DirectVoice) i rzeczywiście były problemy ;)
Dodatkowo można powiedzieć o
DirectMusic - przeminęło tak jak popularność midów, reszta jest w DSound.
DirectShow - od dawna nie widziałem gry która miała by intro w czymś innym niż bink. Coraz częściej zamiast mp3 używa się ogg'ów i innych formatów, więc DS też byłoby tu bezużyteczne.
Tytuł: Odp: OpenGL vs DirectX
Wiadomość wysłana przez: shyha w Marzec 09, 2006, 09:41:15
(...)
Nie ważne, już nie chce mi się tobie tłumaczyć mojego pytania następny raz...
Tytuł: Odp: OpenGL vs DirectX
Wiadomość wysłana przez: SirMike w Marzec 09, 2006, 14:03:29
To może ja też coś napiszę.
Bardzo długo pracowałem pod DX i przechodząc przez kolejne jego wersje byłem coraz badziej mile zaskoczony:
+ biblioteka D3DX (w tym bardzo wydajny rendering tekstu)
+ działa praktycznie na każdym sprzęcie
+ HLSL
na dłuższa metę jednak bardzo przeszkadzały mi 2 rzeczy:
- model COM
- odświeżanie zasobów

przesiadłem się na OGL i po kilkunastu miesiącach podoba mi się dużo bardziej sam model programowania:
+ nie ma zbędnej obiektowośći
+ bardzo szybko można zrobić proste rzeczy
+ mogę go używac pod linuksem
oczywiście sa tez minusy
- rozszerzenia
- lekki bałagan jeśli chodzi o shadery

Podsumowując, same etapy renderingu w obu API są takie same. To, że jeden jest bardziej obiektowy a drugi strukturalny nie robi absolutnie żadnej różnicy. Mi osobiście bardziej podpasował OGL ale to tylko moja opinia. Rendering tekstu dla sprawnego kodera nie jest tu absolutnie żadnym problemem. Podobnie z rozszerzeniami.

Najfajniejsze jest to, że i tu i tu mogę używać Cg :) To rozwiązuje większość moich problemów.
Starymi kartami pokroju GF2 nie interesuje sie w ogóle, prawde mówiąc to współczesne gry i tak nie ruszają na niczym co nie ma Pixel Shadera. Dlatego ja też nie będę sobie zawracał głowy. Jeśli robię coś co wygląda jak Oblivion to wiadomo, że nie ruszy na starej karcie. Jeśli robię cos co ma ruszyć na starociu to wystarcza mi podstawowe funkcje API aby osiągnąc cel. Stan pośredni, czyli robienie "ładnych" efektów na stare karty jest raczej bez sensu z prostego powodu - żeby to osiągnąć trzeba mieć dużo czasu a co za tym idzie większy budżet.
Tytuł: Odp: OpenGL vs DirectX
Wiadomość wysłana przez: Koshmaar w Marzec 14, 2006, 14:03:10
Nie wiedziałem za bardzo gdzie to wrzucić, a nie chciałem zakładać nowego tematu, pomyślałem więc że napiszę tutaj (w końcu brak dobrego supportu OGLa pod Vistą był pewnym argumentem dla zwolenników DXa):

http://blogs.msdn.com/kamvedbrat/archive/2006/02/22/537624.aspx

W środku znajdziedziecie informacje nt. OpenGL pod Vistą. Najważniejszy jest punkt trzeci, z którego wynika tyle, że OGL w oknie i Aeroglass będą mogły działać razem, tak więc wygląda na to że odpada największe zagrożenie dla popularności tego API... a przynajmniej tak twierdzi Phantom: http://www.gamedev.net/community/forums/topic.asp?topic_id=380046 :-)
Tytuł: Odp: OpenGL vs DirectX
Wiadomość wysłana przez: beginner w Marzec 14, 2006, 15:34:20
Poczatki - OpenGL
Mozliwosci - DirectX

Tyle
Pozdro
Tytuł: Odp: OpenGL vs DirectX
Wiadomość wysłana przez: SirMike w Marzec 14, 2006, 15:42:27
Poczatki - OpenGL
Mozliwosci - DirectX

Argumenty poprosimy.
Tytuł: Odp: OpenGL vs DirectX
Wiadomość wysłana przez: revo w Marzec 14, 2006, 16:15:49
Poczatki - OpenGL
Mozliwosci - DirectX

Argumenty poprosimy.

Z tematu 'powitalnego':

Cytuj
Jestem Arek, ucze sie programowac :P, niedlugo 15 mi stuknie :(

Kompletnie nie rozumiem, dlaczego bahory (juz nie wiem jak czesc osob okreslac...) wypowiadaja sie w tematach o ktorych na 99,99% nie maja wiedzy - to nie jest jedyny przyklad, jest kilka takich osob i to jest zalosne... Samo udzielanie sie w dyskusjach, byleby po prostu cos napisac jest bez sensu (btw. niech ktos wypieprzy licznik postow jak na starym warsztacie)

Co do dyskusji. Programowalem w obu API, jednak preferuje Direct3D - pewnie dlatego, ze mam od razu kompletna dokumentacje i mase przykladow. OpenGL wspominam dobrze, czasami zdarza mi sie cos jeszcze w tym napisac - jedyna rzecz ktora mi sie nie podobala, to fakt, ze pod Windows OpenGL musi dzialac w tym samym watku co okno ktorego sie tyczy, co nie za bardzo jest mi na reke (wole sobie odpalic drugi watek i wogole nie przejmowac sie oknem).
Tytuł: Odp: OpenGL vs DirectX
Wiadomość wysłana przez: maxest w Marzec 15, 2006, 01:53:40
Cytuj
Kompletnie nie rozumiem, dlaczego bahory (juz nie wiem jak czesc osob okreslac...) wypowiadaja sie w tematach o ktorych na 99,99% nie maja wiedzy - to nie jest jedyny przyklad, jest kilka takich osob i to jest zalosne... Samo udzielanie sie w dyskusjach, byleby po prostu cos napisac jest bez sensu (btw. niech ktos wypieprzy licznik postow jak na starym warsztacie)

ahm, dokladnie tak. przeleciala mi w glowie dokladnie taka sama mysl ;)

szczerze mowiac sam kiedys bym tak napisal. z poczatku kodzilem w opengl i mi sie bardzo podobal; glownie dlatego ze byl latwy. potem zaczalem kodzic w direct3d i juz mowilem ze jest duzo fajniejszy niz ogl, bardziej poukladany, lepszy dla juz-nie-poczatkujacych.
na szczescie uswiadomilem sobie ze to gowno prawda :D
zarowno ogl jak i d3d to potezne narzedzia. kazde ma swoje zalety i wady do ktorych trzeba po prostu przywyknac i tyle.
osobiscie uwazam ze najlepiej jest znac obydwa. no bo czym sie one roznia? niby maja inna architekture, ale nawet z wielu funkcji korzysta sie podobnie (tyle ze w d3d przez IDirect3DDeviceX :P). najwazniejsze to rozumienie zasad i praw jakie obowiazuja w kodzeniu grafiki 3d, a te sa dokladnie takie same w ogl i d3d i jesli by powstal jakis jeszcze inny API graficzny to z pewnoscia dzialalaby na takich samych zasadach
Tytuł: Odp: OpenGL vs DirectX
Wiadomość wysłana przez: rdo w Marzec 15, 2006, 12:14:34
wybaczcie, ale nie mogłem się powstrzymać.
OpenGL rządzi, bo jego nazwa zaczyna się na O podobnie jak Ogame. Mozna w nim pewno wiec zrobic wszystkie gry na O. A DirectX tez jest fajny bo jest na D, wiec pewno mozna w nim zrobic Duma 3!
P.S.: czy DirectX wymaga X-window.
Tytuł: Odp: OpenGL vs DirectX
Wiadomość wysłana przez: maxest w Marzec 15, 2006, 13:06:30
Doom 3 jest w OpenGL, podobnie z reszta jak Quake 4
Tytuł: Odp: OpenGL vs DirectX
Wiadomość wysłana przez: rdo w Marzec 15, 2006, 15:48:01
jakby ktoś (podobnnie jak Ty) nie zrozumiał: powyższy mój post jest żartem. żartem z całej dyskusji DX vs OGL
Tytuł: Odp: OpenGL vs DirectX
Wiadomość wysłana przez: maxest w Marzec 15, 2006, 16:04:12
a moj post (jakby ktos taki jak ty nie zauwazyl) jest tylko stwierdzeniem faktu
Tytuł: Odp: OpenGL vs DirectX
Wiadomość wysłana przez: rdo w Marzec 15, 2006, 16:08:23
niech Ci będzie. W sumie mógł ktoś wziąć post mój na serio u dostrzec OGL o Ogame :D wyjaśniam więc: Ogame nie jest ani w DX ani w OGL. A istotnie Doom 3, podobnie jak Kłejki 2-4 jest w OGL. P.S. dostajesz karmę.
Tytuł: Odp: OpenGL vs DirectX
Wiadomość wysłana przez: maxest w Marzec 15, 2006, 16:27:43
jak milo :]
q2-4 w ogl, a wie ktos moze w czym byl q1?
Tytuł: Odp: OpenGL vs DirectX
Wiadomość wysłana przez: ktostamktos w Marzec 15, 2006, 16:30:02
pierwszy kwak miał własne "cuś": QuakeGL (or sth like that).
Tytuł: Odp: OpenGL vs DirectX
Wiadomość wysłana przez: Mic w Marzec 15, 2006, 16:41:31
i ja dorzuce cos od siebie
Otóż część ludzi programujących w DX uważa, że jest przenośny "bo jest na xbox" odpierając w ten sposób atak, że DX nie jest przenośny...imho troche naciągane to :P
Owszem fajnie pisać gry na obiecującą konsolę ( bo m$ wkłada w to maaaaaaaasę forsy), ale to i tak platforma microsoftu...
Osobiscie programuję w opengl i raczej nie zapowiada się żeby coś się zmienilo dlatego, bo jest przenośny(szczególnie z połączeniu z takimi bibliotekami jak SDL, GLEW, OpenAL).
Mi praca na linuksie bardzo odpowiada, a poza tym imho to dość rozwijająca sie platforma ;)
Tytuł: Odp: OpenGL vs DirectX
Wiadomość wysłana przez: Vic w Marzec 15, 2006, 16:53:21
jak milo :]
q2-4 w ogl, a wie ktos moze w czym byl q1?
Q1 (pierwszy release, dosowy) jak i WinQuake (port pod Windows) był w niczym - tzn. działał na własnym silniku softwarowym.
Wraz z premierą QuakeWorlda wydano również wersje GLQuakeWorld i GLQuake, które korzystały z (jak nazwa wskazuje zresztą) OpenGLa. Podobnie jak wszystkie powstałem potem porty Quake'a.
Tytuł: Odp: OpenGL vs DirectX
Wiadomość wysłana przez: rdo w Marzec 15, 2006, 17:01:26
Cytuj
Owszem fajnie pisać gry na obiecującą konsolę ( bo m$ wkłada w to maaaaaaaasę forsy), ale to i tak platforma microsoftu...
A to jej zaleta czy wada? moim zdaniem ani jedno ani drugie...
A czy na tym xboksie trzystaileś można korzystać z OpenGL?
Tytuł: Odp: OpenGL vs DirectX
Wiadomość wysłana przez: Krzysiek K. w Marzec 15, 2006, 17:26:28
Cytuj
A czy na tym xboksie trzystaileś można korzystać z OpenGL?
Wątpię. Po prostu drivery OpenGL do XBox'ów nie istnieją z definicji. Oczywiście pewnie da się jakoś zmodować też nowego XBoxa tak, żeby akceptował niepodpisane płyty i uruchomić na nim Linux'a z Mesą, ale chyba nie o taki OpenGL Ci chodziło (zwłaszcza, że Mesa nie jest implementacją OpenGL). :)
Tytuł: Odp: OpenGL vs DirectX
Wiadomość wysłana przez: Vic w Marzec 15, 2006, 18:09:22
Udane crackowanie filesystemu XBoxa 360 już miało miejsce, do uruchamiania zewnętrznych programów pewnie kiedyś dojdzie. :)

Co do Mesy - jeżeli mówimy o oficjalnych implementacjach to Mesa nie jest takową. Ale jest tak tylko z powodu braku licencji OpenGL. Pomijając kwestie formalne - Mesa jest pełnoprawną implementacją programową OpenGL.
Tytuł: Odp: OpenGL vs DirectX
Wiadomość wysłana przez: counterClockWise w Kwiecień 01, 2006, 22:15:59
Ja myślę, że początkowo (1992 - 1999 czyli DX 7.0) zdecydowanie OpenGL. Zwłaszcza że dzieło Silicon Graphics jest 3 lata starsze od dzieła Microsoftu (przypomnę DirectX powstał jako Games SDK 1.06.1995)

Potem od DX 7.0 (1999-2003/2004) zdecydowanie DirectX, a od momentu powstania OpenGL 2.0 to już naprawde nie ma znaczenia.

Kwestia preferencji i "deployment platform", bo wiadomo że na takiego XBoxa to Direct a na Playstation3 OpenGL.

Poza tym OpenGL ma szerokie zastosowanie w CAD/CAM. Oba API warto znać, a używać tego, na które ma się akurat ochotę :) (jeżeli mamy w ogóle taki wybór).
Tytuł: Odp: OpenGL vs DirectX
Wiadomość wysłana przez: maxest w Kwiecień 01, 2006, 22:24:20
calkowicie podzielam twoja opinie ;)
dx 7 to byla masaka (sam Carmack napisal list do microsoft'u zeby przestali rozwijac ten badziew i zajeli sie rozwojem ogl'a :D). od dx 8 direct3d to pelnowartosciowe api ktore wyglada niemal tak samo jak ogl (pod wzgledem funkcji, jakie oferuje).
a jak ktos patrzy na to, ze jedno jest lepsze bo obiektowe a drugie nie to jest po prostu malo elastyczny ;)
Tytuł: Odp: OpenGL vs DirectX
Wiadomość wysłana przez: counterClockWise w Kwiecień 01, 2006, 23:29:54
Tak i nawet zebrał pod nim sporo podpisów, między innymi Tobiasa Boona i gości z Activision.
Miałem nawet gdzieś treść tego listu :)
Tytuł: Odp: OpenGL vs DirectX
Wiadomość wysłana przez: maxest w Kwiecień 02, 2006, 01:41:17
Cytuj
Tak i nawet zebrał pod nim sporo podpisów, między innymi Tobiasa Boona i gości z Activision.
sugerujesz ze Mortal Kombat'y sa pisane w OpenGL? ;)

Cytuj
Miałem nawet gdzieś treść tego listu
gdybys znalazl to najlepiej opublikuj go gdzies. to jest prawdziwy historyczny dokument ;) zrodlo pisane listowe :D
Tytuł: Odp: OpenGL vs DirectX
Wiadomość wysłana przez: przemek16x w Kwiecień 03, 2006, 17:37:04
Obie są takie same. W końcu wszystko zależy od karty graficznej
Tytuł: Odp: OpenGL vs DirectX
Wiadomość wysłana przez: pawelad w Kwiecień 04, 2006, 20:50:58
Ja uzywam dx przede wszystkim na obiektowość( ogla nie znam i nie mam zamiaru poznawać ), ponieważ jestem  leniwy( uzupełnianie kodu ).
Poczytałem sobie ostatnio o siatkach progresywnych , plikach efektów i hlsl i jestem w szoku. Jak są jeszcze równie ciekawe niestandardowe rzeczy w dx to podpowiedzcie. Dajcie mi tą  satysfakcje i napiszcie że w oglu takich rzeczy nie ma.
Tytuł: Odp: OpenGL vs DirectX
Wiadomość wysłana przez: SirMike w Kwiecień 04, 2006, 21:56:04
Ja uzywam dx przede wszystkim na obiektowość( ogla nie znam i nie mam zamiaru poznawać ), ponieważ jestem  leniwy( uzupełnianie kodu ).

A co ma piernik do wiatraka? Przeciez w OGL tez mozna programowac obiektowo.

Cytuj
Poczytałem sobie ostatnio o siatkach progresywnych , plikach efektów i hlsl i jestem w szoku. Jak są jeszcze równie ciekawe niestandardowe rzeczy w dx to podpowiedzcie. Dajcie mi tą  satysfakcje i napiszcie że w oglu takich rzeczy nie ma.

Musze Cie zmartwic :P w OpenGL tez to wszystko mozna miec. Wszystko za sprawa biblioteki Cg.
I prosze mi tu nie wyjezdzac z tekstami, ze bez Cg nie da rady - to mierny argument.
Tytuł: Odp: OpenGL vs DirectX
Wiadomość wysłana przez: maxest w Kwiecień 04, 2006, 23:03:09
pawelad:

"siatki progresywne" - dla duzych projketow pliki X po prostu "nie istnieja". kazdy tworzy wlasny sposob przechowywania modeli, tym bardziej ze coraz wiecej gier ma dwa renderery: ogl i d3d

"pliki efektow" - jakis czas temu ktos na tym forum stwierdzil ze dla duzych projektow pliki efektow rowniez nie sa wystarczajace. poza tym co za problem napisac wlasnego parsera takich plikow efektow?

hlsl - w ogl masz glsl i cg, w d3d jest hlsl i cg. na jedno wszystko wychodzi

jeszcze jedno, skoro tak bardzo nie lubisz ogl'a a wielbisz d3d to wez napisz aplikacje tworzaca powierzchnie nurbs w d3d. ogl ma co do tego pelne wsparcie ktorego brakuje w d3d. a co z grafika interaktwyna i buforem selekcji? rowniez wystepuje tylko w ogl a brak go w d3d. wyswietlanie stereoskopowe - brak wsparcia w d3d (przynajmniej w wersji 8.1, nie jestem pewien jak to wyglada w 9.0) a ktore jest w ogl
jak widac ogl rowniez ma wiele rzeczy ktorych w d3d nie ma. wiele cech te interfejsy maja wspolnych ale znajdzie sie kilka roznych jak chociazby te ktore przed chwila wymienilem. co oczywiscie nie zmienia faktu ze obydwa interfejsy sa cudowne i wyreczaja programiste w niewiarygodnej ilosci pracy
Tytuł: Odp: OpenGL vs DirectX
Wiadomość wysłana przez: Krzysiek K. w Kwiecień 05, 2006, 00:23:34
Cytuj
wez napisz aplikacje tworzaca powierzchnie nurbs w d3d. ogl ma co do tego pelne wsparcie ktorego brakuje w d3d.
Jaki problem zakodować to samemu w D3D? OpenGL i tak robi to softwareowo (może z pewnym wsparciem ze strony niektórych kart ATI, ale wątpię).

Cytuj
a co z grafika interaktwyna i buforem selekcji?
W praktyce sprowadza się to do renderowania każdego obiektu innym kolorem do niewielkiego ekranu, a następnie odczytania tego, co zostało wyrenderowane.
Tytuł: Odp: OpenGL vs DirectX
Wiadomość wysłana przez: maxest w Kwiecień 05, 2006, 00:36:19
Cytuj
Jaki problem zakodować to samemu w D3D

no ale mimo wszystko trzeba. w ogl sa do tego od razu gotowe funkcje. moze software'owe, ale sa :)

Cytuj
W praktyce sprowadza się to do renderowania każdego obiektu innym kolorem do niewielkiego ekranu, a następnie odczytania tego, co zostało wyrenderowane.

ale wspracie ogl ma? ma ;)

no generalnie te wszystkie dodatki (niewspolne dla obydwu interfejsow) sa w sumie zbedne i mozna je samemu zaimplementowac ale czasem sie przydaja.
najwazniejsze ze takie rzeczy jak blending, bufory (szablonu, glebi..), plaszczyzny tnace i mnostwo innych rzeczy sa wspolne i tworza juz jakis standard. zrobienie powierzchnii nurbs jeszcze sobie wyobrazam ale juz zaimplementowanie wlasnego bufora szablonu mogloby stanowic nie lada wyzwanie :)
Tytuł: Odp: OpenGL vs DirectX
Wiadomość wysłana przez: SauRooN w Kwiecień 05, 2006, 01:45:37
zrobienie powierzchnii nurbs jeszcze sobie wyobrazam ale juz zaimplementowanie wlasnego bufora szablonu mogloby stanowic nie lada wyzwanie :)
Bufor to bufor, możemy renderować do teksturki ;)
Tytuł: Odp: OpenGL vs DirectX
Wiadomość wysłana przez: azorek w Kwiecień 05, 2006, 15:37:20
Witam :)

Ktos tam wspomnial ze w ogl jest glsl i cg a w dx hlsl i cg. To prawda, tylko z tego co pamietam glsl nie mial wsparcia dla shaderow ponizej 2.0, a znowu do uzywania cg ktorego autorem jest chyba nvidia mam mieszane uczucia (moga pojawic sie podejrzenia o faworyzowanie sprzetu jednego producenta).

Effect files w dx to bardzo fajna sprawa, tak samo jak pliki x. Pewnie ze mozna to zrobic na piechote w ogl, wszystko mozna zrobic na piechote :) Tylko ze dla mnie uzycie effect filesow czy tez plikow X to duza oszczednosc czasu, tak samo jak korzystanie z gotowej biblioteki matematycznej w d3dx. Pewnie ze do duzych projektow pisze sie wlasne eksportery, czy tez wlasny system materialow, wiec jak ktos ma juz gotowy projekt gry, team oraz wydawce to moze sie o to pokusic, dla amatorskich projektow robienie tego to strata czasu (mozna zrobic raz zeby sie nauczyc i przekonac ze to co zrobilismy jest gorsze od tego co oferuje d3dx ;)).

Inna sprawa ze nie przekonuje mnie tzw "obiektowosc" direct x. Obiektowym to moge nazwac managed direct x, i tutaj ma zastosowanie to wspomniane wczesniej uzupelnianie skladni. W przypadku zwyklego directx mamy pare funkcji ktore trzeba znac i cala mase stalych ktorych juz nam uzupelnianie skladni nie podpowie.

Pozdrawiam

Tytuł: Odp: OpenGL vs DirectX
Wiadomość wysłana przez: Krzysiek K. w Kwiecień 05, 2006, 16:06:35
Cytuj
do uzywania cg ktorego autorem jest chyba nvidia mam mieszane uczucia (moga pojawic sie podejrzenia o faworyzowanie sprzetu jednego producenta).
Możesz używać CG jedynie jako kompilatora i używać asmowych shaderów, które wygeneruje. Jasne, że kolejność instrukcji może nieco bardziej pasować kartom NVidii, niż ATI, ale jak by nie patrzył, to tych instrukcji CG stara się wygenerować bardzo mało, więc siłą rzeczy w ten sposób stworzone shadery będą chodzić dobrze także na kartach ATI.

Cytuj
Effect files w dx to bardzo fajna sprawa, tak samo jak pliki x.
W prostych projektach może to się sprawdza, ale już nawet w przypadku swojego renderera nie za bardzo widzę miejsce na zastosowanie plików efektów, bo niektóre elementy stanu renderowania są składane "w locie". :)

Cytuj
Inna sprawa ze nie przekonuje mnie tzw "obiektowosc" direct x. Obiektowym to moge nazwac managed direct x, i tutaj ma zastosowanie to wspomniane wczesniej uzupelnianie skladni. W przypadku zwyklego directx mamy pare funkcji ktore trzeba znac i cala mase stalych ktorych juz nam uzupelnianie skladni nie podpowie.
Obiektowość nie sprowadza się przecież do uzupełniania składni. :)
Tytuł: Odp: OpenGL vs DirectX
Wiadomość wysłana przez: maxest w Kwiecień 05, 2006, 22:59:25
Cytuj
siłą rzeczy w ten sposób stworzone shadery będą chodzić dobrze także na kartach ATI

a swietnym przykladem tego ze Cg jest naprawde uniwersalne jest FarCry, ktorego silnik dziala na D3D i OGL, a shader'y do tej gry zostaly napisane wlasnie w Cg

przy okazji: czy GLSL i HLSL sa rownie kompatybilne z NVidia i ATI? bo z tego co kojarze to z HLSL jest ok, ale z GLSLem sa problemy (chyba) na NVidii
Tytuł: Odp: OpenGL vs DirectX
Wiadomość wysłana przez: SauRooN w Kwiecień 05, 2006, 23:40:01
przy okazji: czy GLSL i HLSL sa rownie kompatybilne z NVidia i ATI? bo z tego co kojarze to z HLSL jest ok, ale z GLSLem sa problemy (chyba) na NVidii
Jakoś nie miałem specjalnie problemów.
Tytuł: Odp: OpenGL vs DirectX
Wiadomość wysłana przez: Krzysiek K. w Kwiecień 06, 2006, 00:41:25
Cytuj
z GLSLem sa problemy (chyba) na NVidii
Znajomy miał problemy z GLSL, ale na Radeonach (tzn. działało na GeForce'ach, a na Radeonach nie).

Cytuj
siłą rzeczy w ten sposób stworzone shadery będą chodzić dobrze także na kartach ATI
Może jeszcze drobna uwaga do tego, co powiedziałem - będą chodzić dobrze (chociaż niekoniecznie najlepiej, jak się da), o ile tylko uda Ci się je uruchomić. Napisałem w CG parallax mapping, który nie bardzo chciał chodzić na ATI pomimo tego, że cały silnik używa wyłącznie rozszerzeń ARB i EXT i nie jest szczególnie wymagający. Może to nie wina CG, ale niestety nie mam żadnego Radeona pod ręką, żeby to zdebugować.
Tytuł: Odp: OpenGL vs DirectX
Wiadomość wysłana przez: azorek w Kwiecień 06, 2006, 11:15:39
Cytuj
Możesz używać CG jedynie jako kompilatora i używać asmowych shaderów, które wygeneruje. Jasne, że kolejność instrukcji może nieco bardziej pasować kartom NVidii, niż ATI, ale jak by nie patrzył, to tych instrukcji CG stara się wygenerować bardzo mało, więc siłą rzeczy w ten sposób stworzone shadery będą chodzić dobrze także na kartach ATI.

Nie wiem jak w CG ale HLSL kompilujac w locie dostosowywal wygenerowany kod do istniejacego sprzetu, dlatego wczesniejsza generacja shaderow w asm nie jest tak uniwersalna. Zreszta ja nie mowie ze CG jest be, tylko przedstawiam swoje watpliwosci :)

Cytuj
Effect files w dx to bardzo fajna sprawa, tak samo jak pliki x.
W prostych projektach może to się sprawdza, ale już nawet w przypadku swojego renderera nie za bardzo widzę miejsce na zastosowanie plików efektów, bo niektóre elementy stanu renderowania są składane "w locie". :)
Oczywiste jest ze jezeli robisz renderer, to bedziesz chcial zrobic takze wlasny interfejs dla materialow, ale kto powiedzial ze jedna z implementacji tego interfejsu nie moze byc wlasnie plik efektow. Ogranicza to sporo pracy przynajmniej na poczatku. Co do skladania w locie to nie wydaje mi sie to przeszkoda. Ten mini jezyk zastosowany w plikach efektow pozwala na dokladanie swoich funkcjonalnosci, wiec nic nie stoi na przeszkodzie zeby dostosowac fx-y do swoich potrzeb.

Cytuj
Inna sprawa ze nie przekonuje mnie tzw "obiektowosc" direct x. Obiektowym to moge nazwac managed direct x, i tutaj ma zastosowanie to wspomniane wczesniej uzupelnianie skladni. W przypadku zwyklego directx mamy pare funkcji ktore trzeba znac i cala mase stalych ktorych juz nam uzupelnianie skladni nie podpowie.

Obiektowość nie sprowadza się przecież do uzupełniania składni. :)

Oczywiscie, ale poniewaz wczesniej zostala poruszona kwestia uzupelniania kodu, to pozwolilem sobie dodac swoje 3 grosze :) Obiektowosc w directx sprowadza sie do tego, ze zbudowany jest na bazie obiektow com. Ale samo uzywanie funkcji directx nie rozni sie praktycznie niczym od uzywania funkcji ogl-a. Dopiero managed direct x wprowadzil wiecej mechanizmow obiektowych.

Pozdrawiam
Tytuł: Odp: OpenGL vs DirectX
Wiadomość wysłana przez: SirMike w Kwiecień 06, 2006, 15:58:20
Nie wiem jak w CG ale HLSL kompilujac w locie dostosowywal wygenerowany kod do istniejacego sprzetu, dlatego wczesniejsza generacja shaderow w asm nie jest tak uniwersalna. Zreszta ja nie mowie ze CG jest be, tylko przedstawiam swoje watpliwosci :)

CG takze moze kompilowac w locie. Dokladnie tak samo jak HLSL.
Tytuł: Odp: OpenGL vs DirectX
Wiadomość wysłana przez: azorek w Kwiecień 07, 2006, 10:44:52
CG takze moze kompilowac w locie. Dokladnie tak samo jak HLSL.

Wiem ze moze :) Nawiazywalem do tego ze  CG mozna tez uzyc tylko jako kompilatora i potem uzywac asmowych shaderow. Wtedy traci sie ta funkcjonalnosc.

Tytuł: Odp: OpenGL vs DirectX
Wiadomość wysłana przez: Krzysiek K. w Kwiecień 07, 2006, 11:03:50
Cytuj
Nawiazywalem do tego ze  CG mozna tez uzyc tylko jako kompilatora i potem uzywac asmowych shaderow. Wtedy traci sie ta funkcjonalnosc.
Dlaczego? Dołączasz CG do projektu i możesz kompilować do asma w locie. :)
Tytuł: Odp: OpenGL vs DirectX
Wiadomość wysłana przez: hans_ w Kwiecień 16, 2006, 23:50:58
dorzuce swoje 4 grosze

1
prawda jest taka ze opengl (dla mnie przynajmniej) jest latwiejszy w inicjalizacji i uzyciu tzn mniej lini kodu
nie chce uzywac dx bo mam do czynienia wtedy z com a nie lubie tego wymyslu Microsoftu
natomiast b.lubie c a opengl sie do tego jezyka nadaje idealnie tzn nie wymaga odemnie dodatkowej pracy jak w dx tzn tworzenie jakis struktur, danych itd potrzebnych do inicjalizacji jakis tam rzeczy
widac ze opengl jest madrze zaprojektowany (mysle o api)
pozatym bardziej mi sie podoba grafika ogl

2
mysle, ze powinnismy uzywac tego co jest calkiem darmowe i bez licencji bo gdyby pozostal tylko dx na polu bitwy to nie wiadomo czy mozna by bylo robic gry za darmo a wiadomo, ze firma Ms. lubi pieniadze
natomiast ogl nie jest wspierany przez pieniadze a nauke
dzieki
:)
Tytuł: Odp: OpenGL vs DirectX
Wiadomość wysłana przez: spax w Kwiecień 16, 2006, 23:59:16
Cytuj
mysle, ze powinnismy uzywac tego co jest calkiem darmowe i bez licencji bo gdyby pozostal tylko dx na polu bitwy to nie wiadomo czy mozna by bylo robic gry za darmo a wiadomo, ze firma Ms. lubi pieniadze
natomiast ogl nie jest wspierany przez pieniadze a nauke
dzieki
Ostatnie korki microsoftu (np. Udostępnienie za darmo VSExpress) stanowczo zaprzeczają temu stwierdzeniu. Poza tym MS nigdy by nie kazał płacić sobie za coś co jest źródłem gier, czyli jeden z głównych atutów tego systemu.

pozdro
spax.
Tytuł: Odp: OpenGL vs DirectX
Wiadomość wysłana przez: hans_ w Kwiecień 17, 2006, 00:27:14
Cytuj
mysle, ze powinnismy uzywac tego co jest calkiem darmowe i bez licencji bo gdyby pozostal tylko dx na polu bitwy to nie wiadomo czy mozna by bylo robic gry za darmo a wiadomo, ze firma Ms. lubi pieniadze
natomiast ogl nie jest wspierany przez pieniadze a nauke
dzieki
Ostatnie korki microsoftu (np. Udostępnienie za darmo VSExpress) stanowczo zaprzeczają temu stwierdzeniu. Poza tym MS nigdy by nie kazał płacić sobie za coś co jest źródłem gier, czyli jeden z głównych atutów tego systemu.

pozdro
spax.

i dlatego kompilatora c++ mam zmienic zdanie?
dla mnie to jest zacheta na przyciaganie klientow zwykly chwyt reklamowy
jeszcze raz mowie dx jest oblozony licencjami (czyli prawami) a ja nie bede czytal zadnych licencji bo po co?
a po drugie mozesz miec problemy ze sciagnieciem dx sdk jesli nie masz orygiala windows
i to ma byc darmowy directx?
chyba sie komus pomylilo znaczenie slowa 'darmowy'


Tytuł: Odp: OpenGL vs DirectX
Wiadomość wysłana przez: spax w Kwiecień 17, 2006, 00:31:26
Cytuj
a po drugie mozesz miec problemy ze sciagnieciem dx sdk jesli nie masz orygiala windows
hans_: hehe nie mamy o czym rozmawiac (http://www.spax.i365.pl/homepage/graph/emoticon/noob.gif)(http://www.spax.i365.pl/homepage/graph/emoticon/lol.gif)

pozdro
spax.
Tytuł: Odp: OpenGL vs DirectX
Wiadomość wysłana przez: Antrykot w Kwiecień 17, 2006, 00:35:01
i dlatego kompilatora c++ mam zmienic zdanie?
dla mnie to jest zacheta na przyciaganie klientow zwykly chwyt reklamowy
jeszcze raz mowie dx jest oblozony licencjami (czyli prawami) a ja nie bede czytal zadnych licencji bo po co?
a po drugie mozesz miec problemy ze sciagnieciem dx sdk jesli nie masz orygiala windows
i to ma byc darmowy directx?
chyba sie komus pomylilo znaczenie slowa 'darmowy'

OpenGL też jest na jakiejś licencji. Pozwala na darmowe używanie, ale jest ;)

Cytuj
a po drugie mozesz miec problemy ze sciagnieciem dx sdk jesli nie masz orygiala windows


Tak...M$ sformatuje ci dysk, a potem spali płyte główną, żebyś nie mógł zainstalować jeszcze raz ;)
Tytuł: Odp: OpenGL vs DirectX
Wiadomość wysłana przez: Krzysiek K. w Kwiecień 17, 2006, 00:46:58
Cytuj
1
prawda jest taka ze opengl (dla mnie przynajmniej) jest latwiejszy w inicjalizacji i uzyciu tzn mniej lini kodu
nie chce uzywac dx bo mam do czynienia wtedy z com a nie lubie tego wymyslu Microsoftu
natomiast b.lubie c a opengl sie do tego jezyka nadaje idealnie tzn nie wymaga odemnie dodatkowej pracy jak w dx tzn tworzenie jakis struktur, danych itd potrzebnych do inicjalizacji jakis tam rzeczy
widac ze opengl jest madrze zaprojektowany (mysle o api)
pozatym bardziej mi sie podoba grafika ogl
1. OpenGL nie jest łatwiejsza do Direct3D - nadal musisz stworzyć okno i różne inne dziwne rzeczy. W przypadku Direct3D tych rzeczy jest nawet nieco mniej.
2. Budowa API to kwestia własnego upodobania - niektórzy wolą czytelność API Direct3D, a zmorą dla nich jest system rozszerzeń OpenGL.
3. Grafika OpenGL jest identyczna, jak grafika Direct3D. Oba API komunikują się z tą samą kartą graficzną i starają się udostępnić wszystkie jej możliwości, więc programista jest w stanie osiągnąć identyczne rezultaty niezależnie od użytego API. Pisanie rzeczy w stylu "bardziej podoba mi się grafika OpenGL" świadczy tylko o nieznajomości problemu i negatywnym nastawieniu do Microsoftu. :)

Cytuj
2
mysle, ze powinnismy uzywac tego co jest calkiem darmowe i bez licencji bo gdyby pozostal tylko dx na polu bitwy to nie wiadomo czy mozna by bylo robic gry za darmo a wiadomo, ze firma Ms. lubi pieniadze
natomiast ogl nie jest wspierany przez pieniadze a nauke
dzieki
OpenGL nie jest darmowy i ma licencję. Poza tym widać, że niektórzy niecierpią Microsoftu i wyciągają pochopne wnioski. OpenGL nie umrze, bo ma solidne podstawy i darmowy standard zawsze będzie potrzebny, więc zawsze będzie istniała przeciwwaga dla Direct3D. Direct3D pozostanie darmowy, bo to opłaca się Microsoftowi - dzięki temu właśnie Direct3D może nauczyć się każdy.

Cytuj
a po drugie mozesz miec problemy ze sciagnieciem dx sdk jesli nie masz orygiala windows
i to ma byc darmowy directx?
chyba sie komus pomylilo znaczenie slowa 'darmowy'
Możesz mieć problemy z odpaleniem Linuksa, jeżeli nie masz komputera, ale nie zmienia to faktu, że Linuks jest darmowy. Przyczepiając się w ten sposób można podważyć także darmowość całego softu na GPL. Poza tym, po co Ci Direct3D, skoro nie masz Windowsa?

Cytuj
Tak...M$ sformatuje ci dysk, a potem spali płyte główną, żebyś nie mógł zainstalować jeszcze raz
Żeby sciagnąć niektóre pliki ze strony Microsoftu trzeba przejść przez proces weryfikacji legalności Windowsa, więc dla użytkowników pirackich kopii sciagnięcie DirectX SDK może być problemem.
Tytuł: Odp: OpenGL vs DirectX
Wiadomość wysłana przez: Antrykot w Kwiecień 17, 2006, 00:52:37
Cytuj
Żeby sciagnąć niektóre pliki ze strony Microsoftu trzeba przejść przez proces weryfikacji legalności Windowsa, więc dla użytkowników pirackich kopii sciagnięcie DirectX SDK może być problemem.

Zawsze pozostaje darmowa alterantywa...emule :P Właśnie sprawdziłem, i jest 9.0c October. Troche mało źródeł, ale jest.
Tytuł: Odp: OpenGL vs DirectX
Wiadomość wysłana przez: maxest w Kwiecień 17, 2006, 02:00:11
przeciez microsoft nawet udostepnia kompilator za friko
widac hans_ ze nienawidzisz m-soft'u i w ciemno gdyby ogl byl ich produktem to bys tak samo plul na niego jak teraz na d3d. ja tego nie rozumiem co sie niektorzy ludzie tak antymicrosoftowo nastawili. a prawda jest taka ze ta firma wiele wniosla w rozwoj tego wszystkiego
Tytuł: Odp: OpenGL vs DirectX
Wiadomość wysłana przez: hans_ w Kwiecień 17, 2006, 02:01:11
przeciez microsoft nawet udostepnia kompilator za friko
widac hans_ ze nienawidzisz m-soft'u i w ciemno gdyby ogl byl ich produktem to bys tak samo plul na niego jak teraz na d3d. ja tego nie rozumiem co sie niektorzy ludzie tak antymicrosoftowo nastawili. a prawda jest taka ze ta firma wiele wniosla w rozwoj tego wszystkiego

i dlatego kompilatora c++ mam zmienic zdanie?
dla mnie to jest zacheta na przyciaganie klientow zwykly chwyt reklamowy
jeszcze raz mowie dx jest oblozony licencjami (czyli prawami) a ja nie bede czytal zadnych licencji bo po co?
a po drugie mozesz miec problemy ze sciagnieciem dx sdk jesli nie masz orygiala windows
i to ma byc darmowy directx?
chyba sie komus pomylilo znaczenie slowa 'darmowy'


Opengl nie jest na zadnej licencji! co Wy piszecie!
kto tu zna opengl?

Przeczytaj sobie 1 zdanie tej odpowiedzi
I'm a software developer and just want to use the OpenGL API. Do I need to have a license?

Applications developers do not need to license the OpenGL API. If a developer wants to use the OpenGL API, that developer needs to obtain copies of a linkable OpenGL library for a particular machine or hardware device. Those OpenGL libraries may be bundled in with the development and/or run-time options or may be purchased from a third-party software vendor without licensing the source code or use of the OpenGL® trademark.

http://www.sgi.com/products/software/opengl/faq.html
http://www.opengl.org/about/licensing/

Cytuj
a po drugie mozesz miec problemy ze sciagnieciem dx sdk jesli nie masz orygiala windows

nie chce miec problemow wiec dziekuje panom z ms

i powtorze 3 raz to co pisalem wczesniej
ogl jest darmowy i dx jest 'darmowy'
tylko jeden jest dostepny wszystkim w 100% a drugi z jakimis uwarunkowaniami
tyle
zreszta OpenGL to nie tylko gry to jest tylko jedna z wielu dziedzin gdzie jest wykorzystywany

wejdzcie sobie na strone sgi to zobaczycie gdzie ogl jest wykorzystywny min systemy wojskowe, medycyna, nauka
dx nigdy nie bedzie bo nie ma conformance tests ale to juz inna bajka

zreszta to tylko renderer a jesli chodzi o gry to z 20% roboty, bo gra to tez fizyka, ai itd
i to jest o wiele bardziej trudne do zrealizowania
thx
Tytuł: Odp: OpenGL vs DirectX
Wiadomość wysłana przez: maxest w Kwiecień 17, 2006, 02:21:58
d3d ma rownie wiele zastosowan co ogl. rowniez symulacje medyczne czy wizualizacje. d3d i ogl daja dokladnie te same rezultaty - przeciez jedno i drugie to tylko ulatwiony dostep do k. graficznej!

Cytuj
zreszta to tylko renderer a jesli chodzi o gry to z 20% roboty, bo gra to tez fizyka, ai itd
i to jest o wiele bardziej trudne do zrealizowania

trudniejsze? kazdy z elementow gry (rendering, siec, dzwiek, fizyka, ai) jest rownie zlozony i kazdy to temat-rzeka. nie ma tu "latwiejszych" i "trudniejszych" czesci. jeden zna sie dobrze na tym, drugi na tym. powinno sie dazyc do perfekcji w jednej dziedzinie, w ktorej sie czuje najlepiej (chyba ze ktos jest baaaaaaaaaardzo ambitny :))
Tytuł: Odp: OpenGL vs DirectX
Wiadomość wysłana przez: Krzysiek K. w Kwiecień 17, 2006, 02:29:36
Cytuj
Opengl nie jest na zadnej licencji! co Wy piszecie!
kto tu zna opengl?

Przeczytaj sobie 1 zdanie tej odpowiedzi
Przeczytaj jej resztę. ;) Żeby korzystać z OpenGL nie licencjonuje się bezpośrednio samego OpenGL, ale trzeba nabyć prawa do korzystania z którejś z jego implementacji. Te prawa są najczęściej za free, ale to już zależy od konkretnej implementacji (skorzystać z OpenGL na PS3 nie będzie tak łatwo) i zawsze jest jakaś licencja (choćby GPL).

Cytuj
ogl jest darmowy i dx jest 'darmowy'
tylko jeden jest dostepny wszystkim w 100% a drugi z jakimis uwarunkowaniami
OpenGL nie jest darmowy. Właśnie z powodu braku licencji biblioteka Mesa nie może nazywać się implementacją OpenGL, chociaż jest z OpenGL w 100% kompatybilna.

Cytuj
zreszta OpenGL to nie tylko gry to jest tylko jedna z wielu dziedzin gdzie jest wykorzystywany

wejdzcie sobie na strone sgi to zobaczycie gdzie ogl jest wykorzystywny min systemy wojskowe, medycyna, nauka
dx nigdy nie bedzie bo nie ma conformance tests ale to juz inna bajka
Nie przeczę, że w innych dziedzinach OpenGL dominuje. Jednakże, jeżeli chodzi o gry, to Direct3D zaczyna powoli dominować.

Cytuj
zreszta to tylko renderer a jesli chodzi o gry to z 20% roboty, bo gra to tez fizyka, ai itd
i to jest o wiele bardziej trudne do zrealizowania
thx
OpenGL to nie renderer, tylko API graficzne. Poza tym, temat jest o OpenGL i Direct3D, a nie o innych elementach gier, chociaż, swoją drogą, po komercyjnych grach wygląda na to, że renderer i grafika to grubo ponad te 20%. :)
Tytuł: Odp: OpenGL vs DirectX
Wiadomość wysłana przez: maxest w Kwiecień 17, 2006, 02:38:47
// maly offtopic
najwazniejszy w grze jest pomysl - Counter Strike i Quake 3 do dzis sa wielbione przez graczy pomimo "kiepskiej" (jak na dzisiejsze czasy oczywiscie) grafiki ;)
Tytuł: Odp: OpenGL vs DirectX
Wiadomość wysłana przez: hans_ w Kwiecień 17, 2006, 03:36:34
// maly offtopic
najwazniejszy w grze jest pomysl - Counter Strike i Quake 3 do dzis sa wielbione przez graczy pomimo "kiepskiej" (jak na dzisiejsze czasy oczywiscie) grafiki ;)

wcale nie taka kiepska
grafika zalezy od grafikow nie od  opengl
jesli grafik zrobi slabe tekstury to nawet na q4 z shaderami bedzie to wygladac kiepsko
a znam kilka gier starych np Heavy metall fakk alice rtcw gdzie wyglada to ladnie bez shaderow
jakie najnowsze gry maja o wiele lepsza grafe niz te
dlatego nie wiem czemu ludzie stawiaja taki znak rownosci shader == super grafika

Tytuł: Odp: OpenGL vs DirectX
Wiadomość wysłana przez: maxest w Kwiecień 17, 2006, 10:39:56
to pokaz mi gdzie w Q3 albo CS jest odbicie i zalamania swiatla na ruchomej wodzie, dynamiczne cienie i oswietlenie, odwzorowanie nierownosci i mnostwo innych rzeczy!
tak sie akurat sklada ze praca grafikow to nie wszystko. oni ci daja materialy a ty jesli z nich nie umiesz skorzystac to nawet najcudniejsze tekstury ci nie pomoga. i wlasnie dlatego shader == super_grafika - zebys mogl jak najwydajniej osiagnac realistyczne efekty

Cytuj
jakie najnowsze gry maja o wiele lepsza grafe niz te

widziales chociaz F.E.A.R.a na zywo?
Tytuł: Odp: OpenGL vs DirectX
Wiadomość wysłana przez: goboss w Kwiecień 17, 2006, 11:54:32
ja bym to napisał tak:
shader + umiejętności == super_grafika
Tak graficy jak i programiści są potrzebni w równym stopniu i nie ma co tu gadać bo nie ma chleba bez mąki i już  8)
Tytuł: Odp: OpenGL vs DirectX
Wiadomość wysłana przez: hans_ w Kwiecień 17, 2006, 13:20:15
to pokaz mi gdzie w Q3 albo CS jest odbicie i zalamania swiatla na ruchomej wodzie, dynamiczne cienie i oswietlenie, odwzorowanie nierownosci i mnostwo innych rzeczy!
tak sie akurat sklada ze praca grafikow to nie wszystko. oni ci daja materialy a ty jesli z nich nie umiesz skorzystac to nawet najcudniejsze tekstury ci nie pomoga. i wlasnie dlatego shader == super_grafika - zebys mogl jak najwydajniej osiagnac realistyczne efekty

Cytuj
jakie najnowsze gry maja o wiele lepsza grafe niz te

widziales chociaz F.E.A.R.a na zywo?

uuu tylko jedna?

ech jakby ktos niewedzial to wlasnie to co widzisz w grze to tekstury
to o czym mowisz to efekty dodatkowe
duzo rzeczy mozna zrobic w starym oglu np Radial Blur, Rendering To Texture, Sphere Mapping
jest taka fajna f. gltexgen (ogl 1.1!) dzieki ktorej mozesz sprzetowo generowac uv za pomoca zdefiniowanej f.
(zaden dx nie ma tego)
ja np w tym swoim demku wszystko mam w softwearze (wszystkie efekty) no moze oprocz multitexturowania i niedlugo wrzuce wersje z ruchomymi swiatlami (tez softwear)
tylko ludzie chca coraz wiecej i wiecej,
i jesli jestes dobrym programista to najpierw powinienes sprawdzic czy w
starej wersji da sie to zrobic, a dlaczego? poniewaz nie wszyscy maja super wypas karty video z shaderami 8.0
i moga zobaczyc na swoim sprzecie co Ty ogladasz.

ja wole zeby grafika byla ladna niz ogladac jakies zalamania swiatla
ale oczywiscie kazdy lubi to co lubi
:)
Tytuł: Odp: OpenGL vs DirectX
Wiadomość wysłana przez: really w Kwiecień 17, 2006, 13:47:40
Cytuj
tak sie akurat sklada ze praca grafikow to nie wszystko. oni ci daja materialy a ty jesli z nich nie umiesz skorzystac to nawet najcudniejsze tekstury ci nie pomoga.
Ja bym powiedział, że jest dokładnie na odwrót - kodzerzy dają możliwości grafikom, od których głównie zależy ostateczny wygląd gry.
Tytuł: Odp: OpenGL vs DirectX
Wiadomość wysłana przez: Krzysiek K. w Kwiecień 17, 2006, 14:03:48
Cytuj
duzo rzeczy mozna zrobic w starym oglu np Radial Blur, Rendering To Texture, Sphere Mapping
Renderowania do tekstury nie zrobisz w żadnym oglu bez pomocy rozszerzeń. Można skopiować obraz z ekranu do tekstury, ale to nie jest do końca to samo.

Cytuj
Ja bym powiedział, że jest dokładnie na odwrót - kodzerzy dają możliwości grafikom, od których głównie zależy ostateczny wygląd gry.
Zgadzam się, ale nie do końca. Ostateczny wygląd gry mocno zależy także od koderów i przyjętych technik, w tym także shaderów. Dlaczego Quake 2, Doom 3, Oblivion i inne gry wyglądają tak, jak wyglądają? Bo w Quake'u 2 użyto lightmap, w Doom'ie 3 twadrych cieni i normalmap, a w Oblivionie HDR.

Jak ktoś chce zobaczyć, jak włączenie jednego efektu może diametralnie zmienić klimat silnika, polecam screenshoty zawarte w moim artykule o fake HDR na Warsztacie 2B. :)
Tytuł: Odp: OpenGL vs DirectX
Wiadomość wysłana przez: hans_ w Kwiecień 17, 2006, 15:21:07
Cytuj
duzo rzeczy mozna zrobic w starym oglu np Radial Blur, Rendering To Texture, Sphere Mapping
Renderowania do tekstury nie zrobisz w żadnym oglu bez pomocy rozszerzeń. Można skopiować obraz z ekranu do tekstury, ale to nie jest do końca to samo.

nie prawda!
zapraszam do specyfikacji funkcji OpenGL:
glCopyTexImage2D


Cytuj
Cytuj
Ja bym powiedział, że jest dokładnie na odwrót - kodzerzy dają możliwości grafikom, od których głównie zależy ostateczny wygląd gry.
Zgadzam się, ale nie do końca. Ostateczny wygląd gry mocno zależy także od koderów i przyjętych technik, w tym także shaderów. Dlaczego Quake 2, Doom 3, Oblivion i inne gry wyglądają tak, jak wyglądają? Bo w Quake'u 2 użyto lightmap, w Doom'ie 3 twadrych cieni i normalmap, a w Oblivionie HDR.

Jak ktoś chce zobaczyć, jak włączenie jednego efektu może diametralnie zmienić klimat silnika, polecam screenshoty zawarte w moim artykule o fake HDR na Warsztacie 2B. :)
Tytuł: Odp: OpenGL vs DirectX
Wiadomość wysłana przez: Krzysiek K. w Kwiecień 17, 2006, 15:33:08
Cytuj
nie prawda!
zapraszam do specyfikacji funkcji OpenGL:
glCopyTexImage2D
Przeczytaj jeszcze raz moją odpowiedź, pomyśl i odpisz jeszcze raz. Chodzi mi zwłaszcza o zdanie: "Można skopiować obraz z ekranu do tekstury, ale to nie jest do końca to samo."


btw. Naucz się korzystać z cytatów, bo Twój post wyglądał tak, jakbym ja powiedział to, co sam napisałeś.
Tytuł: Odp: OpenGL vs DirectX
Wiadomość wysłana przez: hans_ w Kwiecień 17, 2006, 16:18:54
Cytuj
nie prawda!
zapraszam do specyfikacji funkcji OpenGL:
glCopyTexImage2D
Przeczytaj jeszcze raz moją odpowiedź, pomyśl i odpisz jeszcze raz. Chodzi mi zwłaszcza o zdanie: "Można skopiować obraz z ekranu do tekstury, ale to nie jest do końca to samo."


btw. Naucz się korzystać z cytatów, bo Twój post wyglądał tak, jakbym ja powiedział to, co sam napisałeś.

pomyslalem
wiec co to znaczy ze mozna skopiowac obraz z ekranu do tekstury ale to nie jest do konca to samo
wiec czym sie rozni od tego dzialanie f. glCopyTexImage?

funkcjonalnosc rozszerzenia ARB_render_texture (o ktore Ci chodzi) jest podobna do glCopyTexImage
tak jest napisane w specyfikacji
rozni sie to np tym, ze nie mozna wyrenderowac sceny podczas kopiowania pikseli z bufora kolorow do tekstury
moze byc zmipmapowana itd
ale i tu i tu jest to render to texture
dx nie ma takich uzytecznych f. dlatego preferuje ogl
Tytuł: Odp: OpenGL vs DirectX
Wiadomość wysłana przez: Krzysiek K. w Kwiecień 17, 2006, 16:46:47
Cytuj
wiec co to znaczy ze mozna skopiowac obraz z ekranu do tekstury ale to nie jest do konca to samo
wiec czym sie rozni od tego dzialanie f. glCopyTexImage?
Żeby coś skopiować z ekranu, najpierw musisz narysować to na ekranie, potem samo kopiowanie wymaga dodatkowych operacji karty graficznej (nie trwa to zwykle długo, ale trwa), a na koniec musisz po sobie posprzątac, jeżeli chcesz coś wyrenderować. Fake HDR w artykule robiłem właśnie na CopyTexImage, a że renderowanie do tekstury było mi potrzebne gdy cała scena była już wyrenderowana, to musiałem "zalepić" kawałek ekranu, na którym sobie renderowałem.

Renderowanie do tekstury, oprócz tego, że nie wymaga dodatkowego przesyłania danych, oraz nie modyfikuje zawartości ekranu, pozwala na użycie innych ustawień antyaliasingu, oraz innego formatu piksela. Przykładowo, prawdziwy HDR opiera się na kolorze zapisanym jako float, gdyż 8-bitów to niewystarczająca precyzja - jest to możliwe jedynie w przypadku renderowania do tekstury, gdyż nie da się ustawić formatu piksela na ekranie, żeby kolory były zapisane jako float'y (a tekstury się da).

Cytuj
funkcjonalnosc rozszerzenia ARB_render_texture (o ktore Ci chodzi) jest podobna do glCopyTexImage
Nie wypowiem się, bo się nie zagłębiałem, ale chodziło mi raczej o PBuffer'y i EXT_framebuffer_object.

Cytuj
dx nie ma takich uzytecznych f. dlatego preferuje ogl
Myślę, że słabo szukałeś. Direct3D także potrafi kopiować obraz pomiędzy ekranem i teksturami, renderować do tekstury, a nawet więcej (możesz na przykład stworzyć dwa Z-bufory i się pomiędzy nimi przełączać), tylko że w Direct3D wszystko wydaje się, przynajmniej mi, bardziej dostępne i prostsze. Dla przykładu: renderowanie do tekstury w d3d zrobiłem praktycznie od ręki, a w OpenGL nie mogłem przebrnąć przez specyfikację PBuffer'ów, a tym bardziej zaimplementować coś, co by je wykorzystywało. :)
Tytuł: Odp: OpenGL vs DirectX
Wiadomość wysłana przez: maxest w Kwiecień 17, 2006, 19:29:33
no wlasnie - w d3d renderowanie do tekstury jest dostepne od razu bez rzadnych rozserzen

Cytuj
w Direct3D wszystko wydaje sie, przynajmniej mi, bardziej dostępne i prostsze

nie tylko tobie ;).
d3d jest swietne do wiekszych projektow. tutaj wszystko musi byc uporzadkowane - struktury wierzcholkow, bufory wierzcholkow/indeksow i wszystko inne. przez to potem kod jest bardzo uporzadkowany i dzieki temu wszystkiemu jest wiele "miejsc" gdzie mozna dokonac optymalizacji.
rzecz jasna ogl jak sobie zorganizujesz wszystko to tez jest piekny porzadek i wszystko czytelne. ponadto w ogl wydaje sie (oczywiscie to tylko moje zdanie) robic duzo szybciej jakies prostsze przyklady, testy itp. zeby wyrenderowac punkt nie trzeba bawic sie w struktury wierzcholkow tylko uzywamy 3 linijek kodu. to dosyc wygodne w porownaniu z d3d.
no ale oczywiscie przewaga d3d jest dostepnosc do wszystkich funkcji. ach te rozszerzenia w ogl :)

Cytuj
ja wole zeby grafika byla ladna niz ogladac jakies zalamania swiatla

to zalamanie swiatla nie jest ladne? ;p jesli idzie o gry FPP to takie fajerwerki znacznie umilaja gre

Cytuj
uuu tylko jedna?

heh. doom 3, quake 4, Far Cry, Half Life 2. tego jest jeszcze sporo
Tytuł: Odp: OpenGL vs DirectX
Wiadomość wysłana przez: hans_ w Kwiecień 17, 2006, 20:33:05
no wlasnie - w d3d renderowanie do tekstury jest dostepne od razu bez rzadnych rozserzen

Cytuj
w Direct3D wszystko wydaje sie, przynajmniej mi, bardziej dostępne i prostsze

nie tylko tobie ;).
d3d jest swietne do wiekszych projektow. tutaj wszystko musi byc uporzadkowane - struktury wierzcholkow, bufory wierzcholkow/indeksow i wszystko inne. przez to potem kod jest bardzo uporzadkowany i dzieki temu wszystkiemu jest wiele "miejsc" gdzie mozna dokonac optymalizacji.
rzecz jasna ogl jak sobie zorganizujesz wszystko to tez jest piekny porzadek i wszystko czytelne. ponadto w ogl wydaje sie (oczywiscie to tylko moje zdanie) robic duzo szybciej jakies prostsze przyklady, testy itp. zeby wyrenderowac punkt nie trzeba bawic sie w struktury wierzcholkow tylko uzywamy 3 linijek kodu. to dosyc wygodne w porownaniu z d3d.
no ale oczywiscie przewaga d3d jest dostepnosc do wszystkich funkcji. ach te rozszerzenia w ogl :)

Cytuj
ja wole zeby grafika byla ladna niz ogladac jakies zalamania swiatla

to zalamanie swiatla nie jest ladne? ;p jesli idzie o gry FPP to takie fajerwerki znacznie umilaja gre

Cytuj
uuu tylko jedna?

heh. doom 3, quake 4, Far Cry, Half Life 2. tego jest jeszcze sporo

tak sie sklada ze 2 pierwsze sa na ogl a nastepne sa wymienne dx/ogl jak sadze

te kolorowe dx sdk tez zaczynaja na mnie dzialac
to, ze wszystko jest w jednym miejscu to nie znaczy ze to jest lepsze
jesli chce miec rozszerzenie multitexture to sobie importuje odpowiednia f i juz
jesli jakies api wymaga odemnie tworzenia niepotrzebnych struktur, wskaznikow to kod jest automatycznie wiekszy
czyli exe tez
pozatym chyba i tak musisz w dx sprawdzac czy shadery czy inne wlasciosci sa dostepne tak jak w ogl?
tyle ze roznica w ogl polega na pobraniu adresu f
thx
Tytuł: Odp: OpenGL vs DirectX
Wiadomość wysłana przez: Krzysiek K. w Kwiecień 17, 2006, 21:25:51
Cytuj
tak sie sklada ze 2 pierwsze sa na ogl a nastepne sa wymienne dx/ogl jak sadze
Nie kojarzę, żeby HL2 miał możliwość działania z OpenGL. Podobnie zresztą, jak Oblivion i Unreal Engine 3, a zwłaszcza z tymi dwoma ostatnimi trudno jest polemizować, jeżeli chodzi o grafikę. :)

Cytuj
jesli chce miec rozszerzenie multitexture to sobie importuje odpowiednia f i juz
jesli jakies api wymaga odemnie tworzenia niepotrzebnych struktur, wskaznikow to kod jest automatycznie wiekszy
czyli exe tez
Jeżeli chodzi o wielkość kodu, to akurat obiekty i struktury są najbardziej eleganckim rozwiązaniem. :)

Cytuj
pozatym chyba i tak musisz w dx sprawdzac czy shadery czy inne wlasciosci sa dostepne tak jak w ogl?
Oczywiście, że tak. :)
Tytuł: Odp: OpenGL vs DirectX
Wiadomość wysłana przez: maxest w Kwiecień 17, 2006, 22:00:14
Cytuj
tak sie sklada ze 2 pierwsze sa na ogl a nastepne sa wymienne dx/ogl jak sadze

byc moze, ale ja wspomnialem o tych grach w kontekscie shader == super_grafika, a nie uzytego renderera :)

Cytuj
to, ze wszystko jest w jednym miejscu to nie znaczy ze to jest lepsze

to tak jakby wolec GTA: San Andreas na 7 cd niz na 1 dvd. coz.. kazdy moze miec swoje zdanie ;)
Tytuł: Odp: OpenGL vs DirectX
Wiadomość wysłana przez: hans_ w Kwiecień 18, 2006, 19:07:06
Cytuj
tak sie sklada ze 2 pierwsze sa na ogl a nastepne sa wymienne dx/ogl jak sadze

byc moze, ale ja wspomnialem o tych grach w kontekscie shader == super_grafika, a nie uzytego renderera :)

Cytuj
to, ze wszystko jest w jednym miejscu to nie znaczy ze to jest lepsze

to tak jakby wolec GTA: San Andreas na 7 cd niz na 1 dvd. coz.. kazdy moze miec swoje zdanie ;)

po pierwsze
mowimy tu o wygodzie dla programisty czy wygodzie dla gracza?
to chyba forum o programowaniu

po drugie kod jest bardziej elegancki od innego jesli mniej zajmuje miejsca od innego
i wykonuje to samo szybciej (np. quake zawsze dzialal na stosunkowo wolnym sprzecie i jest uznawany za elegancki engine)
w opengl moge sobie zdefiniowac takie klasy jak ma dx i ich uzywac jak bym robil w dx
ale nie robie tego bo to by spowodowalo rozrost kodu i jest to poprostu niepotrzebne
Tytuł: Odp: OpenGL vs DirectX
Wiadomość wysłana przez: Radko w Kwiecień 18, 2006, 19:13:10
Najważniejszym argumentem mówiącym za DX jest prosty fakt, że na świecie jest 999,999 firm piszących komercyjne gry w DX, a w GL pisze 1 firma (oczywiście liczby są z czapy wzięte, ale You get the point). Jeśli ktokolwiek myśli o profesjonalnej pracy jako game developer to musi umieć pisać w DX, umie, czyli zna go na wylot i ma duże doświadczenie w pisaniu w nim, czyli poświęca na to cały swój czas, czyli nie ma czasu na zabawę w GL. Ale jeśli ktoś chce zostać np. piekarzem albo policjantem, to może używać OGL.

Tytuł: Odp: OpenGL vs DirectX
Wiadomość wysłana przez: Moriturius w Kwiecień 18, 2006, 19:36:17
Najważniejszym argumentem mówiącym za DX jest prosty fakt, że na świecie jest 999,999 firm piszących komercyjne gry w DX, a w GL pisze 1 firma (oczywiście liczby są z czapy wzięte, ale You get the point). Jeśli ktokolwiek myśli o profesjonalnej pracy jako game developer to musi umieć pisać w DX, umie, czyli zna go na wylot i ma duże doświadczenie w pisaniu w nim, czyli poświęca na to cały swój czas, czyli nie ma czasu na zabawę w GL. Ale jeśli ktoś chce zostać np. piekarzem albo policjantem, to może używać OGL.

Niestety masz racje... Ale pisanie w DX przyprawia mnie o dreszcze... zawsze czuje sie przygnieciony obiektami ze wszystkich stron... OGL bardziej mi odpowiada.
Tytuł: Odp: OpenGL vs DirectX
Wiadomość wysłana przez: hans_ w Kwiecień 18, 2006, 19:45:11
Najważniejszym argumentem mówiącym za DX jest prosty fakt, że na świecie jest 999,999 firm piszących komercyjne gry w DX, a w GL pisze 1 firma (oczywiście liczby są z czapy wzięte, ale You get the point). Jeśli ktokolwiek myśli o profesjonalnej pracy jako game developer to musi umieć pisać w DX, umie, czyli zna go na wylot i ma duże doświadczenie w pisaniu w nim, czyli poświęca na to cały swój czas, czyli nie ma czasu na zabawę w GL. Ale jeśli ktoś chce zostać np. piekarzem albo policjantem, to może używać OGL.

Niestety masz racje... Ale pisanie w DX przyprawia mnie o dreszcze... zawsze czuje sie przygnieciony obiektami ze wszystkich stron... OGL bardziej mi odpowiada.

mnie tez ...
ja nie jestem piekarzem ani policjantem
ale Wy napewno macie jakies osiagnicia w pisaniu grafiki 3d skoro jest dx jest az tak dobry?
bo mi np. na opengl udalo sie napisac gre 3d i to dzialajaca b. dobrze
Tytuł: Odp: OpenGL vs DirectX
Wiadomość wysłana przez: maxest w Kwiecień 18, 2006, 22:10:08
co z tego ze w GL pisze "1 firma"? czy to oznacza ze lepiej uczyc sie d3d? poczytajcie lepiej oferty pracy przeroznych firm z branzy. w znacznej wiekszosci podaja, ze nalezy bardzo dobrze znac "OpenGL or Direct3D". co z reszta widac bo coraz wiecej gier zaczynac miec dwa renderer'y
poza tym (juz wiele razy o tym pisalem) to jest tylko renderer. czy programista ktory potrafi uzywac stencil buffer'a w ogl nie bedzie potrafil go urzyc w d3d? pewnie ze bedzie potrafil bo zasady poslugiwania sie tym sa takie same. dlatego warto uczyc sie jednego i drugiego. przez znajmosc jednego latwiej uczy sie drugiego
Tytuł: Odp: OpenGL vs DirectX
Wiadomość wysłana przez: Krzysiek K. w Kwiecień 18, 2006, 23:10:09
Cytuj
(np. quake zawsze dzialal na stosunkowo wolnym sprzecie i jest uznawany za elegancki engine)
Wczasie, gdy powstawał Quake 2, Direct3D był strasznie zakręcony i mało przyjazny dla użytkownika. W tej chwili nawet Carmack przyznaje, że Direct3D dogonił OpenGL. Co do szybkości działania i elegancji, to jest to zasługa programistów i projektantów, a nie OpenGL'a.

Cytuj
Jeśli ktokolwiek myśli o profesjonalnej pracy jako game developer to musi umieć pisać w DX, umie, czyli zna go na wylot i ma duże doświadczenie w pisaniu w nim, czyli poświęca na to cały swój czas, czyli nie ma czasu na zabawę w GL. Ale jeśli ktoś chce zostać np. piekarzem albo policjantem, to może używać OGL.
Jeżeli ktoś myśli o profesjonalnej pracy jako game developer, nie musi być specjalnie biegły ani w Direct3D ani w OpenGL, bo game develeopemt to nie tylko grafika. Jeżeli zaś chcesz się profesjonalnie zajmować programowaniem grafiki, podstawa to dobrze znać oba API, bo nie wiadomo, w czym przyjdzie Ci pisać. :)

Cytuj
Ale pisanie w DX przyprawia mnie o dreszcze... zawsze czuje sie przygnieciony obiektami ze wszystkich stron...
Kewstia przyzwyczajenia. Jak zaczniesz w tym pisać, to przejdzie. :)

Cytuj
przez znajmosc jednego latwiej uczy sie drugiego
Potwierdzam. :)
Tytuł: Odp: OpenGL vs DirectX
Wiadomość wysłana przez: MoN w Kwiecień 19, 2006, 17:23:46
IMHO znajomosc obu poplaca - moze i w produkcji gier uzywa sie wiecej dx, ale z tego co wiem programy "naukowe", tzn. wykorzystujace grafike 3D, a nie gry, dosyc czesto uzywaja ogla - podejrzewam ze w tym miejscu przydaje sie ta slynna wieloplatformowosc ogla :P.

A nigdy nie wiadomo, gdzie przyjdzie pracowac ;)
Tytuł: Odp: OpenGL vs DirectX
Wiadomość wysłana przez: hans_ w Kwiecień 19, 2006, 18:14:24
sciagnalem sobie, tylko przez ciekawosc dx sdk (april)
i to co zobaczylem w dokumentacji nawet mnie nie zdziwilo bo sie niestety tego domyslalem
myslalem ze od czasow dx 8 cos naprawde sie zmienilo ale niestety
taka ilosc f. i taka ilosc parametrow potrzebnych niemal do kazdej z nich jest (dla mnie) dowodem na to tworcy
nie sa wstanie nic lepszego zaoferowac poza kupa nienormalnych f.
jestem zawiedziony
dla przykladu
inicjowanie dx to prawie 4000 linijek kodu!


//// TRZA BYŁO WKLEJAć CAŁE 4000 LINIJEK?


po tej inicjacji wszystko jest gotowe do renderowania (bufory itd.)
np takie f. dx jak:

CheckDepthStencilMatchUINT Adapter,
  D3DDEVTYPE DeviceType,
  D3DFORMAT AdapterFormat,
  D3DFORMAT RenderTargetFormat,
  D3DFORMAT DepthStencilFormat

CheckDeviceFormat(
  UINT Adapter,
  D3DDEVTYPE DeviceType,
  D3DFORMAT AdapterFormat,
  DWORD Usage,
  D3DRESOURCETYPE RType,
  D3DFORMAT CheckFormat

HRESULT CheckDeviceType(
  UINT Adapter,
  D3DDEVTYPE DeviceType,
  D3DFORMAT DisplayFormat,
  D3DFORMAT BackBufferFormat,
  BOOL Windowed

powinny byc ukryte wewnatrz directx bo nie kazdy ma ochote bawic sie dopasowujac parametry
jakis displayformatow, stencilformatow itp zeby posklejac render target w jedna calosc.

jesli rzeczywiscie dx uzywa 99.9 % firm to tylko dlatego ze ms wywiera na uzytkownikach roznego rodzaju chwyty i klamstwa
np mala promocja ogl podczas gdy dx jest promowany wszedzie gdzie to mozliwe
np podczas instalacji windy 98 mialem taki napis dx 5 jest najszybszym do renderowania grafiki co jest klamstewkiem o czym wszyscy wiedza

jednym slowem zauwazam, ze directx sie rozrasta w funkcje i struktury zamiast sie zmniejszac i byc bardziei prostszym i przyjaznym api co mnie jeszcze bardziej odpycha w kierunku opengl

teraz na temat przykladow sdk
poza kilkoma przykladami
HDR
shadow volume
MotionBlur10
SkinnedMesh
nie ma nic wiecej ciekawego bo komu sie przyda np
FirewallInstallHelper albo
GPUSpectrogram?
czy konwerter tekstur ktory mam swoj od lat jak i pluginy do maxa
kazdy projekt nawet prezentujacy 1 trojkat ma z 10 plikow i kilka tys linijek kodu
co poczatkujacego moze przyprawic o bol glowy a nie przyjemnosc uczenia sie programowania
w skali 1 do 10 daje tej wersji sdk maks 4
ogl oczywiscie 10 :)


EDIT by spax: [ code ] [ /code ]

Tytuł: Odp: OpenGL vs DirectX
Wiadomość wysłana przez: st3tc w Kwiecień 19, 2006, 18:27:21
hans daj sobie juz luzu, bo bredzisz kolego. Mi inicjacja dx-a zajela niecale 50 linijek (bo mialem rozwlekła).
Coraz bardziej to przypomina udowadnianie: "opengl jest the best a dx suck bo dx-a nie umiem".
Proponuje, zeby osoby nie znajace danego API nie wypowiadaly sie o nim - a o wlasnym - dajac przy tym konkretne argumenty.Wtedy bedzie mozliwosc dla innych (ktorzy znaja to drugie api, lub oba) riposty.
Ja osobiscie uwazam D3D za swietne api. Wychowalem sie na wszystkich dx-ach (od 5.0) i patrzac z perspektywy wyewoluowalo w bardzo dobrym kierunku. (to nie argument za dx-em - ogl tez znam bardzo dobrze - to po prostu moja wlasna prywatna ocena).

PS - uzywaj znacznikow [ code][ /code]
Tytuł: Odp: OpenGL vs DirectX
Wiadomość wysłana przez: hans_ w Kwiecień 19, 2006, 18:36:16
hans daj sobie juz luzu, bo bredzisz kolego. Mi inicjacja dx-a zajela niecale 50 linijek (bo mialem rozwlekła).
Coraz bardziej to przypomina udowadnianie: "opengl jest the best a dx suck bo dx-a nie umiem".
Proponuje, zeby osoby nie znajace danego API nie wypowiadaly sie o nim - a o wlasnym - dajac przy tym konkretne argumenty.Wtedy bedzie mozliwosc dla innych (ktorzy znaja to drugie api, lub oba) riposty.
Ja osobiscie uwazam D3D za swietne api. Wychowalem sie na wszystkich dx-ach (od 5.0) i patrzac z perspektywy wyewoluowalo w bardzo dobrym kierunku. (to nie argument za dx-em - ogl tez znam bardzo dobrze - to po prostu moja wlasna prywatna ocena).

to tez moje zdanie
chodzi mi o to ze chcialbym sie przekonac czy warto w to zainwestowac ale nikt mi nie daje zadnych powodow do tego
mozesz pokazac mi ta inicjacje (50 linijek)?
Tytuł: Odp: OpenGL vs DirectX
Wiadomość wysłana przez: maxest w Kwiecień 19, 2006, 18:41:28
hans, lepiej przejrzyj sobie przyklad "Tutorial 2: Vertices". moze wtedy zobaczysz jak prosta jest inicjacja d3d. powiedzialbym ze duzo latwiejsza niz ogl (nie trzeba bawic sie z formatami pikseli i wgl)
widac ze w ogole nie wiesz jak dziala d3d i jak prosty jest w uzyciu. w skrocie: to co w ogl robi sie bezposrednimi wywolaniami funkcji to w d3d wykonuje sie poprzez IDirect3DDevice(x)-> i oto cala filozofia
Tytuł: Odp: OpenGL vs DirectX
Wiadomość wysłana przez: Mic w Kwiecień 19, 2006, 18:44:52
huh imho nie ma co porownywac inicjalizacji bo to w sumie proces jednorazowy ( raz napiszesz i masz na wszystkie projekty), a po za tym w opengl zalezy od bibliotek jakich stosujesz (od kilkunastu w aux, glut, sdl do kilkuset jak u nehe).
Tytuł: Odp: OpenGL vs DirectX
Wiadomość wysłana przez: st3tc w Kwiecień 19, 2006, 18:49:14
to tez moje zdanie
chodzi mi o to ze chcialbym sie przekonac czy warto w to zainwestowac ale nikt mi nie daje zadnych powodow do tego
mozesz pokazac mi ta inicjacje (50 linijek)?
Investowac oczywiscie warto. Chocby z tego powodu ze D3D ma bardzo silna standaryzacje, niezaleznie od producenta karty graficznej. To wlasnie dlatego zostalo wybrane (i jest wspierane) jako main-gpu-api przez czolowych producentow silnikow. Jeszcze przed bumem ARB (mowie o pix i vert shaderkach) robienie "hitekow" w ogl to byla masakra. Codepathy na rozne typy kart graficznych - do tego trzeba bylo miec baze sprzetowa. D3D rozwiazywal ten problem. Cos (kod) co jest kompatybilne z standardem D3D, dziala na dowolnej karcie - o ile karta ta posiada odp. "zdolnosci". API sie moze wydawac dziwne - ale to dlatego, ze znasz w sumie tylko OpenGL - to normalne na poczatku. Po dluzszej zabawie okazuje sie byc dobrze przemyslane.

Jest jedna rzecz o ktorej trzeba napisac - D3D reprezentuje nizszy poziom abstrakcji. Jest to spowodowane checią udostepnienia programistom bardziej profesjonalnego/efektywnego dostepu do sprzetu. Np bluzgane przez wielu wymaganie restartu zasobow D3DPOOL_DEFAULT ma swoje techniczne podstawy. W opengl nie masz nad tym kontroli. W D3D mozesz sam ustalic kolejnosc tworzenia zasobow - a to ma kolosalne znaczenie dla wydajnosci.
Reszta jest w sumie podobna - koncepcje sa te same. Tyle, ze ofkoz ustandaryzowane - np gdy w D3D juz dawno byly vertex buforki, w ogl panowal chaos. A to nvidia sobie wprowadzila jakies cudo z alokowaniem pamieci (problemy z synchro - a wlasciwie "ciezkie" synchro) a to cos tam innego, a to jakies EXT itp itd. Dopiero pozniej wprowadzono VBO - efektywny odpowiednik VB z D3D. To samo bylo z render targecikami. W D3D sytuacja jest extremalnie klarowna. Rozne typy RTargetow, wlacznie z floatowymi czy renderowaniem do shadow mapki sprzetowej - to wszystko sie robi w JEDEN sposob. W ogl trzeba manewrowac extami - co gorsza roznymi  (ale i tutaj widac pomalu postepujaca standaryzacje). Slynne shaderki - jasne ze jest ARB - ale jakim kosztem ?. ARB fragment to odp. minimum PS2.0. A co z pozostalymi ?. RC i TS na kartach nvidii, exty ATI na ati.
D3D daje mi poczucie bezpieczenstwa - piszac kod, testujac go, a nastepnie testujac na sterowniku referencyjnym, mam niemal (podkreslam niemal ;))gwarancje poprawnego dzialania na innych kartach, na ktorych nie moge testowac - poniewaz ja z mojej strony napisalem kod zgodny w 100% ze specyfikacja. Przy OGL musze dysponowac innymi kartami - zeby dopracowac codepath-y.

To tak w skrocie ;). Temat rzeka. Aha - osobiscie uwazam oba api za ciekawe. Programista 3D nie znajacy jednego lub drugiego to w sumie taki maly invalida (imo). Trzeba patrzec glebiej - naszym celem sa tranzystorki na karcie graficznej - to one robia to co chcemy a nie API :).

mozesz pokazac mi ta inicjacje (50 linijek)?
A co nie wierzysz ? :)
Tytuł: Odp: OpenGL vs DirectX
Wiadomość wysłana przez: hans_ w Kwiecień 19, 2006, 19:15:46
co do buforow to zonglowanie nimi jest moim zdaniem niebezpieczne ze wzgledu na konf sprzetu kazdy moze miec inna
wiec wole zeby to ogl za mnie to zrobil

sterownik referencyjny?
testowanie z nim gry na mapie z 60 000 trojkatow dalo by mi chyba 2 lata czasu na ujrzenie efektu wiec tak czy inaczej musialbym miec ati i nvidie na kompie w roznych wersjach
nawet te prymitywne sample z sdk w ref u mnie dzialaja 1 klatka na godz
Tytuł: Odp: OpenGL vs DirectX
Wiadomość wysłana przez: st3tc w Kwiecień 19, 2006, 19:24:01
ref nie sluzy do odpalania na nim gier ... eh ... niewazne. Mowisz o vertex buforkach ?. NIe ma sie czego bac - prawidlowa kolejnosc tworzenia zasobow i kontrola to istotna sprawa.
Tytuł: Odp: OpenGL vs DirectX
Wiadomość wysłana przez: hans_ w Kwiecień 19, 2006, 19:52:10
ref nie sluzy do odpalania na nim gier ... eh ... niewazne. Mowisz o vertex buforkach ?. NIe ma sie czego bac - prawidlowa kolejnosc tworzenia zasobow i kontrola to istotna sprawa.
nie mowie o odpalaniu gier tylko testowaniu efektu
jak sobie to wyobrazasz ze przetestujesz pixel shader 4.0 na jednym swietle i jak ktos odpali gre z 10 swiatlami na mapie to bedzie to dzialac tak samo? mozesz byc tylko pewny w 99% a nie w 100
to byl tylko przyklad
nigdy bym nie testowal w ten sposob bo to nie testowanie tylko zabawa
Tytuł: Odp: OpenGL vs DirectX
Wiadomość wysłana przez: st3tc w Kwiecień 19, 2006, 19:58:55
Ref to sterownik diagnostyczny. Razem z runtimami debugowymi tworzy potezne narzedzie VALIDUJACE poprawnosc Twojego kodu. Robie sobie szereg snapshotow (ujec) i badam wiadomosci wysylane przez debugowego dx-a. REF jest wzorcem dla producentow kart graficznych. Ich driverki sa zgodne wtedy, kiedy dzialanie jest identyczne jak ref-a.
Masz przyklad: silnik dzialal na Nvidii. Z debugowych diverkow nie lecialo nic - zaden warning. Czysty kod - kompatybilny. Na pewno ?. Na ATI sie zaczelo sypac sporadycznie. Cholernie trudne do wychwycenia bledy. Zrobilem validacje na refie - lupnal mi errorem.

REF to driverek laboratoryjny - jego zadaniem jest 100% kompatybilnosc z definicja standardu, oraz (co wazne) wymuszenie zgodnosci. Jesli cos dziala bezblednie (bez errorow, obrazny z ujec poprawne) to bedzie dzialac dobrze na innym sprzecie HW (a jesli nie - to bedzie to wtedy wina driverkow karty).

Z obserwacji na forum widze, ze nie uzywanie ref-a i debugowych sterowniczkow jest wrecz nagminne (i pozniej sie okazuje, ze np. prezentowane demko wali errorami).

Ja rozumiem, ze dla ciebie REF to zabawa. Dla mnie, razem z innymi narzedziami tak z SDK dx-a (mam na mysli pix-a) jak i poza nim, to potezne narzedzie - ktore jest przyjacielem i zawsze powinno byc brane pod uwage.
Tytuł: Odp: OpenGL vs DirectX
Wiadomość wysłana przez: Krzysiek K. w Kwiecień 19, 2006, 20:03:19
Cytuj
inicjowanie dx to prawie 4000 linijek kodu!inicjowanie dx to prawie 4000 linijek kodu!
Prawdopodobnie patrzyłeś na przykłady korzystające z DXUT (czy jak to się zwie). DXUT jest biblioteką pomocniczą, więc jej kod się nie liczy do tego, co sam musisz napisać, a inicjalizacja tam zawarta wychodzi sporo ponad to, co musisz zrobić samemu. Jak już powiedziałem, Direct3D można zainicjalizować samemu równie prosto, co OpenGL i to jest fakt niepodważalny.

Cytuj
jesli rzeczywiscie dx uzywa 99.9 % firm to tylko dlatego ze ms wywiera na uzytkownikach roznego rodzaju chwyty i klamstwa
Powiedz to na przykład twórcom Painkillera, Obliviona, czy Unreal Engine 3. Ich decyzja na pewno zostałe dobrze przemyślana.

Cytuj
jednym slowem zauwazam, ze directx sie rozrasta w funkcje i struktury zamiast sie zmniejszac i byc bardziei prostszym i przyjaznym api co mnie jeszcze bardziej odpycha w kierunku opengl
Hmm, o ile dobrze pamiętam, to podczas programowania w DirectX napotkałem jakieś dwie struktury (present parameters i vertex declaration), więc nie wiem, gdzie tu jakaś mnogość struktur. Co do ilości funkcji, policz ile różnych funkcji masz w OpenGL, to na pewno wyjdzie więcej (zwłaszcza, jak doliczysz funkcje z rozszerzeń).

Cytuj
teraz na temat przykladow sdk
poza kilkoma przykladami
HDR
shadow volume
MotionBlur10
SkinnedMesh
nie ma nic wiecej ciekawego bo komu sie przyda np
FirewallInstallHelper albo
GPUSpectrogram?
czy konwerter tekstur ktory mam swoj od lat jak i pluginy do maxa
W porównaniu ze specyfikacją OpenGL, w której nie ma żadnego przykładowego kodu, jest to krok naprzód. ;)

Cytuj
kazdy projekt nawet prezentujacy 1 trojkat ma z 10 plikow i kilka tys linijek kodu
Zaczynam wątpić, czy na pewno wogóle zaglądałeś do DirectX SDK. Proponuję przeczytać sobie tutorial tam zawarty. By wyświetlić trójkąt wystarczy użyć kilkudziesięciu linijek, w większości żywcem skopiowanych z tego tutoriala.

Cytuj
D3D daje mi poczucie bezpieczenstwa - piszac kod, testujac go, a nastepnie testujac na sterowniku referencyjnym, mam niemal (podkreslam niemal ;))gwarancje poprawnego dzialania na innych kartach, na ktorych nie moge testowac - poniewaz ja z mojej strony napisalem kod zgodny w 100% ze specyfikacja. Przy OGL musze dysponowac innymi kartami - zeby dopracowac codepath-y.
No, w Direct3D też za różowo nie jest, bo karty czasami oferują mniej, niż by to mówiła specyfikacja Direct3D - na przykład GeForce 2 pokazuje 8 texture stage'ów podczas gdy wspiera jedynie pewne ich ustawienia, a niektóre karty ATI nie potrafią filtrować zmiennoprzecinkowych tekstur. :)

Cytuj
nie mowie o odpalaniu gier tylko testowaniu efektu
jak sobie to wyobrazasz ze przetestujesz pixel shader 4.0 na jednym swietle i jak ktos odpali gre z 10 swiatlami na mapie to bedzie to dzialac tak samo? mozesz byc tylko pewny w 99% a nie w 100
to byl tylko przyklad
nigdy bym nie testowal w ten sposob bo to nie testowanie tylko zabawa
REF nie służy do testowania efektów, tylko do testowania kart graficznych. Jeżeli karta zachowuje się tak samo, jak REF, to znaczy że jest zgodna ze specyfikacją Direct3D. Od biedy da się na tym testować efekty, ale, jak sam zauważyłeś, nie jest to żadne rozwiązanie i kupna karty z SM4.0 nie ominiesz. Co do porównania OpenGL i Direct3D, to w OpenGL nie ma wogóle czegoć, co by choć trochę przypominało REF, więc nie ma co tego rozważać. :)
Tytuł: Odp: OpenGL vs DirectX
Wiadomość wysłana przez: maxest w Kwiecień 19, 2006, 22:54:06
krotko mowiac "prawdziwy" programista grafiki 3d (zajmujacy sie tym zawodowo) powinien po prostu miec duze doswiadczenie w programowaniu zarowno w d3d jak o ogl :]
wyobrazacie sobie taka sytuacje... szefowie po dluzszych rozwazaniach doszli do wsniosku ze nastepna gra ma byc w calosci w Direct3D z tego i tamtego powodu programista na to "ale ja znam tylko opengl..." :D
Tytuł: Odp: OpenGL vs DirectX
Wiadomość wysłana przez: Mic w Kwiecień 19, 2006, 23:10:37
Cytuj
Powiedz to na przykład twórcom Painkillera, Obliviona, czy Unreal Engine 3. Ich decyzja na pewno zostałe dobrze przemyślana.
Tak na marginesie unreal engine 3 ma także supportować opengl
Tytuł: Odp: OpenGL vs DirectX
Wiadomość wysłana przez: paperboy w Sierpień 24, 2006, 13:46:45

A jak to jest z wydajnoscia obu.
Mialem pewien problem z programem MonkeyRender, w ktorym moglem spradzic rozne efekty na OpenGL i DirectX.
Na mojej karcie graficznej ATI Radeon X300 OpenGl strasznie przycinal a DX przeciwnie.
Tytuł: Odp: OpenGL vs DirectX
Wiadomość wysłana przez: W0jciechZ w Sierpień 24, 2006, 14:17:48
Są równie szybkie, można w nich osiągnąć to samo różnią się tylko stylem pisania.
Wybór należy do każdego z nas. Ale na pewno trzeba oba API przetestować aby móc powiedzieć co dla każdego jest lepsze.

Jeśli chodzi o wydajność to faktycznie ten MonkeyRender musi być skopany.
Marketing hehe.
Tytuł: Odp: OpenGL vs DirectX
Wiadomość wysłana przez: maxest w Sierpień 24, 2006, 15:01:56
Cytuj
Na mojej karcie graficznej ATI Radeon X300 OpenGl strasznie przycinal a DX przeciwnie.
ja z moim ice war'em mam taki problem, ze na ATI ma czesto FPS=1..? a na GeForce'ach idzie elegancko. na dodatek nie uzywam zadnych rozszerzen. czesto zdarzaja sie takie dziwne problemy, ze na kartach jednego typu jakies demko czy cos dziala, a na innych juz nie. i slyszalem ze ogolnie wyglada to tak:
OpenGL -> NVidia
Direct3D -> ATI
mieliscie moze kiedys z tym podobne problemy?

// i tak oto zostalem Hero Member'em :)
Tytuł: Odp: OpenGL vs DirectX
Wiadomość wysłana przez: Koleś w Wrzesień 12, 2006, 13:35:40
Widzę, że ten temat jest wiecznie żywy, możmaby się spierac tak bez końca o to które API jest lepsze. Zanim zacząłem swoją przygodę z 3D czytałem wiele takich topiców, ale jakoś mi nie pomagały, tylko sprawiały, że byłem jeszcze mniej pewny od czego zacząc :P
Teraz mam nieco doświadczenia zarówno w OGL-u, jak i w DirectX-ie, więc może dorzuce również swoje "pięc groszy". Nie przepadam za programowaniem w OpenGL-u bo gdy chcę się czegoś dowiedziec, to muszę szukac w internecie. W przypadku DX-a nie mam takich problem, M$ zadbał o to, żeby wszystko było ładnie opisane w stosownej dokumentacji z gotowymi przykładami do przetestowania.

// EDIT by Q8 - temat to wlasnie teraz ty reanimowales  :P
Tytuł: Odp: OpenGL vs DirectX
Wiadomość wysłana przez: Riddlemaster w Wrzesień 12, 2006, 13:53:10
A ja powiem tak - choć ja sam tworzę w DXie i na OpenGL już raczej nie przejdę (bo musiałbym się uczyć kolejnego API, a w tym czasie coś można stworzyć) to uważam, że ich możliwości są porównywalne. Każde ma swe wady i zalety. Nie ma API doskonałego i nigdy nie będzie. Każdy pisze w tym, w czym jest mu wygodniej.
Tytuł: Odp: OpenGL vs DirectX
Wiadomość wysłana przez: maxest w Wrzesień 12, 2006, 18:36:47
porywnywalne? :) jak na moje to kazde ma takie same ;) no chyba ze mowimy np. o tym ze dx nie ma wbudowanych np. krzywych/powierzchni beziera, ale dla dobrego informatyka-grafika implementacja czegos takiego to raczej nie problem :) ogl i d3d to przeciez tylko dostep do karty graficznej - wiec ostatecznie jedno i drugie to to samo - tylko inaczej zapisane :)
Tytuł: Odp: OpenGL vs DirectX
Wiadomość wysłana przez: SirMike w Wrzesień 12, 2006, 21:31:49
Nie przepadam za programowaniem w OpenGL-u bo gdy chcę się czegoś dowiedziec, to muszę szukac w internecie. W przypadku DX-a nie mam takich problem, M$ zadbał o to, żeby wszystko było ładnie opisane w stosownej dokumentacji z gotowymi przykładami do przetestowania.

Istnieja 2 ksiazki do OpenGL'a oraz cala ogromniasta dokumentacja. Wszystko za darmo w wersji elektronicznej do sciagniecia.
Osobiscie nie widze zeby czegos tam brakowalo :)
Przyklady od MS? ani to kod rewelacyjny ani rendering szybki. Ot tak zeby popatrzec i pocieszyc oko.

PS - nie faworyzuje tu absolutnie zadnego z przedstawionych API. Wyglaszam tylko swoje zdanie na ten temat.
Tytuł: Odp: OpenGL vs DirectX
Wiadomość wysłana przez: maxest w Wrzesień 12, 2006, 23:39:29
Cytuj
Przyklady od MS? ani to kod rewelacyjny ani rendering szybki

no kod wiekszosci przykladow jest wrecz denerwujacy przez to ciagle uzywanie setek funkcji pomociczych napisanych przez programistow tego SDK
Tytuł: Odp: OpenGL vs DirectX
Wiadomość wysłana przez: Koleś w Wrzesień 13, 2006, 00:13:40
Istnieja 2 ksiazki do OpenGL'a oraz cala ogromniasta dokumentacja. Wszystko za darmo w wersji elektronicznej do sciagniecia.
Niby skąd?  :o
Tytuł: Odp: OpenGL vs DirectX
Wiadomość wysłana przez: Krzysiek K. w Wrzesień 13, 2006, 00:21:50
Niby skąd?  :o
Stąd: http://opengl.org/documentation/specs/ :)
Tytuł: Odp: OpenGL vs DirectX
Wiadomość wysłana przez: Mic w Wrzesień 13, 2006, 13:53:11
a jeśli chodzi o książki to zapewne chodzi o slynnego red i blue booka
Tytuł: Odp: OpenGL vs DirectX
Wiadomość wysłana przez: maxest w Wrzesień 13, 2006, 16:27:53
"OpenGL. Księga eksperta. Wydanie III" i "OpenGL. Programowanie gier" :) miejmy nadzieje ze niedlugo ten rynek powiekszy sie o kolejna pozycje ;)
Tytuł: Odp: OpenGL vs DirectX
Wiadomość wysłana przez: Riddlemaster w Wrzesień 13, 2006, 16:33:26
Hehe - nie ma to jak autoreklama ;) A tak swoją drogą kiedy to nastąpi?
Tytuł: Odp: OpenGL vs DirectX
Wiadomość wysłana przez: maxest w Wrzesień 13, 2006, 17:12:37
na razie czekam na odpowiedz od PWN'u. jestem dobrej mysli ;)
w sumie wydanie ksiazki polskiego autora ma wieksze szanse niz zachodniego gdyz nie pociaga za soba dodatkowych kosztow jakie bylyby nieuniknione w przypadku ksiazek zagranicznych. pewnie wlasnie dlatego wydawnictwa nie wydaja wspanialych zachodnich tytulow, a przeciez kolejne pokolenia programistow grafiki trzeba ksztalcic, no nie ;)
Tytuł: Odp: OpenGL vs DirectX
Wiadomość wysłana przez: tS w Październik 07, 2006, 00:29:07
Przyznam się że nie czytałem całego tematu, więc wypowiadam się w związku z tytułem tematu ;]
Mam przedmiot pod tytułem: "Metoda elementów skończonych" i postanowiłem zrobić jakiś większy projekt tak żeby być zwolnionym z egzaminu ;)
Jestem całkowitym laikiem jeśli chodzi o programowanie grafiki 3D i stanąłem przed wyborem właśnie OpenGL i DX.
No cóż.. szybko przeleciałem wzorkiem przykładowe programy oraz tutoriale i jakoś spróbowałem OpenGL, pewnie dlatego że nie przepadam za pisaniem strukturalnym spróbowałem DX i w sumie spasowało mi, a że wolę C# od C++ to próbuję sił z Managed DX. Na razie rzucam mięsem ale jakoś to będzie ;]
Także nie wydaje mi się że łatwiej jest pisać w OGL, czasem to mnie szlag trafia jak na jakiś listing patrzę i nie mogę nic znaleźć.
Wszystko chyba zależy od tego co się lubi i jakie ma sie przyzwyczajenia ;]
Tytuł: Odp: OpenGL vs DirectX
Wiadomość wysłana przez: Riddlemaster w Październik 07, 2006, 11:15:42
Hmm.. na przyszłość lepiej nie odświeżaj tematów tego typu ;)
Tytuł: Odp: OpenGL vs DirectX
Wiadomość wysłana przez: tS w Październik 07, 2006, 12:36:05
Przecież temat jest przyklejony, więc i tak nie zmieni pozycji i nie zabrudzi w tablicy.
Tytuł: Odp: OpenGL vs DirectX
Wiadomość wysłana przez: MadMax w Październik 07, 2006, 12:49:17
tS: nie zrozumiales. Riddlemaster mial raczej na mysli, ze tematy tego typu powoduja bezplodna dyskusje i strate czasu ;)
Tytuł: Odp: OpenGL vs DirectX
Wiadomość wysłana przez: Lobsang Rampa w Październik 28, 2006, 04:34:48
tS, wizualizając wyniki otrzymane z MES, potrzebujesz tylko wyswietlić zbiór trójkatów o wierzchołkach posiadających kolory zalezne od otrzymanych z obliczen wyników np. temperatury czy siły. W OpenGL zajmie to kilkanascie linijek w petli + inicjalizacja (np. GLUT). Więcej pracy zajmie Ci opracowanie samego programu do MES :) Powodzenia :)
Tytuł: Odp: OpenGL vs DirectX
Wiadomość wysłana przez: Koleś w Październik 28, 2006, 23:38:04
Mam przedmiot pod tytułem: "Metoda elementów skończonych" i postanowiłem zrobić jakiś większy projekt tak żeby być zwolnionym z egzaminu ;)
Heh u mnie też był taki przedmiot na którym zajmowaliśmy się metodą elementów skończonych, program miał liczyć rozkład temperatury w ciałach stałych. Dodatkowo zrobiłem program w OpenGL-u, który wczytuje wyniki i robi wizualizację, możecie go pobrać stąd (http://koles.czest.pl/studia/pai/mes.rar).
tS, czy Ty przypadkiem nie jesteś z PCz ?  ;D
Tytuł: Odp: OpenGL vs DirectX
Wiadomość wysłana przez: Reg w Październik 29, 2006, 19:33:29
http://regedit.warsztat.gd/produkcje/programy/mes_viewer.php

To ilu nas tu jest z PCz? :)
Tytuł: Odp: OpenGL vs DirectX
Wiadomość wysłana przez: Koleś w Październik 30, 2006, 09:14:03
http://regedit.warsztat.gd/produkcje/programy/mes_viewer.php
Widzę, że masz w 3D, oj chyba poziom nauczania nam się obniża, my mieliśmy zagadnienie dwu-wymiarowe.
To ilu nas tu jest z PCz? :)
Pewnie sporo  :D
Tytuł: Odp: OpenGL vs DirectX
Wiadomość wysłana przez: QuantumSoul w Listopad 02, 2006, 16:17:30
Regedit może był ambitny i zrobił 3D mimo że pewnie nie musiał :)

A na wykładzie na którym teraz siedze też kolo właśnie omawia MES :) Ale nie jestem z PCz.

tS: nie zrozumiales. Riddlemaster mial raczej na mysli, ze tematy tego typu powoduja bezplodna dyskusje i strate czasu ;)

Przecież nikt nikogo nie zmusza do dyskutowania :) ani nawet do czytania.

Tytuł: Odp: OpenGL vs DirectX
Wiadomość wysłana przez: Koleś w Listopad 04, 2006, 10:48:41
Regedit może był ambitny i zrobił 3D mimo że pewnie nie musiał :)
Nie da się przerobić siatki MES 2D na 3D, rozkład ciepła jest obliczany z innych wzorów.
Tytuł: Odp: OpenGL vs DirectX
Wiadomość wysłana przez: Lobsang Rampa w Listopad 04, 2006, 13:47:48
Cytuj
Nie da się przerobić siatki MES 2D na 3D, rozkład ciepła jest obliczany z innych wzorów.
Nie no, rozkład ciepla w obu przypadkach jest obliczany z tych samych wzorów :) natomiast inaczej wygląda funkcja kształtu, inaczej się buduje równanie macierzowe, zadaje warunki brzegowe itp. przy czym są to róznice niewielkie, bardzo łatwo przerobic program MES w 2D na 3D. Już więcej jest problemow gdy np. trzeba policzyc zgadnienie nieliniowe.

PS. Też jestem z PCz :)
Tytuł: Odp: OpenGL vs DirectX
Wiadomość wysłana przez: Koleś w Listopad 06, 2006, 17:48:54
Dobra, dobra, nie bądźmy tacy mądrzy, właśnie to miałem na myśłi :P
Jak dla mnie (w zasadzie dla wszytkich) PAI to cholernie nudny przedmiot, wszególnie jeśli masz zajęcia ze Szczygą - pewnie wiesz kto to taki, skoro jesteś z PCz :)
Tytuł: Odp: OpenGL vs DirectX
Wiadomość wysłana przez: Reg w Listopad 06, 2006, 18:40:56
Ja ten program do wizualizacji napisałem w 8 dni, tak dla jaj. Natomiast na PANI mieliśmy akurat naprężenia i odkształcenia, 2D of course. Aplikacja była konsolowa, pobierała pliki tekstowe na wejściu i generowała następne na wyjściu, a w środku rozwiązywała układ równań liniowych metodą Gaussa - dopiero kiedy do tego sprowadziły się te wszystkie całki i inne straszydła, to dało się cokolwiek zrozumieć i zakodzić ;)
Tytuł: Odp: OpenGL vs DirectX
Wiadomość wysłana przez: Lobsang Rampa w Listopad 06, 2006, 20:27:54
Cytuj
Jak dla mnie (w zasadzie dla wszytkich) PAI to cholernie nudny przedmiot, wszególnie jeśli masz zajęcia ze Szczygą - pewnie wiesz kto to taki, skoro jesteś z PCz
Niestety jestem z innego wydziału (ten rózowy - pewnie już wiecie który ;D ), ale wiem o kogo biega :) Nie wiem co to za przedmioty PAI i PANI, rozumiem że są związane z obliczeniami w MES. Natomiast czy są to nudy ?, bo ja wiem, fajnie jest napisać program który modeluje fragment otaczajacej nas rzeczywistościi :) Nie wiem czy się ze mna zgodzicie, ale byc może kiedyś MES zawita do świata gier. Wyobrażmy sobie w grze np. stalowy most, przez który przejeżdza czołg, całość sie ugina ale wytrzymuje. Nastepnie podpalamy most, dzieki czemu granica plastyczności stali z której jest wykonany ulega obniżeniu i po przejechaniu drugiego czołgu most się realistycznie zawala :)
Tytuł: Odp: OpenGL vs DirectX
Wiadomość wysłana przez: Reg w Listopad 07, 2006, 10:47:30
Kiedyś? Nie grałeś chyba w Pontiflex (http://www.chroniclogic.com/index.htm?pontifex.htm) ani BridgeIt (http://www.chroniclogic.com/index.htm?bridgeit.htm) :)
Tytuł: Odp: OpenGL vs DirectX
Wiadomość wysłana przez: Lobsang Rampa w Listopad 07, 2006, 12:16:45
Kiedyś? Nie grałeś chyba w Pontiflex (http://www.chroniclogic.com/index.htm?pontifex.htm) ani BridgeIt (http://www.chroniclogic.com/index.htm?bridgeit.htm) :)
Dobra poddaje się :) ten most to tylko taki przykład był (chociaż w tym programach które przedstawiłeś nie jest chyba uwzgledniony wpływ temperatury), niech to bedzie w takim razie budynek który samoistnie się zawala po wywołaniu w nim sporego pożaru, jak to było np.w World Trade Center :) generalnie w tym przykłądzie chodziło mi o uwzglednienie wpływu temperatury na własności materiału. Mozna oczywiście znaleźć inne zastosowania MES-u w grach, chocby bardzo realistyczne zachowanie płynu, w tej chwili w grach sa stosowane modele uproszczone. No ale nie chce tutaj offtopować, może założyc taki temat: "Zastosowanie MES w grach w komputerowych" ?
Tytuł: Odp: OpenGL vs DirectX
Wiadomość wysłana przez: Lobsang Rampa w Listopad 11, 2006, 02:49:15
Wygląda na to, że w niesmiertelnej wojnie OpenGL vs DirectX ten pierwszy uzyskał ogromne wsparcie :)

W odpowiedzi na zapowiadany Directx 10, OpenGL wyposażony został w obsługe funkcji które dopiero sie pojawią wraz DX 10 ! miedzy innymi shadery w wersji 4.0 i co najwazniejsze obsługe shaderów geometrii !

Wynika z tego, ze jeszcze przed wypuszczeniem Visty, bedzie można uzywać tych technologii i co więcej bedzie to możliwe również pod Linuksem !

Więcej informacji można znaleźć pod http://www.linux.pl/?id=news&show=3503 no i na stronie NVidii http://developer.nvidia.com/object/nvidia_opengl_specs.html.

Na razie nowe funkcje sa dostepne w formie rozszerzeń ARB do OpenGL 2.1 potem pewnie wejda do nowej wersji OpenGL, może to bedzie zapowadany OpenGL 3.0 ? Mysle, że wprowadzone zmiany uzasadniałyby by tak znaczną zmiane numeru wersji :)

OpenGL Rulez :)
Tytuł: Odp: OpenGL vs DirectX
Wiadomość wysłana przez: maxest w Listopad 11, 2006, 03:18:51
Cytuj
W odpowiedzi na zapowiadany Directx 10, OpenGL wyposażony został w obsługe funkcji które dopiero sie pojawią wraz DX 10 ! miedzy innymi shadery w wersji 4.0 i co najwazniejsze obsługe shaderów geometrii !
sie podniecasz niepotrzebnie :) powiedz mi ktora karta (dostepna dla zwyklego smiertelnika) oblsuguje shader'y 4.0? :) nawet jesli to jest juz dostepne to i tak nie ma sensu mowic ze cos jest lepsze bo ma cos, co i tak do zycia wejdzie tak naprawde za kilka miesiecy.
moge teraz sie mylic (pozno juz a ja od 18h nie spalem) ale OGL i D3D maja jakies specyficzne funkcje ktorych zadna karta jeszcze nie obsluguje - czy cos w tym stylu :)
Tytuł: Odp: OpenGL vs DirectX
Wiadomość wysłana przez: Robert B. w Grudzień 11, 2006, 01:10:59
Witam troche czytałem tutaj postów ale wtrące i swoje grosze.
Mam pytanie dotyczący + i - stworzenia silnika graficznego do gry cRPG pod OpenGL i czy warto w to inwestować, biorąc pod uwagę że wszyscy robią na tym cholernym (nikogo nie kopiąc) DIRECTX.
W silniku przydało by się:
dobre przedstawienie świata:P
-anomalie pogodowe.
-jakiś render (dobry).
-dobra głebia obrazu.
-No i wydajność.
-Ładna woda.
Co do reszty tych standardowych funkcji to nie ma sensu się rozpisywać.
Tytuł: Odp: OpenGL vs DirectX
Wiadomość wysłana przez: novo w Grudzień 11, 2006, 03:25:22
Musisz to wszystko sam napisac, a czego uzyjesz do wyswietlania nie ma znaczenia. API OpenGL/DirectX jest nizszego poziomu niz featursy ktore wymieniles.

Pozdr.
novo.
Tytuł: Odp: OpenGL vs DirectX
Wiadomość wysłana przez: Humman w Luty 02, 2007, 18:49:09
Teraz oba systemy mają podobne możliwości choć jak patrzeć na nowe gry to directx jest popularniejszy.
Ale w przyszłości gdy directx 10 diała tylko na windows vista a już nie na xp, co zmniejszy grono potencjalnych odbiorców gier go wykorzystujących .Bo ludzie raczej pozostaną przy xp bo vista nie
dość ze ma dużo wyższe wymagania co się odbje na ogólnej wydajności kompa bo SO chodzi cały czas w
kompem  no i vista podobno bedzie mogła kasować w tle pliki multimediów podejżane wg systemu że są
pirackie i blokować podobne programy microsoftu. Wogóle cały system bedzie najeżony programami
szpiegujacym czy aby użytkownik nie złamał prawa, pewnie  z czasem przerobią system ale cała ta
restrykcyjna polityka microsoftu może tylko pomóc linuksowi i obsługiwanym na nim open gl. 

pzdr
Tytuł: Odp: OpenGL vs DirectX
Wiadomość wysłana przez: novo w Luty 02, 2007, 19:16:51
Vista to jeden wielki DRM, do tego wymagania ma kosmiczne. IMO na dzien dzisiejszy nie ma najmniejszego sensu zmiana XP na Viste(no chyba ze ktos bardzo lubi rozne wodotryski). Niestety MS raczej na cos takiego nie pozwoli i beda robili wszystko, zeby ludzie zostawili XP i zainstalowali Viste, a mozliwosci($) maja dosc spore. Co do przechodzenia na linuxa to watpie, ale moze OGL na tym troche zyska, bo to na razie jedyne API graficzne na winXP z obsluga SM4
Tytuł: Odp: OpenGL vs DirectX
Wiadomość wysłana przez: Riko w Luty 16, 2007, 20:02:45
OpenGL wg mnie*:

OpenGL jest łatwy.
OpenGL nie jest obiektowy, ale dzięki temu posiada wiele language binding'ów.
O OpenGL jest więcej książek**
OpenGL posiada wersję na urządzenia mobilne (OpenGL ES) oraz na praktycznie wszystkie współczesne OS'y.
Jestem zmuszony korzystać z OpenGL'a..


** na dzień dzisiejszy jest więcej wyników wyszukiwań dla "opengl" niż dla "direct3d" w księgarni helion.pl ;-P
** co może świadczyć o jego większej popularności ;-)

Natomiast Direct3D/DirectX wśród zalet ma napewno dodatkowe miejsca zatrudnienia dla programistów w różnych firmach (a głównie w tej Jedej ;-)

* macie rację, ta wojna nie ma sensu...

pzdr.
Tytuł: Odp: OpenGL vs DirectX
Wiadomość wysłana przez: Charibo w Luty 16, 2007, 21:06:46
Przeciez to nie ma znaczenia czym sie renderuje! Klasy do wczytywania modeli sa takie same dla wszystkiego, operacje macierzowe sie roznia troche ale lekko...

Jeden pies to jest tak naprawde (pomijajac juz kwestie, ze dla mnie "latwiejszy" jest DirectX, ma bardziej sensowne api IMO)
Tytuł: Odp: OpenGL vs DirectX
Wiadomość wysłana przez: Kurak w Luty 16, 2007, 21:13:38
Przeciez to nie ma znaczenia czym sie renderuje! Klasy do wczytywania modeli sa takie same dla wszystkiego, operacje macierzowe sie roznia troche ale lekko...
W komercyjnych, dużych projektach gier chyba ma znaczenie - pomyśl: wychodzi zapowiedź gry, potencjalni gracze rzucają się na zapowiedź, patrzą na wymagania minimalne: "nie ma wersji DirectX'a - pewnie jadą na starym, więc <screeny> to tylko rendery, olewam tę grę" :) <= To spowodowane tym, że duża część graczy nawet nie wie, co to jest OpenGL :)
Tytuł: Odp: OpenGL vs DirectX
Wiadomość wysłana przez: Real_Noname w Luty 16, 2007, 21:53:17
Przeciez to nie ma znaczenia czym sie renderuje! Klasy do wczytywania modeli sa takie same dla wszystkiego, operacje macierzowe sie roznia troche ale lekko...
W komercyjnych, dużych projektach gier chyba ma znaczenie - pomyśl: wychodzi zapowiedź gry, potencjalni gracze rzucają się na zapowiedź, patrzą na wymagania minimalne: "nie ma wersji DirectX'a - pewnie jadą na starym, więc <screeny> to tylko rendery, olewam tę grę" :) <= To spowodowane tym, że duża część graczy nawet nie wie, co to jest OpenGL :)
Wątpie, żeby tacy gracze wiedzieli co to jest render :]. Ja wśród forów na temat gier spotkałem się z takimi przypadkami, że nie odróżniali tekstury od mesha O_o

Poza tym - autorzy gier opartych na OpenGL zwykle podają wymaganą wersje DX obok OGL - (z różnych powodów, ale w niektórych dla totalnej ściemy :], np. NWN)
Tytuł: Odp: OpenGL vs DirectX
Wiadomość wysłana przez: maxest w Luty 16, 2007, 22:27:06
Cytuj
Poza tym - autorzy gier opartych na OpenGL zwykle podają wymaganą wersje DX obok OGL - (z różnych powodów, ale w niektórych dla totalnej ściemy :], np. NWN)
a czasmi naprawde ten directx jest wykorzystywany - glownie dinput i dsound -> pewnie dlatego zeby nie byc i nie czuc oszustami a jednoczesnie wymagac tego DirectX'a 9.0c bo to jest "jezzy", "trendy" itd :D (niedlugo moze juz 10.0...)
Tytuł: Odp: OpenGL vs DirectX
Wiadomość wysłana przez: Krzysiek K. w Luty 17, 2007, 00:57:02
a czasmi naprawde ten directx jest wykorzystywany - glownie dinput i dsound -> pewnie dlatego zeby nie byc i nie czuc oszustami a jednoczesnie wymagac tego DirectX'a 9.0c bo to jest "jezzy", "trendy" itd :D (niedlugo moze juz 10.0...)
DirectX'a 9.0c wymaga nawet obracający się trójkącik z DirectX SDK. Bez zainstalowanego DirectX'a po prostu program się nie uruchomi, bo będzie my brakowało jakichś bibliotek. :)
Tytuł: Odp: OpenGL vs DirectX
Wiadomość wysłana przez: maxest w Luty 17, 2007, 02:23:44
no w sumie tez prawda - ale zeby w taki sztuczny sposob wymagac direct3d 9 (najlepiej po prostu "sprobowac" zainicjowac urzadzenie d3d) od uzytkownika to jest po prostu kretynizm ^^
Tytuł: Odp: OpenGL vs DirectX
Wiadomość wysłana przez: Krzysiek K. w Luty 17, 2007, 04:15:29
no w sumie tez prawda - ale zeby w taki sztuczny sposob wymagac direct3d 9 (najlepiej po prostu "sprobowac" zainicjowac urzadzenie d3d) od uzytkownika to jest po prostu kretynizm ^^
Nie widzę tutaj akurat żadnego problemu. Jedyne, co użytkownik musi zrobić, to zainstalować DirectX'a, który zazwyczaj jest dołączany do płyty z grą oraz zainstalować drivery karty graficznej, bez czego większość gier i tak by sensownie nie chodziła. :)
Tytuł: Odp: OpenGL vs DirectX
Wiadomość wysłana przez: maxest w Luty 17, 2007, 13:18:57
ale to w ogole bez sensu jest zeby wymagac direct'a ktory i tak nie jest wymagany... :)
no chyba ze ci "uzytkownicy" faktycznie "Myślą" ze jak gra wymaga direct'a to jest cool :D
Tytuł: Odp: OpenGL vs DirectX
Wiadomość wysłana przez: Riko w Luty 17, 2007, 13:26:02
Przyznajmy się wszyscy razem - każdy chwali to, czego używa...

--

Poza tym - autorzy gier opartych na OpenGL zwykle podają wymaganą wersje DX obok OGL - (z różnych powodów, ale w niektórych dla totalnej ściemy :], np. NWN)
Może używają DX do dźwięku lub sieci :-)
Tytuł: Odp: OpenGL vs DirectX
Wiadomość wysłana przez: Matt w Luty 24, 2007, 22:40:50
ja zaczynam od DX - ale mysle ze OGL jest lepszy - jak patrzylem na przyklady jakos bardziej przypadl mi do gustu... ;)
Tytuł: Odp: OpenGL vs DirectX
Wiadomość wysłana przez: hans_ w Luty 24, 2007, 22:43:19
ja zaczynam od DX - ale mysle ze OGL jest lepszy - jak patrzylem na przyklady jakos bardziej przypadl mi do gustu... ;)

Ja od zwolennika OpenGL i przeciwnika DX przeszedlem metamorfoze i stalem sie neutralny
ja uzywam OpenGL tylko dlatego ze od niego zaczalem i znam go dosc dobrze i niechce mi sie nic przerabiac, ale teraz API DX wydaje mi sie bardziej przejrzyste i jesli DX9.0 bylby 5 lat temu to pewnie bym uzywal wlasnie jego,
a druga sprawa to to, ze OGL stal sie strasznie zabalaganiony przez rozszerzenia ktorych jest coraz wiecej i ktore dzialaja w rozny sposob na roznych kartach
Tytuł: Odp: OpenGL vs DirectX
Wiadomość wysłana przez: maxest w Luty 24, 2007, 23:14:11
i ja jestem neutralny. zaczynalem od ogl'a ale teraz jednak przesiade sie na dx'a glownie z powodu rozszerzen. ogl choc z poczatku jest duzo prostszy (moja subiektywna opinia) to jednak po blizszym zapoznaniu z obydwoa interfejsami dx zdaje sie byc bardziej przejrzysty (oczywiscie jak dla mnie)
druga sprawa jest taka, ze jesli ktos kto dobrze zna sie ogolnie na grafice 3d, nie bedzie dla niego wiekszej roznicy w czym ma kodzic :)
Tytuł: Odp: OpenGL vs DirectX
Wiadomość wysłana przez: KrystianD w Marzec 10, 2007, 22:33:57
A więc pozwólcie, że ja też wtrące swoje 3 grosze :)

Jak zaczynałem programować grafikę 3D porównując dowolny kod DirectX'a i OGL'a rzecz jasna OGL wydawał się dużo prostszy i bardziej przejrzysty. No więc pod C++ dla WinAPI pisałem w OGL'u i nie moge powiedzieć, żebym miał z nim jakieś przykre doświadczenia ;) naprawde jak na początek (i nie tylko) bardzo przyzwoita biblioteka.

Teraz przerzucam się na C#, oczywiście pierwsze co robie, próbując zaprogramować jakąś graficzke 3d, szukam OGL'a dla C#, jest fajnie, ściągam sobie biblioteke OGL'a dla C#, z jakiegoś tutka próbuję coś napisać, a tu patrze, że mam jakieś dziwaczne dziedziczenia żeby utworzyć prostą aplikacje OGL (OpenGL jest kontrolką, którą trzeba override'ować). Dużo w tym nie napisałem, jak gdzieś zobaczyłem tutek DirectX'a dla C#. Pare linijek, aby utworzyć urządzenie, żadnego dziedziczenia, mase przydatnych funkcji/klas (typu Matrix/Vector3/Quaternion itp), wszystko poukładane w klasy (czasem nie mając pojęcia jaką funkcję użyć wystarczy dać kropke i wybrać funkcje (do każdej funkcji na bierząco mamy opis, parametry, ogólnie fajnie <-- z tego co pamiętam, w OGL'u dla C# tego nie było)). Tak więc zostałem przy DirectX'ie dla C#. I jeszcze w sumie dość ważna sprawa, do OGL'a trzeba dołączać dodatkową bilbiotekę i trzymać ją obok pliku wykonywalnego, co jest przecież niedopuszczalne przy robieniu silnika graficznego (nieciekawie by wyglądał plik DLL silnika i obok niego bilblioteka OGL'a).

Tak więc podsumowując:
C++ - OpenGL (jakby nie było - prostszy)
C# - DirectX
(oczywiście, to tylko moja opinia i nikomu nic nie narzucam :))

To tak skromnie odemnie :D
Tytuł: Odp: OpenGL vs DirectX
Wiadomość wysłana przez: Charibo w Marzec 10, 2007, 22:51:02
Cytuj
C++ - OpenGL (jakby nie było - prostszy)
Jako user DirectXa (znam ogla tylko troche) nie sadze zeby byl prostszy od DXa.
Wady OGL wedlug mnie:

Wymieniwszy wady GL'a wymienie zalety DirectX:

Jedyne czego mi brakuje w DirectXie to takie community jakim moze sie pochwalic OGL (nehe i te sprawy). Ale z drugiej strony mamy MSDN'a :)

[1] Ale na sieci z dziwnych wzgledow wiecej source'ow jest dla OGL'a, co ciekawe
[2] Kiedys cos tam slyszalem o OpenGL 2.0, ale nie wiem co i jak z tym. Moze tam to jest sensownie zrobione
[3] To jest wazna cecha dla begginerow - napisanie wlasnych loaderow, exporterow i importerow (co jest konieczne przy OGLu) moze byc dla nich klopotliwe (jezeli postanowia zrobic cos ambitniejszego niz copy-paste z NeHe :) )
Tytuł: Odp: OpenGL vs DirectX
Wiadomość wysłana przez: Krzysiek K. w Marzec 10, 2007, 22:57:27
Cytuj
Wady OGL wedlug mnie:
    * przekombinowany(vide: glBegin, glEnd)
glBegin i glEnd na dobrą sprawę w OpenGL nie powinno być wogóle, bo tylko promują złe nawyki i lenistwo. :)
Tytuł: Odp: OpenGL vs DirectX
Wiadomość wysłana przez: Kurak w Marzec 10, 2007, 22:58:34
IMO początkujący uważają OpenGL za łatwiejszy od Direct3D głównie z powodu popatrzenia tylko na źródła typowego Hello Worlda - obracającego się trójkąta. I kod takowego w OpenGLu jest rzeczywiście prostszy (użycie glVertex3f czy jak to się zwało) niż w Direct3D (najprostszy ze sposobów to DrawPrimitiveUP który jest chyba podobny do list z OpenGLa - nie wiem, nie używałem, przez co automatycznie "trudniejszy" od glVertex3f). Dopiero potem, wraz ze wzrostem skomplikowania oczekiwanych efektów, wzrasta te skomplikowanie kodu w OpenGL doganiając Direct3D, a potem to idą równo :)
Aha. Ja używam dwóch rendererów :)
Tytuł: Odp: OpenGL vs DirectX
Wiadomość wysłana przez: tommyz w Marzec 11, 2007, 00:06:49
Cytuj
Wady OGL wedlug mnie:
    * przekombinowany(vide: glBegin, glEnd)
glBegin i glEnd na dobrą sprawę w OpenGL nie powinno być wogóle, bo tylko promują złe nawyki i lenistwo. :)

I tam ;).
Są bardzo eleganckie i o ile do real-time'u nie są dobre, o tyle są idealne do kompilowania batchów(glNewList i spółka).
Tytuł: Odp: OpenGL vs DirectX
Wiadomość wysłana przez: Wiadomo w Marzec 11, 2007, 02:00:40
wysoko zoptymalizowane biblioteki (D3DX) do wczytywania modeli, textur, matematyczna itp.
Znosnie... bardzo znosnie zoptymalizowana... Nienawidze biblioteki D3DX, ale D3D kocham =P
Tytuł: Odp: OpenGL vs DirectX
Wiadomość wysłana przez: hans_ w Marzec 11, 2007, 03:12:41
wysoko zoptymalizowane biblioteki (D3DX) do wczytywania modeli, textur, matematyczna itp.
Znosnie... bardzo znosnie zoptymalizowana... Nienawidze biblioteki D3DX, ale D3D kocham =P
DX jest fajny bo jest usystematyzowany, podzielony w rozne sekcje, zgrupowany, opisany linia po lini cale api, i zapakowany w api opisane szkolnym jezykiem. typowa komercja.
ogl jest za to bardziej elegancki i nie wymaga tworzenia niczego dodatkowego co nie jest niepotrzebne,
mniejszy kod, ladniejsza grafa
Tytuł: Odp: OpenGL vs DirectX
Wiadomość wysłana przez: novo w Marzec 11, 2007, 05:48:20
Jaka ladniejsza grafa? Grafa zalezy od karty i monitora, nie od API. Nie pisz bzdur, bo jeszcze ludziom w glowach namieszasz.
Tytuł: Odp: OpenGL vs DirectX
Wiadomość wysłana przez: matyssek w Marzec 11, 2007, 11:04:53
wysoko zoptymalizowane biblioteki (D3DX) do wczytywania modeli, textur, matematyczna itp.
Znosnie... bardzo znosnie zoptymalizowana... Nienawidze biblioteki D3DX, ale D3D kocham =P
ogl jest za to bardziej elegancki i nie wymaga tworzenia niczego dodatkowego co nie jest niepotrzebne,
mniejszy kod, ladniejsza grafa
Elegancki - co kto lubi, ja np. wolę obiektowe API (Direct3D). No i te rozszerzenia też dodają mu splendoru :P
pozdrawiam

PS. Ładniejsza grafa - lol, niezły tekst :P
Tytuł: Odp: OpenGL vs DirectX
Wiadomość wysłana przez: Asmodeusz w Marzec 11, 2007, 11:26:50
Na DirectX i OpenGL trzeba spojrzeć z dwóch stron: jako koder i jako typowy gracz.

Zaczynając od gracza sprawa jest prosta: Windows XP domyślnie wspiera tylko okrojone OpenGL, Vista nie wspiera sprzętowego wcale, więc znacznie prościej jest uruchomić grę w DirectX, które to na Microsoftowskich sterownikach pod Vistą osiągają 5% wzrost FPS w porównaniu ze sterownikami ATi - bawienie się z OGL może niejednego gracza zniechęcić. DX : OGL = 1:0

Teraz spojrzenie ze strony kodera, czyli kolejny głos w dyskusji:
Sam używam DirectX, które to znacznie lepiej znam niż OpenGL, więc wybaczcie mi moją jedynie podstawową znajomość realiów kodzenia OpenGL - lib znam wyłącznie z dokumentacji i przykładów. Krótkie podsumowanie znanych mi różnic:

Żeby nie wydawać jednogłośnego wyroku wybiję z rąk zwolennikom OGLa ich główny argument: DirectX jest w pełni darmowy (używanie biblioteki przez programistę jest na zasadach zbliżonych do tzw. licencji "liberalnej BSD" - można używać komercyjnie bez informowania o fakcie istnienia tam DX), a na argument "Windows kosztuje" odpowiem kontrargumentem: jeśli ktoś był w stanie wydać x tys. PLN na sprzęt, na którym ruszy gra, mógł w jego koszty wliczyć też system, na którym ma ruszyć gra. Płacąc 5000PLN za komputer dołożenie 300PLN na legalnego windowsa (Vista home basic) to przecież nie fortuna - nawet nie 10% ceny komputera. Tym oto akcentem kończę moją wypowiedź i czekam na baty z obu stron :)
Tytuł: Odp: OpenGL vs DirectX
Wiadomość wysłana przez: mosowski w Marzec 11, 2007, 12:02:09
Argument osoby piszącej gry (nie silniki): Większość gotowych silników kładzie nacisk na sterownik Direct3d ( wystarczy spojrzeć na takiego Ogre czy Irrlichta - różnica szybkości pomiędzy OGL a D3D jest kolosalna, szczególnie w tym pierwszym).
Tytuł: Odp: OpenGL vs DirectX
Wiadomość wysłana przez: Kurak w Marzec 11, 2007, 12:03:06
Cytuj
OpenGL jest wieloplatformowy, w przeciwieństwie do DX. Więc jeśli nie zaśmiecimy OGLowego kodu czymś w rodzaju WinAPI/DirectInput, kod przy drobnych poprawkach będzie się dało przenosić pomiędzy Windows, linuxem, BSD itd. DX : OGL = 2:1
Tak, tylko że w DirectX możesz pisać na xbox :) Więc wieloplatformowość jest. A chociaż jest OpenGL ES, w którym możesz pisać na którąś inną konsolę, to jednak to nie jest wieloplatformowość w tym wypadku, bo OpenGL ES to nie OpenGL :) A IMO wieloplatformowość Windows na PC <--> konsola jest ważniejsza niż przenośność między systemami. Bo kto tak na prawdę gra na Linuksach?
Tytuł: Odp: OpenGL vs DirectX
Wiadomość wysłana przez: hans_ w Marzec 11, 2007, 12:12:12
Jaka ladniejsza grafa? Grafa zalezy od karty i monitora, nie od API. Nie pisz bzdur, bo jeszcze ludziom w glowach namieszasz.
wystarczy mi 10 sek zeby poznac czy gra jest na ogl czy dx, obiekty w dx sa jakies puste i kolory sa bardziej metaliczne, ogl ma grafike bardziej jakas bardziej ciepla blizsza rzeczywistosci, obiekty nie wygladaja pusto i kolory sa ladniejsze i to nie zalezy od grafika, zreszta to nie tylko moja wypowiedz bo czasami mozna w internecie poczytac wypowiedzi programistow z USA

Cytuj
Elegancki - co kto lubi, ja np. wolę obiektowe API (Direct3D). No i te rozszerzenia też dodają mu splendoru :P
pozdrawiam
Elegancki a obiektowosc nie zawsze ma cos wspolnego  z elegancja, quake 1 /na samym c!/ jest uwazany za najbardziej elegancki silnik na swiecie, zreszta google.com sluzy
Tytuł: Odp: OpenGL vs DirectX
Wiadomość wysłana przez: Wiadomo w Marzec 11, 2007, 12:21:51
Argument osoby piszącej gry (nie silniki): Większość gotowych silników kładzie nacisk na sterownik Direct3d ( wystarczy spojrzeć na takiego Ogre czy Irrlichta - różnica szybkości pomiędzy OGL a D3D jest kolosalna, szczególnie w tym pierwszym).
Zalezy od sterownikow =]


wystarczy mi 10 sek zeby poznac czy gra jest na ogl czy dx, obiekty w dx sa jakies puste i kolory sa bardziej metaliczne, ogl ma grafike bardziej jakas bardziej ciepla blizsza rzeczywistosci, obiekty nie wygladaja pusto i kolory sa ladniejsze i to nie zalezy od grafika, zreszta to nie tylko moja wypowiedz bo czasami mozna w internecie poczytac wypowiedzi programistow z USA
Ta, podobno OGL lepiej sobie radzi z kolorkami.
Tytuł: Odp: OpenGL vs DirectX
Wiadomość wysłana przez: Krzysiek K. w Marzec 11, 2007, 12:56:10
Cytuj
znacznie prościej jest uruchomić grę w DirectX
Sory, ale jakoś nikt nie ma problemu z uruchamianiem Quake'a 3. :)
Tytuł: Odp: OpenGL vs DirectX
Wiadomość wysłana przez: mINA87 w Marzec 11, 2007, 13:13:18
Cytuj
znacznie prościej jest uruchomić grę w DirectX
Sory, ale jakoś nikt nie ma problemu z uruchamianiem Quake'a 3. :)

Taaa ?
No to odpal sobie quake'a na S3, albo porozmawiaj z przeciętnym debilem-użytkownikiem który jest na tyle samodzielny by zainstalować sobie Win XP. Wiele razy przerabiałem to, że komuś SOF, Quake, czy inne cudo na engine'ie Q3 nie działało, bo nie wpadł na pomysł zainstalowania driverów.
Tytuł: Odp: OpenGL vs DirectX
Wiadomość wysłana przez: maxest w Marzec 11, 2007, 13:49:31
Cytuj
wystarczy mi 10 sek zeby poznac czy gra jest na ogl czy dx, obiekty w dx sa jakies puste i kolory sa bardziej metaliczne, ogl ma grafike bardziej jakas bardziej ciepla blizsza rzeczywistosci, obiekty nie wygladaja pusto i kolory sa ladniejsze i to nie zalezy od grafika, zreszta to nie tylko moja wypowiedz bo czasami mozna w internecie poczytac wypowiedzi programistow z USA
tja... Half Life 2 i F.E.A.R. grafika wymiekaja przy Quake'u 4... nie wspomne juz o Gears of War... tam grafika zupelnie nie podobna do rzeczywistosci ^^

a to ze programisci sa z USA raczej nie jest duzym wyznacznikiem ich umiejetnosci...
Tytuł: Odp: OpenGL vs DirectX
Wiadomość wysłana przez: mINA87 w Marzec 11, 2007, 14:09:06
Co za idiotyzm, żeby twierdzić, że OGL lepiej sobie radzi z barwami.... Gratuluje pomysłu. Odpaliłem OGRE'a w Dx'ie i OGL'u - widać "różnice" heh. Jedyny problem jest taki, że nie udało mi się odpalić HDRu pod tym cudownym OGLem :O Nie wiem why, shadery się ładnie skompilowały, jedzie z FBO, więc powinno być wszystko pięknie ładnie a tu 0 FPSów i taki shit..
DX LDR
(http://img144.imageshack.us/img144/8342/dx1cg7.th.jpg) (http://img144.imageshack.us/my.php?image=dx1cg7.jpg)
DX HDR
(http://img340.imageshack.us/img340/9495/dx2fq7.th.jpg) (http://img340.imageshack.us/my.php?image=dx2fq7.jpg)
OGL LDR
(http://img340.imageshack.us/img340/518/opengl1jm9.th.jpg) (http://img340.imageshack.us/my.php?image=opengl1jm9.jpg)
OGL HDR
(http://img340.imageshack.us/img340/9317/opengl2sp0.th.jpg) (http://img340.imageshack.us/my.php?image=opengl2sp0.jpg)
Tytuł: Odp: OpenGL vs DirectX
Wiadomość wysłana przez: hans_ w Marzec 11, 2007, 14:30:22

bardzo dobrze, ze zrobiles porownanie...
mimo, ze scena jest szaro-bura, a mowimy o tescie kolorow /celowe?/ to spojrzcie na screeny ktore powiekszylem i zaznaczylem miejsca warte sprawdzenia /NIC NIE ROBILEM ZE SCREENAMI SAMI SOBIE POWIEKSZCIE/
dx-directx
ogl-opengl
roznice sa w jakosc i kanciastosci renderowanych kolorow. ale to powinno byc sprawdzane w ruchu, w grze a nie jednym screenem ale roznice sa.
Tytuł: Odp: OpenGL vs DirectX
Wiadomość wysłana przez: hans_ w Marzec 11, 2007, 14:42:03
sorry te screeny bardziej to pokazuja
Tytuł: Odp: OpenGL vs DirectX
Wiadomość wysłana przez: mINA87 w Marzec 11, 2007, 14:45:18
hans - dokładnie jak mówi st3tc. Ja tam patrze na te Twoje zaznaczenia i nie widzę żadnej różnicy w sumie :P Może jestem ślepy, ale z lupą nie będę robił pixel-exact match - w końcu chodzi nam o ISTOTNE I WIDOCZNE RÓŻNICE, a nie jakieś artefakty cieni!! Scena nie jest szarobura - masz precelka na środku który jest kolorowy - ogólnie w odcieniach żółci. Mogę pobawić się i inne przykłady poodpalać, na jedno wyjdzie :] Różnic nie ma, i jak inaczej chcesz porównać? Na żywo wygląda to dokładnie tak samo. Ponadto - wyjaśnij mi jedno - w jaki sposób dokonujesz porównania? :] Odpalasz HL'a2 a później Quake'a 4 i mówisz że w Quake'u 4 się wszystko bardziej świeci, więc OGL jest lepszy?
Tytuł: Odp: OpenGL vs DirectX
Wiadomość wysłana przez: hans_ w Marzec 11, 2007, 14:46:36
hans - dokładnie jak mówi st3tc. Ja tam patrze na te Twoje zaznaczenia i nie widzę żadnej różnicy w sumie :P Może jestem ślepy, ale z lupą nie będę robił pixel-exact match - w końcu chodzi nam o ISTOTNE I WIDOCZNE RÓŻNICE, a nie jakieś artefakty cieni!! Scena nie jest szarobura - masz precelka na środku który jest kolorowy - ogólnie w odcieniach żółci. Mogę pobawić się i inne przykłady poodpalać, na jedno wyjdzie :] Różnic nie ma, i jak inaczej chcesz porównać? Na żywo wygląda to dokładnie tak samo. Ponadto - wyjaśnij mi jedno - w jaki sposób dokonujesz porównania? :] Odpalasz HL'a2 a później Quake'a 4 i mówisz że w Quake'u 4 się wszystko bardziej świeci, więc OGL jest lepszy?
jak kto woli... mnie takie roznice delikatnie mowiac denerwuja.
Tytuł: Odp: OpenGL vs DirectX
Wiadomość wysłana przez: mINA87 w Marzec 11, 2007, 14:58:36
hans - dokładnie jak mówi st3tc. Ja tam patrze na te Twoje zaznaczenia i nie widzę żadnej różnicy w sumie :P Może jestem ślepy, ale z lupą nie będę robił pixel-exact match - w końcu chodzi nam o ISTOTNE I WIDOCZNE RÓŻNICE, a nie jakieś artefakty cieni!! Scena nie jest szarobura - masz precelka na środku który jest kolorowy - ogólnie w odcieniach żółci. Mogę pobawić się i inne przykłady poodpalać, na jedno wyjdzie :] Różnic nie ma, i jak inaczej chcesz porównać? Na żywo wygląda to dokładnie tak samo. Ponadto - wyjaśnij mi jedno - w jaki sposób dokonujesz porównania? :] Odpalasz HL'a2 a później Quake'a 4 i mówisz że w Quake'u 4 się wszystko bardziej świeci, więc OGL jest lepszy?
jak kto woli... mnie takie roznice delikatnie mowiac denerwuja.

LOL... Przecież taki rozrzut to coś naturalnego... AA połowę takich pierdół zamaskuje.. No lol po prostu.. "Lepsza grafika" - "OpenGL stawia średnio 4 na ekran piksle lepiej od DX'a"..W każdą grę grasz z lupą?
Tytuł: Odp: OpenGL vs DirectX
Wiadomość wysłana przez: Krzysiek K. w Marzec 11, 2007, 15:32:29
Cytuj
Wiele razy przerabiałem to, że komuś SOF, Quake, czy inne cudo na engine'ie Q3 nie działało, bo nie wpadł na pomysł zainstalowania driverów.
Bez Driverów to i Direct3D nie pociągnie. :P

Cytuj
(nvidia lubi np "optymalizować" rendering zmniejszając jakość tekstur itp)
ATI też sobie "optymalizuje" tu i tam, tyle że im to gorzej wychodzi. :)
Tytuł: Odp: OpenGL vs DirectX
Wiadomość wysłana przez: Asmodeusz w Marzec 11, 2007, 16:27:19
Cytuj
Wiele razy przerabiałem to, że komuś SOF, Quake, czy inne cudo na engine'ie Q3 nie działało, bo nie wpadł na pomysł zainstalowania driverów.
Bez Driverów to i Direct3D nie pociągnie. :P

Oczywiście, ale drivery obsługujące DX masz domyślnie w WinXP i Vista, do OGL nie. A zdecydowana większość gier komercyjnych na PC (nie wiem, 95%? 99%?) podobno jest pisana pod Windows. :]
Q3 engine to zupełnie inna sprawa - równie dobrze wyglądające gry spokojnie działały na zintegrowanej karcie ATi Rage Pro 8MB, dopiero Jedi Knight 2 (na tym engine) wymusił na mnie i kumplu wymianę karty (ja) i komputera (kumpel) - ot, cała prawda o OGL: albo masz odpowiedni sprzęt, albo nie włączysz. DX9 na Viście usiłował emulować programowo SM4.0 gdy stwierdził, że mam sprzęt z tylko SM 2.0 :]
Tytuł: Odp: OpenGL vs DirectX
Wiadomość wysłana przez: maxest w Marzec 11, 2007, 17:28:51
a jak dzialala ta emulacja? :)
bo jesli przy emulacji dostajesz powiedzmy 10 fps to raczej nie bardzo chce sie grac i sprzet i tak trzeba wymienic ;)
Tytuł: Odp: OpenGL vs DirectX
Wiadomość wysłana przez: snakeo w Marzec 15, 2007, 01:46:00
Z moich obserwacji wynika ze OpenGL jest prostszy w nauce od DX, przenośność to tylko fikcja, bo kto gra pod linuxem, większość gier powstaje pod windowsa, dx ma bezpośredni dostęp do HAL, ciężko mi powiedzieć co lepsze, wydaje mi się, że najlepiej znać to i to :)
Tytuł: Odp: OpenGL vs DirectX
Wiadomość wysłana przez: novo w Marzec 15, 2007, 03:52:33
Troche zmodyfikuje twoja wypowiedz: Przenosnosc to fikcja bo nikt nie pisze na linuxa. Jak juz uzywasz OGL'a, to dosc latwo jest portowac gre na linuxa. Wystarczy rzeczy niskopoziomowe ladnie opakowac i napisac 2 wersje. Tego naprawde nie jest tak duzo. Jak uzyjesz OpenAL, to w zasadzie zostaje obsluga plikow itp, czas i input. Wystarczy sobie to dobrze opakowac i masz przenosna gre. Mozesz ja np optymalizowac pod win, ale aby sprawic zeby dzialala na linuxie to nie jest tak duzy problem. Ale jak sie z zalozenia ma takie sprawy w glebokim powazaniu, to pozniej piszesz takie bzdury.

A wracajac do pytania: kto gra pod linuxem? Ludzie ktorzy go uzywaja(jezeli gra da sie rozsadnie odpalic).

Tytuł: Odp: OpenGL vs DirectX
Wiadomość wysłana przez: Charibo w Marzec 15, 2007, 15:50:50
Cytuj
Z moich obserwacji wynika ze OpenGL jest prostszy w nauce od DX
Moge sie klucic :) Z moich obserwacji, z drugiej strony, wynika cos zupelnie innego. Mianowicie OpenGL'owi brak sensownej biblioteki matematycznej, ktora trzeba sobie napisac samemu (jak powiesz begginerowi "masz, napisz sobie dobrze zoptymalizowana pod rozszerzenia procesora klase wektora, macierzy i kwaterniona, te podstawy" to mysle ze raczej nie bedzie mu do smiechu), brak mu sensownych bibliotek do wczytywania siatek chociazby w najprostrzej formie, czy tekstur. Dla poczatkujacego jest to duzy minus. Zgadzam sie, ze plusem moze byc strukturalnosc (tez nie lubilem obiektow na poczatku programowania (przez pierwszy miesiac :) ), ale im bardziej zaawansowany programista, tym brak obiektowosci coraz bardziej przeszkadza. Kolejna i chyba najpowazniejsza wada, ktora dyskwalifikuje OpenGL w moich oczach, sa rozszerzenia.

Jak dotad zauwazylem dwa plusy OGL wzgledem DirectX:

[1] Przyznaje, starsze DXy < 8 byly nieporownywalnie gorsze od OpenGLa
Tytuł: Odp: OpenGL vs DirectX
Wiadomość wysłana przez: maxest w Marzec 15, 2007, 17:49:05
fakt faktem, dx ma biblioteke f. matematycznych, ale chba nie jest ona demonem szybkosci - tym bardziej ze wiele osob deklaruje, iz uzywa jedynie D3D (bez D3DX). ale nie da sie ukryc - zawsze cos i jest to zdecydowanie na plus dx. dx jest bardzo sumiennie uporzadkowany, a przez to ze ogl jest rozwijany przez wiele firm, to niestety - burdel z rozszerzeniami. w dodatku czesc z nich jest przystosowanych pod konkretne karty graficzne (ati, nvidia).
a co do prostoty to uwazam (i podobnie wiele osob) - ogl jest znacznie latwiejszy na poczatek - glBegin, glVertex, glEnd i wszystko gra. schody zaczynaja sie, jak to juz Charibo wspomnial, od chociazby tekstur.
poza tym nie zapominajmy o jednym - bez solidnej wiedzy z matematyki 3d ani ogl, ani d3d nie bedziemy potrafili wykorzystac :)
Tytuł: Odp: OpenGL vs DirectX
Wiadomość wysłana przez: Charibo w Marzec 15, 2007, 18:57:40
Czy nie jest demonem? No coz, powiem tak: malo ktory poczatkujacy, a nawet srednio-zaawansowany programista (sam nie uwazam za dalbym rade) jest na silach napisac tak zoptymalizowana biblioteke mat. Nie chodzi mi o tak intuicyjna optymalizacje jak na przyklad wektora, mowie glownie o macierzach i kwaternionach, o funkcjach mat. dla nich, ktorych to implementacja jest ukryta, a zgodnie z msdnem i gamedev.net, sa demonami szybkosci :)

Nawiasem mowiac, zapraszam do poczytania dyskusji miedzy mna a Wiadomo dotyczacej wlasnie szybkosci D3DX

Co do glBegin, glEnd, glVertex - to jest to rzeczywiscie fajne dla poczatkujacych. Jednak, przestaja byc "jezzy", kiedy nagle okazuje sie za mamy 10 klatek przy marnych kilku tys. wierzcholkow :) Poza tym, nie sadze ze mozna uzywac tych funkcji do czegos wiecej niz trojkata :)

Cytuj
poza tym nie zapominajmy o jednym - bez solidnej wiedzy z matematyki 3d ani ogl, ani d3d nie bedziemy potrafili wykorzystac
Absolutna racja :)

Tytuł: Odp: OpenGL vs DirectX
Wiadomość wysłana przez: nadult w Marzec 15, 2007, 20:05:21
Cytuj
Z moich obserwacji wynika ze OpenGL jest prostszy w nauce od DX
Moge sie klucic :) Z moich obserwacji, z drugiej strony, wynika cos zupelnie innego. Mianowicie OpenGL'owi brak sensownej biblioteki matematycznej...
Na sieci jest masa różnych implementacji różnego rodzaju bibliotek matematycznych, praktycznie w każdym tutorialu można znaleźć implementację wektorka, macierzy czy kwaternionka  :). Jak ktoś chce to znajdzie.
BTW. d3dx nie jest mocno zintegrowana z d3d, tak że można z niej spokojnie korzystać pisząc pod ogl-a

Cytuj
...brak mu sensownych bibliotek do wczytywania siatek chociazby w najprostrzej formie, czy tekstur...
Tak samo jak wyżej, na sieci jest masa różnych bibliotek, jak ktoś chce to sobie znajdzie.

Cytuj
...ale im bardziej zaawansowany programista, tym brak obiektowosci coraz bardziej przeszkadza...
Całkowicie się nie zgadzam, im bardziej zaawansowany programista tym mniejsze ma dla niego znaczenie w jakim api pisze bo dobry programista potrafi się dostosować do każdej sytuacji  :).

Cytuj
poza tym nie zapominajmy o jednym - bez solidnej wiedzy z matematyki 3d ani ogl, ani d3d nie bedziemy potrafili wykorzystac
Jeśli przez solidną więdzę rozumiecie algebrę liniową,to się nie zgadzam. Uczeń liceum (a nawet zdolny uczeń podstawówki) byłby w stanie napisać jakąś gierkę 3d bez znajomości zaawansowanej matmy, miałby najwyżej problemy z jakimiś ciekawszymi technikami (które też przy odpowiednim zaparciu byłby w stanie przeskoczyć). Jest wiele osób na warsztacie które tą tezę potwierdzają.

Wracając do głównego tematu:
Osobiście się własnie przerzucam z DirectXa na Opengl bo chociaż wolę DirectX (bardziej się nadaje do robienia gier bo tak był projektowany) to zaczyna mi zależeć na przenośności. Poza tym nie mam zamiaru płacić ~400 dolarów za możliwość korzystania z feature-sów nowych kart graficznych tylko dlatego że Microsoftowi nie chce się robić (;D) ich obsługi na starszych windowsach.
Tytuł: Odp: OpenGL vs DirectX
Wiadomość wysłana przez: pawelad w Marzec 15, 2007, 20:58:50
Mnie tez zalezy na przenosnosci, za jakis czas moze sie to wyrowna ( linux vs winda ), ale mam kwasna mine i spore obawy co do OpenGl. Czy ktos w ogóle dba o niego, jak jest riposta na Dx10, jak to jest z tymi rozszerzeniami, czy to takie straszne.
Tytuł: Odp: OpenGL vs DirectX
Wiadomość wysłana przez: Lobsang Rampa w Marzec 15, 2007, 23:09:00
Cytuj
Mnie tez zalezy na przenosnosci, za jakis czas moze sie to wyrowna ( linux vs winda ), ale mam kwasna mine i spore obawy co do OpenGl. Czy ktos w ogóle dba o niego, jak jest riposta na Dx10, jak to jest z tymi rozszerzeniami, czy to takie straszne.
Co do riposty, to była ona jescze pzred wyjsciem Visty i DX 10, w OGL błyskawicznie zaimplementowno obsługe SM 4.0, generalnie OGL cały czas się intensywnie rozwija, spore znaczenia tez ma istnienie OGL ES na uzrądzenia przenośne :)

Co do wyrównania się ilości nowych tytułów na Linux i Windows, to sporo zalezy według mnie w tej chwili od programów portujących gry z DX na linuksa (np. Cedega), juz w tej chwili można odpalić wiekszość nowych tytułów z DX pod linuksem :) Jak tak dalej pójdzie, windows nie bedzie potrzebny do gry w tytuły napisane dla windows :P linuks sie stanie popularniejszy i producenci zaczna masowa tworzyc gry bezpośrednio pod Linuksa, musi jednak zostac osiągnięty pewien punkt krytyczny :)
Tytuł: Odp: OpenGL vs DirectX
Wiadomość wysłana przez: maxest w Marzec 16, 2007, 00:42:58
Cytuj
Jeśli przez solidną więdzę rozumiecie algebrę liniową,to się nie zgadzam. Uczeń liceum (a nawet zdolny uczeń podstawówki) byłby w stanie napisać jakąś gierkę 3d bez znajomości zaawansowanej matmy, miałby najwyżej problemy z jakimiś ciekawszymi technikami (które też przy odpowiednim zaparciu byłby w stanie przeskoczyć). Jest wiele osób na warsztacie które tą tezę potwierdzają.
ale raczej z implementacja jakichs zaawansowanych technik bylby problem dla takiego licealisty. powoluje sie tutaj chociazby na art'a Valve'a o technikach, jakie stosowali i jak je otrzymali. wzory byly naprawde interesujace... :) i nie chodzi mi tutaj bynajmniej o zalapanie co ktore znaczki oznaczaja i w ten sposob zakumanie danej techniki, ale o to, ze bez jakichs mocniejszych podstaw matematyki wyzszej nie bedziemy w stanie stworzyc czegos nowego, oryginalnego. Carmack (i jemu podobni) nie ma przeciez monopolu na wynalazki w dziedzinie grafiki 3d :P

Cytuj
linuks sie stanie popularniejszy i producenci zaczna masowa tworzyc gry bezpośrednio pod Linuksa, musi jednak zostac osiągnięty pewien punkt krytyczny Smiley
linux nie dorowna popularnoscia windows'owi. po pierwsze dlatego, ze windows jest znacznie prostszy w obsludze (chociazby przy instalowaniu sterownikow), a po drugie dlatego, ze spolecznosc linuksa bynajmniej nie zdaje sie dazyc do przystosowania systemu dla poczatkujacych uzytkownikow komputerow - Oni chca tworzyc pewna "elita", grupe wyrozniajaca sie, ktora uzywa systemu "o wiele lepszego i bezpieczniejszego niz windows" :) romantyczni indywidualisci po prostu ;)
to tak moim skromnym zdaniem - i bynajmniej nie mam zamiaru wywolywac zadnego flame war'a :)
Tytuł: Odp: OpenGL vs DirectX
Wiadomość wysłana przez: SirMike w Marzec 17, 2007, 12:12:17
Zrobilo sie offtopicowo wiec posty o Linuksie wyladowaly tu http://forum.warsztat.gd/index.php/topic,3094.0.html
Tytuł: Odp: OpenGL vs DirectX
Wiadomość wysłana przez: mINA87 w Marzec 17, 2007, 13:43:42
A wiecie co mnie zastanawia?
Jak będzie się sprawował OGL na sprzęcie DX10. Bo jest tam trochę inne podejście - kompletnie nie ma fixed piepline, stany GPU są obiektami jednorazowo tworzonymi i później tylko uchwyty są wysyłane do GPU. Zastanwia mnie, czy sprzęt jest pod to optymalizowany czy to tylko DX. Bo jeśli to kwestia DXa to spoko, ale jeśli to jest cecha sprzętu to aplikacje OGL mogą sporo stracić na wydajności w porównaniu z aplikacjami DX10, bo of koz maszyna stanów OGL będzie to pewnie optymalizowała jakoś, ale DX jakby narzuca pewne wydajne podejścia i upraszcza ich realizację i nie wiem jak będzie wyglądało mapowanie maszyny stanów OGL -> GPU. Trzeba się dorwać do Vista DDK ^^
Tytuł: Odp: OpenGL vs DirectX
Wiadomość wysłana przez: Krzysiek K. w Marzec 17, 2007, 15:20:52
Cytuj
Jak będzie się sprawował OGL na sprzęcie DX10. Bo jest tam trochę inne podejście - kompletnie nie ma fixed piepline, stany GPU są obiektami jednorazowo tworzonymi i później tylko uchwyty są wysyłane do GPU.
Fixed pipeline zniknęło już pewnie jakiś czas temu (żeby zaoszczędzić miejsce na chipie) i jest emulowane w driverach na shaderach. Co do stanów, to pewnie pojawi się jakieś kolejne dziwne rozszerzenie. :)

Jeżeli chodzi o OpenGL, to moim zdaniem powinni oni pójść tropem DX10 - zrobić OpenGL 3.0, zerwać z kompatybilnością wstecz, w końcu odchudzić to API i dostosować do obecnej sytuacji. Alternatywnie mogliby wyjść z OpenGL ES i zacząć rozwijać to na PC. :)
Tytuł: Odp: OpenGL vs DirectX
Wiadomość wysłana przez: mINA87 w Marzec 17, 2007, 16:00:44
Fixed pipeline zniknęło już pewnie jakiś czas temu (żeby zaoszczędzić miejsce na chipie) i jest emulowane w driverach na shaderach. Co do stanów, to pewnie pojawi się jakieś kolejne dziwne rozszerzenie. :)
Tylko że dla tej pory było to przezroczyste dla API - karta musiała zapewniać w jakiś sposób funkcjonalność fixed. Dzisiaj już wiadomo że sprzęt tego nie zapewnia, więc wnioskuję, że OGL się tym zajmie.

Jeżeli chodzi o OpenGL, to moim zdaniem powinni oni pójść tropem DX10 - zrobić OpenGL 3.0, zerwać z kompatybilnością wstecz, w końcu odchudzić to API i dostosować do obecnej sytuacji. Alternatywnie mogliby wyjść z OpenGL ES i zacząć rozwijać to na PC. :)
To by było niezłe. Jakby porzucili debilne mechanizmy w stylu glBegin/glEnd i zrealizowali maszynkę stanów na wzór Dx'a 10, to API to mogłoby być naprawdę fajnie.
Tytuł: Odp: OpenGL vs DirectX
Wiadomość wysłana przez: bies w Marzec 17, 2007, 16:04:49
Jeżeli chodzi o OpenGL, to moim zdaniem powinni oni pójść tropem DX10 - zrobić OpenGL 3.0, zerwać z kompatybilnością wstecz, w końcu odchudzić to API i dostosować do obecnej sytuacji. Alternatywnie mogliby wyjść z OpenGL ES i zacząć rozwijać to na PC. :)
To by było niezłe. Jakby porzucili debilne mechanizmy w stylu glBegin/glEnd i zrealizowali maszynkę stanów na wzór Dx'a 10, to API to mogłoby być naprawdę fajnie.
Świat się nie kończy na grach. Taki ruch byłby końcem OpenGL.
Tytuł: Odp: OpenGL vs DirectX
Wiadomość wysłana przez: SirMike w Marzec 17, 2007, 16:34:53
Jeżeli chodzi o OpenGL, to moim zdaniem powinni oni pójść tropem DX10 - zrobić OpenGL 3.0, zerwać z kompatybilnością wstecz, w końcu odchudzić to API i dostosować do obecnej sytuacji. Alternatywnie mogliby wyjść z OpenGL ES i zacząć rozwijać to na PC. :)
To by było niezłe. Jakby porzucili debilne mechanizmy w stylu glBegin/glEnd i zrealizowali maszynkę stanów na wzór Dx'a 10, to API to mogłoby być naprawdę fajnie.

Hmm, a co zlego jest w glBegin/glEnd?
Tytuł: Odp: OpenGL vs DirectX
Wiadomość wysłana przez: mINA87 w Marzec 17, 2007, 16:58:52
bies: nie chodzi żeby kompletnie porzucić tylko zastosować mechanizmy które bardziej zbliżą OpenGL do aktualnej architektury sprzętu. Co za rożnica czy ktoś pisząc jakąś wizualizację z lenistwa wklepie wierzchołki między glBegin/glEnd czy wrzuci wszytsko do jakiegoś bufora? A dla krty różnica duża.
SirMike: to, że są wolne i nie odzwierciedlają architektury sprzętu. Nie bez powodu wszystko jest pakowane w bufory - stany GPU, wierzchołki, tekstury, parametry vertex shadera, polecenia GPU.
Tytuł: Odp: OpenGL vs DirectX
Wiadomość wysłana przez: Krzysiek K. w Marzec 17, 2007, 17:00:43
Hmm, a co zlego jest w glBegin/glEnd?
- jest najwolniejszym sposobem definiowania geometrii jaki wymyślono,
- powoduje, że OpenGL wydaje się łatwy, ale jak trzeba się przesiąść na VBO to już jest problem,
- tworzy złe przyzwyczajenia (potem pojawiają się posty w stylu "co tu zoptymalizować, byle pozostało glBegin/glEnd")


glBegin/glEnd jest fajne, o ile chcesz wyświetlić pojedyncze trójkąty, czy przetestować na szybko jakąś koncepcję, ale dla dobra początkujących powinni, myślę, to wywalić, bo glBegin/glEnd opóźnia tylko przesiadkę na VBO (która wcześniej czy później będzie konieczna), a w efekcie rozwój takiego początkującego. :)
Tytuł: Odp: OpenGL vs DirectX
Wiadomość wysłana przez: SirMike w Marzec 17, 2007, 17:26:15
Heh, myslalem, ze w dobie VBO nikt juz nie korzysta z glBegin/glEnd - wiem, ze jest wolne jak cholera ale bardzo wygodne zeby przetestowac jakies banalne rzeczy. Duzo latwiej wykonac proste glBegin niz tworzyc specjalnie bufor zeby go po chwili usunac z kodu.
Tytuł: Odp: OpenGL vs DirectX
Wiadomość wysłana przez: bies w Marzec 17, 2007, 18:09:56
Na rynku są cały czas aplikacje które powstawały za czasów OpenGL 1.0. Dlaczego ktoś miałby je przeorywać po to aby glBegin()/glEnd() zmieniać na VBO skoro aplikacje działają aż za dobrze na obecnym sprzęcie. Z resztą nawet teraz, pisząc aplikację używającą OpenGL do wizualizacji czegoś pewnie nie bawiłbym się z VBO tylko użył glBegin()/glEnd() i list wyświetlania. OpenGL to nie tylko gry, co więcej biblioteka została stworzona nie do gier właśnie (zupełnie inaczej niż DX) - na stacjach SGI nie grało się w gry (zasadniczo).
Tytuł: Odp: OpenGL vs DirectX
Wiadomość wysłana przez: mINA87 w Marzec 17, 2007, 20:09:16
No i tu jest problem bies - sparafrazuje Twoje słowa - "OpenGL to nie są gry". I teraz jeśli chcemy żeby były to warto coś zrobić. Poza tym skoro to śmieszne glBegin jest taki ql mega wypas i wystarcza to kiego grzyba OpenGL 3.0? Żeby dodać kolejne posrane rozszerzenia wykorzystywane tylko w grach, a zostawić cały stary syf żeby tylko była kompatybilność na chama? Imho bez sensu. Właśnie dlatego DX ma taką pozycję jaką ma.
Tytuł: Odp: OpenGL vs DirectX
Wiadomość wysłana przez: Charibo w Marzec 17, 2007, 20:17:29
Nawiasem mowiac, kolejna zaleta DirectXa
Tytuł: Odp: OpenGL vs DirectX
Wiadomość wysłana przez: bies w Marzec 17, 2007, 20:30:32
No i tu jest problem bies - sparafrazuje Twoje słowa - "OpenGL to nie są gry". I teraz jeśli chcemy żeby były to warto coś zrobić.
Ja nie chcę. Wolę OGL-a takiego jakim jest zamiast zerwania wstecznej kompatybilności. Jak ktoś chce pisać grę w OGL to sobie poradzi. A jak ktoś lubi glBegin() to też można.
Tytuł: Odp: OpenGL vs DirectX
Wiadomość wysłana przez: Pockey w Marzec 22, 2007, 18:11:54
wbrew pozorom opengl jest troche trudniejszy od directx, ale wybor zalezy od upodoban ;) napewno plusem (dla niektorych minusem) jest sporo ulatwien w directx(np. odczyt tekstur czy modeli)... a rozszerzenia to zaden problem w opengl, a glbegin/end sie i tak nie uzywa (poza prostymi programami) - dla dynamicznych obiektow korzysta sie z list wyswietlania a dla statycznych - z listy wyswietlania, a przy pisaniu gry nie pisze sie kazdej siatki pomiedzy glbegin a glend - rysowaniem obiektow sie zajmie odpowiednio zaprogramowany silnik... co do porownania bibliotek to jako opengl vs direct3D to technicznie gl jest wg. mnie troche lepszy (min. w directx nie ma renderowania stereoskopowego, oswietlenia dwustronnego, buforu akumulacyjnego... (nie wiem jak to jest w nowych wersjach directx)), obie biblioteki maja plusy i minusy ale najwazniejsze zeby byly dobrze wykorzystane przez programiste, najwazniejsza jest satysfakcja z kodowania i uzyskanego efektu ;) a nie czego sie uzywa... jak dla mnie OpenGL jest tak samo dobry jak Direct3D (i odwrotnie :))
Tytuł: Odp: OpenGL vs DirectX
Wiadomość wysłana przez: MoN w Marzec 22, 2007, 18:17:10
Renderowanie stereoskopiczne i bufor akumulacyjny mozna sobie samemu zrobic na teksturkach w dx (zreszta bufor akumulacyjny w oglu domyslny jest afaik softwarowy w wiekszosci ogromnej przypadkow i okropnie wolny)
Tytuł: Odp: OpenGL vs DirectX
Wiadomość wysłana przez: Pockey w Marzec 22, 2007, 18:22:54
"Renderowanie stereoskopiczne i bufor akumulacyjny"
tak, ale zrob to bez shaderow ;) a akumulacyjny bufor - to prawda jest bardzo wolny ale nie napisales ze tez sie da w gl go zrobic ;)
Tytuł: Odp: OpenGL vs DirectX
Wiadomość wysłana przez: Charibo w Marzec 22, 2007, 18:38:00
Pockey: zrob cokolwiek co bedzie jakos wygladalo w DirectX bez shaderow :)
Tytuł: Odp: OpenGL vs DirectX
Wiadomość wysłana przez: Pockey w Marzec 22, 2007, 18:47:32
da sie :) ale nie w prosty sposob i napewno nie tak szybko ;)
Tytuł: Odp: OpenGL vs DirectX
Wiadomość wysłana przez: MoN w Marzec 22, 2007, 19:19:49
Ee ?? A w czym tu ogl lepszy? W tym ze zamiast m_d3ddev->SetRenderState lub pochodny wpisuje sie glSetRenderState albo cos takiego?? Przecie bez shaderkow itp. to ogl i d3d niczym sie nie roznia tak naprawde...

A bufor akumulacyjny wbudowane jest tylko w oglu, wiec chyba nie trzeba tego dodawac. I to wlasnie w oglu jest nieszczesliwie wolny - zas zastapienie go teksturka to jest zaden problem i shaderkow nie wymaga.

Z renderowaniem stereoskopicznym to juz nie wiem - na pewno da sie w dwoch przebiegach ale to troche malo podniecajace ;). Sa jeszcze jakies multiple render target ale nigdy sie tym nie bawilem - moze mozna jeden prymityw narysowac do obu, uzywajac innej macierzy widoku...
Tytuł: Odp: OpenGL vs DirectX
Wiadomość wysłana przez: Pockey w Marzec 22, 2007, 19:52:25
renderowanie stereoskopowe mozna zrobic np. z wykorzystaniem bufora akumulacji :) tak na upartego...
Tytuł: Odp: OpenGL vs DirectX
Wiadomość wysłana przez: maxest w Marzec 22, 2007, 20:48:34
odczep ty sie juz od tego bufora akumulacji :P jego dzialania w ogl jest tak tragicznie ze skutecznie mozna go wyeliminowac z listy argumentow przewyzszajacych ogl na dx :)
Tytuł: Odp: OpenGL vs DirectX
Wiadomość wysłana przez: Pockey w Marzec 22, 2007, 21:41:09
to byl zart ;)
Tytuł: Odp: OpenGL vs DirectX
Wiadomość wysłana przez: Charibo w Marzec 23, 2007, 18:48:23
Cytuj
mozna go wyeliminowac z listy argumentow przewyzszajacych ogl na dx
Czyli zostaje tylko przenosnosc :)
Tytuł: Odp: OpenGL vs DirectX
Wiadomość wysłana przez: maxest w Marzec 23, 2007, 23:34:45
no tez jest swoja droga wzgledne bo nie napiszesz przeciez aplikacji pod xbox'a 360 przy uzyciu ogl'a.
ciagle nie rozumiem tylko jednego - dlaczego znaczna czesc tworcow gier korzysta z d3d? czy jest z nim po prostu mniej problemow (rozszerzenia np.), czy, windows lepiej radzi sobie z d3d niz z gl'em (chociaz to raczej zalezy od sterownikow a nie od os'a)? z autopsji wiem, ze ogl potrafi stwarzac nieciekawe problemy - mialem np. sytuacje, ze tekstura czworokata zmieniala sie w zaleznosci od kata patrzenia kamery. nie byloby moze w tym nic specjalnie dziwnego, gdyby ten artefakt wystepowal na wszystkich kartach, a tymczasem byl problem z tymi "gorszymi" (testowalem na geforce 2 mx 400, geforce 4 mx 440, geforce 6600 i tylko na tym ostatnim bylo ok)
Tytuł: Odp: OpenGL vs DirectX
Wiadomość wysłana przez: bies w Marzec 24, 2007, 00:50:55
ciagle nie rozumiem tylko jednego - dlaczego znaczna czesc tworcow gier korzysta z d3d?
Dlatego, że dobrze integruje się z resztą DX.
Tytuł: Odp: OpenGL vs DirectX
Wiadomość wysłana przez: Charibo w Marzec 24, 2007, 00:55:47
Dlatego ze ma przejrzyste obiektowe API i pelno innych zalet ktore wymienilem wczesniej :)
Tytuł: Odp: OpenGL vs DirectX
Wiadomość wysłana przez: spax w Marzec 24, 2007, 01:08:21
ciagle nie rozumiem tylko jednego - dlaczego znaczna czesc tworcow gier korzysta z d3d?
Dlatego, że dobrze integruje się z resztą DX.

Jaka reszta? DirectShow, DirectPlay, DirectDrwa, DirectMusic, DirectSound?

PS. Specjalnie dobralem takie czesci. Aby uzmyslowic ze aktualnie ta reszta, nie jest juz tak liczna jak kiedys.
Tytuł: Odp: OpenGL vs DirectX
Wiadomość wysłana przez: bies w Marzec 24, 2007, 01:15:06
ciagle nie rozumiem tylko jednego - dlaczego znaczna czesc tworcow gier korzysta z d3d?
Dlatego, że dobrze integruje się z resztą DX.
Jaka reszta? DirectShow, DirectPlay, DirectDrwa, DirectMusic, DirectSound?

PS. Specjalnie dobralem takie czesci. Aby uzmyslowic ze aktualnie ta reszta, nie jest juz tak liczna jak kiedys.
A DirectInput i XInput?
Tytuł: Odp: OpenGL vs DirectX
Wiadomość wysłana przez: . w Marzec 24, 2007, 01:35:01
no tez jest swoja droga wzgledne bo nie napiszesz przeciez aplikacji pod xbox'a 360 przy uzyciu ogl'a.
Xbox 360 = Linux 2.6.20
He he he… Starzy wyjadacze (tacy jak ja ;P), mogą :D.

Ale pewnie niedługo i większość newbie będzie mogła, ponieważ Linuksowy bootloader jest już skończony.
A specjalna wersja dla opornych pewnie już powstaje.

http://www.xbox-scene.com/xbox1data/sep/EEZuFZpZFEucRywmpU.php
http://di.com.pl/news/15971,Xbox_360_calkowicie_zlamany.html
http://www.di.com.pl/news/16029,Xbox_360_=_Linux_2_6_20.html
http://di.com.pl/news/16133,1.html
Tytuł: Odp: OpenGL vs DirectX
Wiadomość wysłana przez: snakeo w Marzec 24, 2007, 02:42:36
Troche zmodyfikuje twoja wypowiedz: Przenosnosc to fikcja bo nikt nie pisze na linuxa. Jak juz uzywasz OGL'a, to dosc latwo jest portowac gre na linuxa. A wracajac do pytania: kto gra pod linuxem? Ludzie ktorzy go uzywaja(jezeli gra da sie rozsadnie odpalic).
Alez tak wiem o tym, moze zastosowalem za duzy skrot myslowy, nastepnym razem bede pisac wolniej ;)
Tytuł: Odp: OpenGL vs DirectX
Wiadomość wysłana przez: maxest w Marzec 24, 2007, 09:56:31
Cytuj
Dlatego, że dobrze integruje się z resztą DX.
no ale czy taki dinput ma az tyle "wspolnego" z d3d ze zaraz trzeba go uzywac? mozna przeciez bez problemu uzywac kombinacji ogl + dinput + dsound
Tytuł: Odp: OpenGL vs DirectX
Wiadomość wysłana przez: nameczanin w Marzec 24, 2007, 11:35:28
A jakze quake3 zostal napisany przecie?
Tytuł: Odp: OpenGL vs DirectX
Wiadomość wysłana przez: maxest w Marzec 24, 2007, 23:19:13
nie wiem jak quake3, ale na pewno przy instalacji doom'a 3 trza bylo dx'a zainstalowac. a jak wszyscy dobrze wiemy, doom to jeden ze sztandarowym produktow korzystajacych z ogl, wiec dx'a mogl wymagac jedynie do obslugi urzadzen wejscia i/lub dzwieku (wersja windows'owa oczywiscie)
Tytuł: Odp: OpenGL vs DirectX
Wiadomość wysłana przez: spax w Marzec 24, 2007, 23:58:10
W Doomie3 za dźwięk akurat odpowiada OpenAL.
Więc stawiam na DirectInput, które jest najrosądniejszym (jedynym?) wyborem pod Windows.
Tytuł: Odp: OpenGL vs DirectX
Wiadomość wysłana przez: maxest w Marzec 25, 2007, 00:04:54
zawsze mozna uzywac winapi :) tylko z drugiej strony po co sobie zycie utrudniac...
co natomiast uzywa sie pod innymi OS'ami do tego typu zadan jak oblsuga urzadzen wejscia? czy SDL nie ma czasem jakiegos zestawu funkcji do tych dzialan?
Tytuł: Odp: OpenGL vs DirectX
Wiadomość wysłana przez: SirMike w Marzec 25, 2007, 17:49:31
co natomiast uzywa sie pod innymi OS'ami do tego typu zadan jak oblsuga urzadzen wejscia? czy SDL nie ma czasem jakiegos zestawu funkcji do tych dzialan?

Ma, do tego sprawuje sie swietnie.
Tytuł: Odp: OpenGL vs DirectX
Wiadomość wysłana przez: maxest w Marzec 25, 2007, 18:55:49
Cytuj
Ma, do tego sprawuje sie swietnie.
ale chyba nie jest tak rozbudowany jak dinput..? (bo gdyby byl to chyba raczej malo kto uzywalby dinput)
Tytuł: Odp: OpenGL vs DirectX
Wiadomość wysłana przez: goboss w Marzec 25, 2007, 19:36:44
ale chyba nie jest tak rozbudowany jak dinput..? (bo gdyby byl to chyba raczej malo kto uzywalby dinput)
Nie znam sie co prawda na dinput, ale sądze, że "rozbudowanie" nie ma tu wiele do rzeczy... SDL jest dość oczywistym wyborem dla kogoś kto pracuje np naLinuksie, ale brakuje mu jakiegoś SDKa albo lepszych materiałów "wspomagających" naukę.
Tytuł: Odp: OpenGL vs DirectX
Wiadomość wysłana przez: nameczanin w Marzec 26, 2007, 16:00:47
Oj, input w SDL jest baardzo fajny :) Jak obsluguje joysticki, to chyba to juz swiadczy o wspomnianej "rozbudowanosci" (six). Z klawiszami klawiaturowymi tez jest b. fajnie ;) Nazwy sa zdecydowanie bardziej intuicyjne niz w WinAPI - a nawet czasami znajduja sie te, ktorych nie ma w tym drugim.

http://www.libsdl.org/cgi/docwiki.cgi/
http://www.libsdl.org/cgi/docwiki.cgi/SDL_20API
Tytuł: Odp: OpenGL vs DirectX
Wiadomość wysłana przez: Hadrian W. w Marzec 26, 2007, 18:54:20
Nie znam sie co prawda na dinput, ale sądze, że "rozbudowanie" nie ma tu wiele do rzeczy... SDL jest dość oczywistym wyborem dla kogoś kto pracuje np naLinuksie, ale brakuje mu jakiegoś SDKa albo lepszych materiałów "wspomagających" naukę.
Po kiego grzyba do SDL'a jakieś wielkie przykłady, wystarczy pomoc dołączona do wydania, czy tam SDL-wiki i tyle. SDL, w sensie podstawki dla OGL'a i inputa, jest prosty jak budowa cepa.

Wg. Wielkiej Warsztatowej Ankiety 2006 (http://www.warsztat.gd/articles.php?x=view&id=216) OpenGL wciąż przeważa (choć nie dużo) wśród nas.
Tytuł: Odp: OpenGL vs DirectX
Wiadomość wysłana przez: hans_ w Maj 09, 2007, 20:47:28
Nie znam sie co prawda na dinput, ale sądze, że "rozbudowanie" nie ma tu wiele do rzeczy... SDL jest dość oczywistym wyborem dla kogoś kto pracuje np naLinuksie, ale brakuje mu jakiegoś SDKa albo lepszych materiałów "wspomagających" naukę.
Po kiego grzyba do SDL'a jakieś wielkie przykłady, wystarczy pomoc dołączona do wydania, czy tam SDL-wiki i tyle. SDL, w sensie podstawki dla OGL'a i inputa, jest prosty jak budowa cepa.

Wg. Wielkiej Warsztatowej Ankiety 2006 (http://www.warsztat.gd/articles.php?x=view&id=216) OpenGL wciąż przeważa (choć nie dużo) wśród nas.
OpenGL przewaza ale nie w grach video, jest wszedzie tam gdzie nie ma pc-ta czyli np. systemy wojskowe, medycyna, kosmonautyka, jakies rozbudowane symulacje na stacjach roboczych itd.
W grach video tylko 2 powazne firmy uzywaja OpenGL.


Tytuł: Odp: OpenGL vs DirectX
Wiadomość wysłana przez: maxest w Maj 09, 2007, 20:59:50
Cytuj
systemy wojskowe, medycyna, kosmonautyka, jakies rozbudowane symulacje na stacjach roboczych itd.
Tyle sie mowi o bezpieczenstwie i o tym, ze Linux jest w tym lepszy od Windowsa wiec pewnie dlatego OpenGL tam przewaza :)
Tytuł: Odp: OpenGL vs DirectX
Wiadomość wysłana przez: Kurak w Maj 09, 2007, 21:06:44
Tyle sie mowi o bezpieczenstwie i o tym, ze Linux jest w tym lepszy od Windowsa wiec pewnie dlatego OpenGL tam przewaza :)
Raczej dlatego, że OpenGL nie został stworzony do gier, a DirectX tak, dlatego w zastosowaniach nie-growych OpenGL przeważa, a DirectX wygrywa w grach :)
Tytuł: Odp: OpenGL vs DirectX
Wiadomość wysłana przez: maxest w Maj 09, 2007, 21:28:00
Wlasnie tez chcialem o tym napisac ale przez chwile sie zawahalem i zrezygnowalem z tego argumentu... bo przeciez czym rozni sie taki Direct3D od OpenGL? Jedno i drugie ma przeciez te same lub prawie te same funkcje (pod wzgledem funkcjonalnosci oczywiscie :)) do renderowania
Tytuł: Odp: OpenGL vs DirectX
Wiadomość wysłana przez: deX(ter) w Maj 09, 2007, 22:33:43
Wlasnie tez chcialem o tym napisac ale przez chwile sie zawahalem i zrezygnowalem z tego argumentu... bo przeciez czym rozni sie taki Direct3D od OpenGL? Jedno i drugie ma przeciez te same lub prawie te same funkcje (pod wzgledem funkcjonalnosci oczywiscie :)) do renderowania
Tak naprawdę, to tylko kwestia przenośności... Kiedyś bawiłem się D3D, a jakiś czas temu OpenGL, bo przerzuciłem się w 100% na Ubuntu/Enlightenment...
No i oczywiście mocno czasem przesadzany argument ze składnią.. Że jednemu pasuje składnia OGL, a innemu D3D. Kwestia przyzwyczajeń.. Zawsze można w sumie napisać makra ;).
Tytuł: Odp: OpenGL vs DirectX
Wiadomość wysłana przez: HIsTronIC w Maj 09, 2007, 23:09:12
Moim zdaniem, każdy potencjalny twórca gier komputerowych powinien poznać przynajmniej podstawy D3D i OGL następnie według swoich upodobań wybrać to co mu najbardziej odpowiada. Samemu wybrać co jest lepsze, nie ważne czy to będzie pod wpływem sentymentu czy presjii zespołu. Ważne, że tą świętą wojnę każdy powinien przeprowadzić w sobie. Chyba mam racje. Nie wiem.
Tytuł: Odp: OpenGL vs DirectX
Wiadomość wysłana przez: MoN w Maj 10, 2007, 00:31:47
Prawda jest ze oba API maja takie same mozliwosci. Ale mimo to zgadzam sie z teza Kuraka, ze OGL nie zostal stworzony do gier i to widac. Ma tryb bezposredni, ktory w grach sie do niczego nie nadaje (choc jest imho w sam raz do jakiejs malej wizualizacji), a nie ma takich rzeczy jak D3D w stylu plikow efektow lub biblioteki d3dx z funkcjami do wyliczania jakis bajeranckich dodatkow graficznych.

Ale i tak nie ma to wplywu na mozliwosci w grach ;)
Tytuł: Odp: OpenGL vs DirectX
Wiadomość wysłana przez: Krzysiek K. w Maj 10, 2007, 01:26:25
Cytuj
Prawda jest ze oba API maja takie same mozliwosci.
A sprawdziłeś to chociaż? ;)

Prawdą jest to, że pewne różnice są i w OpenGL jest dostępne trochę więcej funkcjonalności niż w Direct3D (nie wszystkie pomysły NVidii mieszczę się w API Direct3D). :)
Tytuł: Odp: OpenGL vs DirectX
Wiadomość wysłana przez: maxest w Maj 10, 2007, 01:34:45
Cytuj
Moim zdaniem, każdy potencjalny twórca gier komputerowych powinien poznać przynajmniej podstawy D3D i OGL następnie według swoich upodobań wybrać to co mu najbardziej odpowiad
Zdecydowanie tak. No a poza tym to przeciez nie sa tak naprawde jedyne API. Wezmy np. taki SDK do PlayStation 2 - jest tam jakis oddzielny modul z funkcjami graficznymi, ktory tez ma jakies tam funkcje do obliczen na macierzach itp. Wiec pisac bedziemy w tym co bedzie stosowne dla danej sytuacji, dla konkretnego projektu. Sek w tym zeby znac sie na, w tym wypadku, samej teorii programowania grafiki :)

Cytuj
w OpenGL jest dostępne trochę więcej funkcjonalności niż w Direct3D
Chyba nie masz na mysli jakichs pierdolkow w stylu bufor selekcji (czy jak to sie tam nazywalo) albo gotowe funkcje do np. rysowania krzywych/powierzchni Bezier'a? ;)
Tytuł: Odp: OpenGL vs DirectX
Wiadomość wysłana przez: hans_ w Maj 10, 2007, 01:39:49
np. znajduje sie f. gltexgen pomagajaca juz od dlugiego czasu sprzetowo generowac uv, co chyba do tej pory w dx nie ma
pozatym bardzo ma bardzo prosty system operowania na macierzach nie wymagajacy wogole budowania ani jednej macierzy w kodzie, choc mozna i tak, jednak dx prawdopodobnie troche jest szybszy ale ja bardziej cenie wygode, no i mgla pixelowa juz w wersji 1.1 czyli od jakis 15 lat
Tytuł: Odp: OpenGL vs DirectX
Wiadomość wysłana przez: Krzysiek K. w Maj 10, 2007, 01:48:54
Chyba nie masz na mysli jakichs pierdolkow w stylu bufor selekcji (czy jak to sie tam nazywalo) albo gotowe funkcje do np. rysowania krzywych/powierzchni Bezier'a? ;)
Mam na myśli wygodne definiowanie strumieni danych wierzchołków (w D3D9 jest to dosyć ograniczone i ciągle straszy ten FVF z pojedynczym strumieniem), pseudo-instancing (to już kwestia struktury OpenGL) oraz rozszerzenia typu Register Combiner, czy Ultra Shadow II, których nie uświadczysz w D3D9, żeby o SM4.0 nie wspominać.

Z drugiej strony D3D daje dosyć sztywne i solidne API, w którym można sprawdzić różne rzeczy w caps'ach i temu podobnych (kto mi powie jak w OpenGL sprawdzić, czy vertex shader rzeczywiście działa na GPU?). :)


Cytuj
np. znajduje sie f. gltexgen pomagajaca juz od dlugiego czasu sprzetowo generowac uv, co chyba do tej pory w dx nie ma
W D3D też jest coś takiego. W dodatku podałeś przykład dosyć mało przydatny, bo łatwo to zastąpić vertex shaderem, a nawet softwareowo. :)

Cytuj
pozatym bardzo ma bardzo prosty system operowania na macierzach nie wymagajacy wogole budowania ani jednej macierzy w kodzie, choc mozna i tak, jednak dx prawdopodobnie troche jest szybszy ale ja bardziej cenie wygode, no i mgla pixelowa juz w wersji 1.1 czyli od jakis 15 lat
1. Macierze masz w D3DX, który jest częścią Direct'a.
2. Co do szybkości się nie wypowiadam, ale pewnie są podobne (jakby DX był szybszy to Microsoft by już dawno o tym trąbił).
3. Direct3D oferuje znacznie więcej udogodnień niż OpenGL, przykładowo:
- funkcje do ładowania tekstur i meshy,
- pliki efektów,
- zunifikowane shadery, które mają większą szansę zadziałać tam gdzie powinny (w OpenGL shadery GLSL kompiluje driver, przez co ATi i NVidia różnie mogą reagować na ten sam kod),
- brak konieczności zabawy z rozszerzeniami
4. Mgła też jest w Direct3D.
Tytuł: Odp: OpenGL vs DirectX
Wiadomość wysłana przez: hans_ w Maj 10, 2007, 01:53:27
Cytuj
W D3D też jest coś takiego. W dodatku podałeś przykład dosyć mało przydatny, bo łatwo to zastąpić vertex shaderem, a nawet softwareowo. :)
zostawmy shadery na boku :) ja mowie tylko o api i to o wersji z lat 90 gdzie pojecie shader chyba nawet nie istnialo, wiec przydatne to bylo do generowania roznych efektow z textura jak chrom efekty fal itd co w dx bylo niemozliwe na taka skale bo wspomaganie sprzetowe jest chyba znacznie szybsze niz kod
Tytuł: Odp: OpenGL vs DirectX
Wiadomość wysłana przez: mINA87 w Maj 10, 2007, 01:59:44
zostawmy shadery na boku :) ja mowie tylko o api i to o wersji z lat 90 gdzie pojecie shader chyba nawet nie istnialo, wiec przydatne to bylo do generowania roznych efektow z textura jak chrom efekty fal itd co w dx bylo niemozliwe na taka skale bo wspomaganie sprzetowe jest chyba znacznie szybsze niz kod
buahahahahahahahaha..........
Tak DirectX od zawsze chował przed użytkownikami funkcjonalność sprzętu. OpenGL korzystał z TnL natomiast DirectX wymuszał liczenie wierzchołków na CPU...
zuoooooooooooooooooo...
//edit:
A zupełnie serio - jak Ty czy Twoi koledzy nie potraficie czegoś zrobić w DX'ie to nie znaczy że tego się nie da tam zrobić. I sprzęt to sprzęt  - API zapewnie tylko pewną warstwę abstrakcji nad nim.
Tytuł: Odp: OpenGL vs DirectX
Wiadomość wysłana przez: Krzysiek K. w Maj 10, 2007, 02:17:01
Cytuj
ja mowie tylko o api i to o wersji z lat 90 gdzie pojecie shader chyba nawet nie istnialo
Te kilkanaście lat to kawał czasu w informatyce, więc dzisiaj już ma to znaczenie wyłącznie historyczne. :)
Tytuł: Odp: OpenGL vs DirectX
Wiadomość wysłana przez: bies w Maj 10, 2007, 02:20:12
Z drugiej strony D3D daje dosyć sztywne i solidne API, w którym można sprawdzić różne rzeczy w caps'ach i temu podobnych (kto mi powie jak w OpenGL sprawdzić, czy vertex shader rzeczywiście działa na GPU?). :)
Pobrać sobie typ karty graficznej i sprawdzić we wbudowanej bazie kart. ;D
Tytuł: Odp: OpenGL vs DirectX
Wiadomość wysłana przez: maxest w Maj 10, 2007, 03:04:08
Cytuj
Cytuj
np. znajduje sie f. gltexgen pomagajaca juz od dlugiego czasu sprzetowo generowac uv, co chyba do tej pory w dx nie ma
W D3D też jest coś takiego. W dodatku podałeś przykład dosyć mało przydatny, bo łatwo to zastąpić vertex shaderem, a nawet softwareowo. Smiley
Jakis czas temu przymierzalem sie do zaimlementowania rzutowania tekstur. Widzac te zagmatwane przelaczanie roznych stanow, wlaczanie i wylaczanie generacji tekstur i inne badziewia wykonywane przez aplikacje zrezygnowalem - do czasu gdy zobaczylem jak to prosto wyglada w teorii, a jak jeszcze prosciej da sie to zrobic wlasnie shader'em :)

Cytuj
Cytuj
ja mowie tylko o api i to o wersji z lat 90 gdzie pojecie shader chyba nawet nie istnialo
Te kilkanaście lat to kawał czasu w informatyce, więc dzisiaj już ma to znaczenie wyłącznie historyczne. Smiley
DX do calkiem niedawna (wersji nr 7 wlacznie) byl badziewiasty i upierdliwy i tego nie mozna zaprzeczyc :P (osobiscie nie mialem nigdy stycznosci ale w WARPie nawet o tym bylo napisane :)). Wiec wstecz patrzec nie mozemy. Poza tym "wazne jest to co jest tu i teraz" (Qui-Gon Jinn, Star Wars Episode I, poczatek filmu :P)
Tytuł: Odp: OpenGL vs DirectX
Wiadomość wysłana przez: hans_ w Maj 10, 2007, 13:16:17
zostawmy shadery na boku :) ja mowie tylko o api i to o wersji z lat 90 gdzie pojecie shader chyba nawet nie istnialo, wiec przydatne to bylo do generowania roznych efektow z textura jak chrom efekty fal itd co w dx bylo niemozliwe na taka skale bo wspomaganie sprzetowe jest chyba znacznie szybsze niz kod
buahahahahahahahaha..........
Tak DirectX od zawsze chował przed użytkownikami funkcjonalność sprzętu. OpenGL korzystał z TnL natomiast DirectX wymuszał liczenie wierzchołków na CPU...
zuoooooooooooooooooo...
//edit:
A zupełnie serio - jak Ty czy Twoi koledzy nie potraficie czegoś zrobić w DX'ie to nie znaczy że tego się nie da tam zrobić. I sprzęt to sprzęt  - API zapewnie tylko pewną warstwę abstrakcji nad nim.
nie zabardzo rozumiem ta wypowiedz,
wez sobie milion wierzcholkow i policz dla nich uv w kodzie, powiedzmy zrob dotproduct miedzy normalem wierzcholka a kierunkiem swiatla
a potem zrob to z wykorzystaniem gltexgen i porownaj szybkosc, kazdy /chyba/ widzi w tym korzysci
Tytuł: Odp: OpenGL vs DirectX
Wiadomość wysłana przez: st3tc w Maj 10, 2007, 13:21:46
DX do calkiem niedawna (wersji nr 7 wlacznie) byl badziewiasty i upierdliwy i tego nie mozna zaprzeczyc :P (osobiscie nie mialem nigdy stycznosci ale w WARPie nawet o tym bylo napisane :)).
No patrz. A ja mogę zaprzeczyć. Jestem z dx-em od wersji 5.0. Pracowałem ze wszystkimi późniejszymi wersjami. I DX7 było przełomem. Po raz pierwszy można się było porządnie "zakochać" w DX-sie. Żaden WARP nie jest dla mnie wyrocznią - ja to przeżyłem ;). Trochę głupio to brzmi, jak mówisz "nie można zaprzeczyć" i "ale nie znam go - gdzieś tak pisali" ...
Tytuł: Odp: OpenGL vs DirectX
Wiadomość wysłana przez: maxest w Maj 10, 2007, 14:01:51
Dla mnie WARP tez nie jest wyrocznia, ale jesli potrzeba bylo 700 linii kodu na wyrenderowanie czegokolwiek, podczas gdy w OGL jest jakies niecale 100, to jednak widac roznice w wygodzie :) - przynajmniej na poczatku
Tytuł: Odp: OpenGL vs DirectX
Wiadomość wysłana przez: st3tc w Maj 10, 2007, 14:05:54
Nie trzeba było.
Tytuł: Odp: OpenGL vs DirectX
Wiadomość wysłana przez: mINA87 w Maj 10, 2007, 14:11:24
nie zabardzo rozumiem ta wypowiedz,
wez sobie milion wierzcholkow i policz dla nich uv w kodzie, powiedzmy zrob dotproduct miedzy normalem wierzcholka a kierunkiem swiatla
a potem zrob to z wykorzystaniem gltexgen i porownaj szybkosc, kazdy /chyba/ widzi w tym korzysci
Po prostu Cię wyśmiałem :]
1. W DX'ie masz texgen'a
2. Generowanie koordynat w locie dla takiej ilości wierzchołków to debilizm
3. Oglądnij sobie 3dMark 2000 (szczególnie demo) - napisany jest w opraciu o DX7 i raczej nic tam nie jest liczone software'owo jeśli da się to zrobić sprzętowo :]
Tytuł: Odp: OpenGL vs DirectX
Wiadomość wysłana przez: maxest w Maj 10, 2007, 14:43:16
Cytuj
Nie trzeba było.
Dorwalem jakis kod DX7 i rzeczywiscie, nie jest on taki straszny, nawet bardzo podobny do "dzisiejszego" (DX9) :). Zwracam wiec honor Siodemce ;)
Tytuł: Odp: OpenGL vs DirectX
Wiadomość wysłana przez: Bronx w Maj 12, 2007, 09:54:38
Mam pytanie, z jakich bibliotek(i) korzysta konsola ps3, dx raczej nie, opengl?
Tytuł: Odp: OpenGL vs DirectX
Wiadomość wysłana przez: skoti w Maj 12, 2007, 10:10:00
Mam pytanie, z jakich bibliotek(i) korzysta konsola ps3, dx raczej nie, opengl?
PS3 korzysta z OpenGL ES :D
Tytuł: Odp: OpenGL vs DirectX
Wiadomość wysłana przez: maxest w Maj 12, 2007, 12:26:43
Cytuj
Mam pytanie, z jakich bibliotek(i) korzysta konsola ps3, dx raczej nie, opengl?
OpenGL ES jak juz wspomnial przedmowca - http://www.khronos.org/opengles/
Chociaz to chyba raczej nie jest jedyne API umozliwiajace kodzenie grafiki na PS3
Tytuł: Odp: OpenGL vs DirectX
Wiadomość wysłana przez: hans_ w Maj 12, 2007, 14:13:07
Cytuj
Mam pytanie, z jakich bibliotek(i) korzysta konsola ps3, dx raczej nie, opengl?
OpenGL ES jak juz wspomnial przedmowca - http://www.khronos.org/opengles/
Chociaz to chyba raczej nie jest jedyne API umozliwiajace kodzenie grafiki na PS3
bardzo dobrze ze to ogl przynajmniej na korzysc graczy /mowie o korzysci wizualnej/
Tytuł: Odp: OpenGL vs DirectX
Wiadomość wysłana przez: matyssek w Maj 12, 2007, 14:19:24
Cytuj
Mam pytanie, z jakich bibliotek(i) korzysta konsola ps3, dx raczej nie, opengl?
OpenGL ES jak juz wspomnial przedmowca - http://www.khronos.org/opengles/
Chociaz to chyba raczej nie jest jedyne API umozliwiajace kodzenie grafiki na PS3
bardzo dobrze ze to ogl przynajmniej na korzysc graczy /mowie o korzysci wizualnej/
Acha, czyli OpenGL wyświetla ładniejszą grafikę?  :D
Tytuł: Odp: OpenGL vs DirectX
Wiadomość wysłana przez: Pro Deo et Patria w Maj 12, 2007, 14:20:24
No przecież viherek już od pewnego czasu próbuje nas do tego przekonać.
Tytuł: Odp: OpenGL vs DirectX
Wiadomość wysłana przez: lothar25 w Czerwiec 02, 2007, 02:21:55
Ale mimo to zgadzam sie z teza Kuraka, ze OGL nie zostal stworzony do gier i to widac.
No nie wiem - takie PS3 wykorzystuje jako API graficzne OpenGL for Embedded Systems :P
Tytuł: Odp: OpenGL vs DirectX
Wiadomość wysłana przez: Kurak w Czerwiec 02, 2007, 10:40:37
Ale mimo to zgadzam sie z teza Kuraka, ze OGL nie zostal stworzony do gier i to widac.
No nie wiem - takie PS3 wykorzystuje jako API graficzne OpenGL for Embedded Systems :P
A co to ma do tego, do jakich celów został stworzony OpenGL, co? ;p
Tytuł: Odp: OpenGL vs DirectX
Wiadomość wysłana przez: maxest w Czerwiec 02, 2007, 17:27:31
Teraz bedziemy sie klocic do czego stworzono OGL? :P Wiadomo ze nie do gier (z poczatku), ale do renderingu grafiki. A skoro gry tego wymagaja, to mozna w takim razie wykorzystac OGL. Chyba oczywiste :)
Tytuł: Odp: OpenGL vs DirectX
Wiadomość wysłana przez: lothar25 w Czerwiec 02, 2007, 18:12:13
Ale mimo to zgadzam sie z teza Kuraka, ze OGL nie zostal stworzony do gier i to widac.
No nie wiem - takie PS3 wykorzystuje jako API graficzne OpenGL for Embedded Systems :P
A co to ma do tego, do jakich celów został stworzony OpenGL, co? ;p

Chodziło mi o to, że w  obecnej chwili zarówno na PC jak i konsoli PS3 OpenGL jest wykorzystywany do gier ;). Teraz jasno się wyraziłem ?;).
Zdaję sobię sprawę, że głównym celem była wizualizacja graficzna (np. w celach naukowych) i otwartość oraz przenośność standardu. Ale czas pokazał że wykorzystano go również do gier (vide q1,2,3,4, doom 3 itp. ) :)
Tytuł: Odp: OpenGL vs DirectX
Wiadomość wysłana przez: infernus w Czerwiec 02, 2007, 18:15:57
OpenGL niezostal stworzony do gier ale czy aby napewno to widac? ???
Tytuł: Odp: OpenGL vs DirectX
Wiadomość wysłana przez: HIsTronIC w Czerwiec 02, 2007, 18:33:35
Parasole na przykład zostały stworzone z myślą o ochronie przed słońcem, a teraz nikt nie pomyśli, że mogły zostać stworzone do czegoś innego jak tylko do ochrony przed deszczem.

I tak samo jest z OpenGL.
Tytuł: Odp: OpenGL vs DirectX
Wiadomość wysłana przez: Kurak w Czerwiec 02, 2007, 18:35:48
A jesteście pewni, że teraz OpenGL wykorzystuje się w zdecydowanej większości do gier? Bo ja nie...
Tytuł: Odp: OpenGL vs DirectX
Wiadomość wysłana przez: HIsTronIC w Czerwiec 02, 2007, 18:57:23
A jesteście pewni, że teraz OpenGL wykorzystuje się w zdecydowanej większości do gier? Bo ja nie...

W sumie ja też nie. Mimo to, na pewno używa się OpenGL  do gier w większym stopniu  niż było to zakładane przez twórców.
Tytuł: Odp: OpenGL vs DirectX
Wiadomość wysłana przez: Charibo w Czerwiec 02, 2007, 21:40:57
Ludzie! Klucic sie na temat! :)
Tytuł: Odp: OpenGL vs DirectX
Wiadomość wysłana przez: arturooo3 w Czerwiec 15, 2007, 12:18:22
Wg. mnie OpenGL jest szybszy ale nie oferuje tego wszystkiego co DX 9 i 10. Chodzi głównie o efekty i użycie Pixel i Vertex Shaderów.
Dawniej OpenGl był lepszy, ale to w czasach gdy gry nie miały efektów, i wysokiej jakości tekstur.
Sam przy tworzeniu gier używam Direct X
Tytuł: Odp: OpenGL vs DirectX
Wiadomość wysłana przez: novo w Czerwiec 15, 2007, 13:13:40
To radze jeszcze  troche poczytac, bo oba API maja takie same mozliwosci(ograniczeniem jest sprzet a nie API).
Tytuł: Odp: OpenGL vs DirectX
Wiadomość wysłana przez: Krzysiek K. w Czerwiec 15, 2007, 13:33:39
To radze jeszcze  troche poczytac, bo oba API maja takie same mozliwosci(ograniczeniem jest sprzet a nie API).
To radzę jeszcze trochę poczytać, bo róznice w możliwościach, chociaż niewielkie, ale są. W DirectX'ach nie masz dostępu do niektórych bajerów NVidii (np. Ultra Shadow, czy register combiners), ale za to w OpenGL są pewne problemy z programowaniem shaderów (różne rozszerzenia na różnych kartach i błędy w kompilatorach GLSL w driverach). Jeżeli chodzi o same drivery, to często mają one błędy, w skutek czego OpenGL i Direct3D mogą się różnie zachowywać, a kompilatory GLSL są tu chyba najlepszym przykładem (co prawda nie jest to wina OpenGL jako takiego, ale faktem jest, że różnice z tego powodu są). Innymi przykładowymi różnicami w możliwościach jest zachowanie się tekstur w OpenGL i Direct3D, gdzie Direct3D daje możliwość własnoręcznej kontroli nad wrzucaniem i usuwaniem tekstur z karty, podczas gdy w OpenGL takiej mozliwości nie widziałem. :)
Tytuł: Odp: OpenGL vs DirectX
Wiadomość wysłana przez: novo w Czerwiec 15, 2007, 17:15:00
My bad
Tytuł: Odp: OpenGL vs DirectX
Wiadomość wysłana przez: bonzaj w Czerwiec 15, 2007, 17:41:51
Czy myslicie, ze w przyszlosci tworcy API udostepnia mozliwosc bezposredniego dostepu do pamieci na karcie graficznej?
Tytuł: Odp: OpenGL vs DirectX
Wiadomość wysłana przez: mINA87 w Czerwiec 15, 2007, 18:32:43
Czy myslicie, ze w przyszlosci tworcy API udostepnia mozliwosc bezposredniego dostepu do pamieci na karcie graficznej?
Hmm kto wie - DX 10 ku temu dąży - unifikacja rodzajów danych - można w locie zmieniać ich interpretację, ponadto w DX10 występują podzasoby czyli jak mamy np, texxturkę 2D to jej podzasobami są mip-mapy. Wszystko to jest nowe, a na samej karcie mamy teraz niemal pełen RAM czyli model gather, geometry shader i stream out pozwalają w niewielkim stopniu zrealizować scatter, ale nie w sposób arbitrażowy. Czy jednak będziemy sobie mogli pisać dowolnie po przestrzeni adresowej k.grafiki? Nie sądzę że prędko to nastąpi. Raczej model potoku będzie się uogólniał i był coraz bardziej elastyczny, ale z punktu widzenia k.grafiki model byte-exact access jest nietrafiony - mamy teksturkę i w shaderze nie ważne czy to jest R32  R16 czy X8R8G8B8 obsługuje się to na wyższym poziomie abstrakcji. Zapisywać zasoby bezpośrednio do karty - byłoby fajnie, ale groźnie - karta sama musi zarządzać sobie tym bajzlem, bo przecież to urządzenie o architekturze równoległej. Ważne, że da się coś łatwo wrzucić do jej pamięci a teraz nawet da się przemapować i jest ql.
Tytuł: Odp: OpenGL vs DirectX
Wiadomość wysłana przez: Krzysiek K. w Czerwiec 15, 2007, 19:16:07
Czy myslicie, ze w przyszlosci tworcy API udostepnia mozliwosc bezposredniego dostepu do pamieci na karcie graficznej?
Na XBox'ie 360 już coś takiego jest (w zasadzie to tam cała pamięć należy do karty graficznej, a CPU sobie tylko z niej gościnnie korzysta). :) Co do bezpośredniego dostępu do pamięci na PC, to nie sądzę, zeby był to wielki krok w stosunku do mapowania pamięci karty, więc myślę, że coś takiego może się pojawić.

Ciekawszą rzeczą był by dostęp do GPU na niższym poziomie, niż to oferują OpenGL i Direct3D. Mam tu na mysli odejście od przetwarzania ściśle równoległego i programowanie jednostek cieniujących jak zwykłych procesorów (trywialnym przykładem było by tu renderowanie do tekstury, z której w tym samym przebiego korzysta inny, albo nawet ten sam shader). Nie jestem pewien, ale o ile wiem, to CUDA już o coś takiego zahacza i uzywając osobnych driverów zmusza GPU do rzeczy, do których OpenGL i Direct3D nijak nie są w stanie GPU zmusić (np. ustawienie kilku(nastu) shaderów w potok). :)
Tytuł: Odp: OpenGL vs DirectX
Wiadomość wysłana przez: . w Czerwiec 22, 2007, 01:13:37
Hej, może ktoś zauważył, że coraz bardziej obciąża się GPU. Może się tak zdarzyć, że kilka rdzeni procesora będzie wolnych, podczas gdy GPU będzie, aż dymił. Już nie mówię, że ludzie chcą mieć „pseudo-fizykę” na GPU, rendering i… dźwięk(!!! Poszukać materiałów dotyczących planów ATI). I bardzo dobrze, najlepiej, żeby nikt nie pisał wielo-potokowych/wątkowych engine’ów, tylko wszystko zrzucić na GPU, he he he ;)
Tytuł: Odp: OpenGL vs DirectX
Wiadomość wysłana przez: mINA87 w Czerwiec 22, 2007, 10:46:12
Hej, może ktoś zauważył, że coraz bardziej obciąża się GPU. Może się tak zdarzyć, że kilka rdzeni procesora będzie wolnych, podczas gdy GPU będzie, aż dymił. Już nie mówię, że ludzie chcą mieć „pseudo-fizykę” na GPU, rendering i… dźwięk(!!! Poszukać materiałów dotyczących planów ATI). I bardzo dobrze, najlepiej, żeby nikt nie pisał wielo-potokowych/wątkowych engine’ów, tylko wszystko zrzucić na GPU, he he he ;)
Też się nad tym momentami zastanawiałem, ale zobacz . - pokaż mi produkcje które korzystają chociażby z HavokFX :] Że o dźwięku liczonym na karcie nie wspomnę. W klasycznym mainstream'ie gamne dev'u nie liczy się wszystkiego na GPU. Pokaż mi chociażby produkcję sortującą particle na GPU. Te wszystkie techniki są adaptowane przez GPGPU, a o dymieniu GPU będzie dopiero mowa w produkcjach korzystających z HavokFX - wtedy zobaczymy co będzie z tego Twojego pure-evil-złego obciążania jedynie GPU :) Moim zdaniem to podejście jest dobre, bo GPU ciągle zostawia daleko w tyle CPU - ma architekturę równoległa, świetnie sobie radzie ze zmiennymi przecinkami i ma pamięci o kosmicznych prędkościach. To wszystko sprawia że często warto zapchać GPU. Ma to przede wszystkim sens gdy jesteśmy w stanie zniwelować wymianę danych CPU <-> GPU. Ja tam nie sądzę  żeby był to zły trend (chociaż potok graficzny często wystarczająco dobija GPU :P Np. Stalker - tam ciężko wyciągnąć coś więcej nawet z najnowszych kart).
Tytuł: Odp: OpenGL vs DirectX
Wiadomość wysłana przez: ziomber w Czerwiec 23, 2007, 02:39:50
DirectX oferuje efekty ktoe są juz zaprograwmoane a w OpenGL trzeba je samemu od początku pisać ui w ogoel DirecTX oferuje oblsluge dzojów padów myszek z feedbacjkiem it. a opengl tylko grafiker ale jak sie odpowiednio uzyej to mozna uzyskac co sie chce to samo w directX a co z Windows Vista gdzie OpenGL ma byc emulowane co wy o tym sadzicie?

// edit by bies
Hmm, czekasz na DirectSpellchecker?
Tytuł: Odp: OpenGL vs DirectX
Wiadomość wysłana przez: Krzysiek K. w Czerwiec 23, 2007, 02:47:45
Cytuj
DirecTX oferuje oblsluge dzojów padów myszek z feedbacjkiem it. a opengl tylko grafiker
A co ma piernik do wiatraka? OpenGL to biblioteka graficzna, a DirectX to cały pakiet bibliotek, z których za grafikę odpowiada Direct3D. :)
Tytuł: Odp: OpenGL vs DirectX
Wiadomość wysłana przez: puch w Czerwiec 23, 2007, 17:08:24
Cytuj
A co ma piernik do wiatraka? OpenGL to biblioteka graficzna, a DirectX to cały pakiet bibliotek, z których za grafikę odpowiada Direct3D.

Właśnie. Tylko czemu nazwa tematu jest: OpenGL vs DirectX a nie OpenGL vs Direct3D ;)
Tytuł: Odp: OpenGL vs DirectX
Wiadomość wysłana przez: Riddlemaster w Czerwiec 23, 2007, 17:34:09
Zwolennicy DXa podkreślają jego kompleksowość :)
Tytuł: Odp: OpenGL vs DirectX
Wiadomość wysłana przez: Randhall w Lipiec 01, 2007, 19:44:24
Nie wiem czy ktoś może już o tym wspominał bo nie przebiłem się przez całe 20 stron więc jeśli kogoś cytuje lub powtarzam zdania to sorkie :)
Chciałem tylko powiedzieć że kłutnia d3d vs OGL do końca nie ma sensu z kilku powodów.
<to już napewno ktoś zauważył a jak nie to lol>
OpenGL jest api stworzoną dla przemysłu ponieważ <i mówcie sobie co chcecie ale> jest szybszy od D3D
natomiast D3D został stworzony żeby ułatwić developerom tworzenie grafiki do gier a co za tym idzie masy efektów.
Dodam jeszcze że najczęstszy argument przeciwko OGL to brak obiektowości.
Sam od ładnych kilku lat pisze w OGL'u i jakoś mi to nie przeszkadzało ponieważ jestem programistą.
I potrafie sobie napisać własną klasę zarządzającą potrzebnymi mi funkcjami i korzystającą z OGL'a.

Na zakończenie jak by ktoś mnie chciał spalić na stosie za herezje dopisze tylko jedną rzecz.
Jeśli OpenGL jest gorszy od DirectX'a to czemu wszystkie wieksze programy do tworzenia grafiki 3D korzystają z niego przy wizualizacji efektów ??
I czemu też gry które zabijają nas grafiką a mają działać szybko zazwyczaj korzystają z OGL'a ??
Grzecznie teraz odpowiem na to pytanie "Powodem jest WYDAJNOŚć"
I broniąc D3D dodam jeszcze:
Oczywiście że korzystając z D3D dużo łatwiej jest korzystać z najnowszych możliwości kart graficznych ponieważ panowie z microsoftu implementują wszystko za Ciebie a ty musisz tylko wywołać odpowiednią funkcję. Jest to jeden z głównych powodów dominacji D3D nad OGL'em

Tak więc powtórze jeszcze raz opinię :)
Obie API są doskonałe tylko w każdej pracuje się troche inaczej.
Jeśli chcesz pisać szybko i łatwo gry zabijające grafiką to zapomnij o OGL'u bo jest on łatwiejszy na początku ale żeby wycisnąć z niego naprawde wszystko trzeba się ostro napracować.
Jeśli natomiast jesteś psychopatą z obsesją na punkcie wydajności i optymalizacji to zapomnij o D3D bo jak chcesz optymalizować kod w którym nie masz kontroli nad połową metod i funkcjonalności.
Tytuł: Odp: OpenGL vs DirectX
Wiadomość wysłana przez: Randhall w Lipiec 01, 2007, 19:51:25
A no i tak z tego rozpędu zapomniałem jeszcze dodać że :) większe firmy korzystają z OGL'a ponieważ jest on przenośny ;) :D ale myśle że wszyscy to wiedzą.
Tytuł: Odp: OpenGL vs DirectX
Wiadomość wysłana przez: Charibo w Lipiec 01, 2007, 19:54:33
Cytuj
OpenGL jest api stworzoną dla przemysłu ponieważ <i mówcie sobie co chcecie ale> jest szybszy od D3D
taa, w srody, kiedy ksiezyc jest w nowiu, o 3.27AM? Niedorzecznosc... Obie biblioteki maja taka sama lub bardzo podobna wydajnosc.

Cytuj
Jeśli natomiast jesteś psychopatą z obsesją na punkcie wydajności i optymalizacji to zapomnij o D3D bo jak chcesz optymalizować kod w którym nie masz kontroli nad połową metod i funkcjonalności
Podaj przyklad nad czym nie masz kontroli w DirectX, hm?
Tytuł: Odp: OpenGL vs DirectX
Wiadomość wysłana przez: Krzysiek K. w Lipiec 01, 2007, 21:18:29
Cytuj
OpenGL jest api stworzoną dla przemysłu ponieważ <i mówcie sobie co chcecie ale> jest szybszy od D3D
Jakieś dowody na poparcie tej tezy?

Cytuj
Dodam jeszcze że najczęstszy argument przeciwko OGL to brak obiektowości.
Jeżeli słuchasz głównie OOPowców, to tak. Jak dla mnie większym problemem jest puchnięcie API (zalegają tam funkcje, z których już dawno nikt nie korzysta w praktyce) oraz cały mętlik z rozszerzeniami.

Cytuj
Jeśli OpenGL jest gorszy od DirectX'a to czemu wszystkie wieksze programy do tworzenia grafiki 3D korzystają z niego przy wizualizacji efektów ??
Głównie dlatego, żeby dało się je przenieść na Mac'a, poza tym czasami można wybrać, czy ma korzystać z OpenGL, czy z D3D.

Cytuj
I czemu też gry które zabijają nas grafiką a mają działać szybko zazwyczaj korzystają z OGL'a ??
Które gry?? Oblivion i Gothic 3 chodzą pod D3D, o Unreal Engine 3, CryTek'ach, Chrome'ach i Painkillerach nie wspominając. Jedynie Carmack został praktycznie samotnym obrońcą OpenGL'a wśród twórców większych produkcji.

Cytuj
Grzecznie teraz odpowiem na to pytanie "Powodem jest WYDAJNOŚć"
Masz błędne informacje. Zreszta, wszyscy teraz zaczynają tworzyć większe pod D3D, bo można grę potem przenieść na XBox'a 360.

Cytuj
Oczywiście że korzystając z D3D dużo łatwiej jest korzystać z najnowszych możliwości kart graficznych ponieważ panowie z microsoftu implementują wszystko za Ciebie a ty musisz tylko wywołać odpowiednią funkcję. Jest to jeden z głównych powodów dominacji D3D nad OGL'em
Tutaj też nie masz racji. Co prawda D3DX sporo może ułatwić, ale jeżeli chodzi o najnowsze możliwości, to często niektórych rzeczy nie da się w D3D wykorzystać i udostępniane są przez NVidię jedynie jako rozszerzenia (ATI jakoś nie spieszy się z nowościami technologicznymi).

Cytuj
Jeśli chcesz pisać szybko i łatwo gry zabijające grafiką to zapomnij o OGL'u bo jest on łatwiejszy na początku ale żeby wycisnąć z niego naprawde wszystko trzeba się ostro napracować.
Tutaj akurat się zgodzę. :)

Cytuj
Jeśli natomiast jesteś psychopatą z obsesją na punkcie wydajności i optymalizacji to zapomnij o D3D bo jak chcesz optymalizować kod w którym nie masz kontroli nad połową metod i funkcjonalności.
Tutaj bywa różnie i OpenGL i Direct3D pozwalają na jedne rzeczy, a nie pozwalają na inne. Przykładowo D3D ma znacznie kosztowniejsze wywołania DrawPrimitive niż odpowiednik z OpenGL (tam narzut jest przeniesiony na inne funkcje), a także OpenGL daje większą w definiowaniu zawrtości i układu vertex buforów, co pozwala na kombinowanie z różnymi sposobami renderowania (np. pseudo instancing). Z drugiej strony nie zauważyłem, żeby OpenGL dawał jakąkolwiek możliwość samodzielnego zarządzania teksturami na karcie (po prostu wrzucasz teksturę do OpenGL'a), a w D3D jest możliwość przejęcia nad tym całkowitej kontroli (tekstury z puli D3DPOOL_DEFAULT).
Tytuł: Odp: OpenGL vs DirectX
Wiadomość wysłana przez: skoti w Lipiec 03, 2007, 00:29:39
Cytuj
OpenGL jest api stworzoną dla przemysłu ponieważ <i mówcie sobie co chcecie ale> jest szybszy od D3D
Jakieś dowody na poparcie tej tezy?
OpenGL powstał na stacje graficzne SGI do wizualizacji i był wykorzystywany renderingu Terminatora 2 :) (co akurat wręcz przeciwnie nie wymaga wydajności bo poza grami nie stosuje się raczej wizualizacji real-time :P)

Wydajnościowo oba api są porównywalne, możliwości też mają podobne (a jeśli jakieś efekty są w DX napisane w shaderach to można przecież użyć cg, które to jest językiem opisu shaderów w DX tylko się inaczej nazywa (CG powstawało w wyniku współpracy nVidii i Microsoftu, a różna nazwa jest tylko dla picu :P (cytat z http://http.download.nvidia.com/developer/cg/Cg_Tutorial/Chapter_1.pdf: "HLSL and Cg are the same language but reflect the different names each company uses to identify the language and its underlying technology.")))
Jak dla mnie każdy niech pisze w czym mu wygodniej - mi w opengl :P
Tytuł: Odp: OpenGL vs DirectX
Wiadomość wysłana przez: HIsTronIC w Lipiec 03, 2007, 01:09:32
A co by się stało gdyby ktoś zrobił ankietę. To jest chyba najlepszy sposób na to, żeby określić, czego używa więcej osób.



// edit @down; aha.
Tytuł: Odp: OpenGL vs DirectX
Wiadomość wysłana przez: spax w Lipiec 03, 2007, 01:12:32
A co by się stało gdyby ktoś zrobił ankietę. To jest chyba najlepszy sposób na to, żeby określić, czego używa więcej osób.

http://www.warsztat.gd/sondy.php?x=view&id=1
http://www.warsztat.gd/articles.php?x=view&id=216
http://www.warsztat.gd/articles.php?x=view&id=7

pozdrawiam.
Tytuł: Odp: OpenGL vs DirectX
Wiadomość wysłana przez: Asmodeusz w Lipiec 03, 2007, 17:42:55
Porównując wydajność OpenGL i DirectX zrobiłem test i jego wyniki są... ciekawe. Skompilowałem demko irrlichta i uruchomiłem je w 1280x1024@110Hz z wyłączonym vsync - żeby zmierzyć wydajność - na maszyny 32-bitowe i 64-bitowe. Testy były prowadzone na Windows Vista Ultimate [odpowiednio 32- lub 64-bit] na maszynie: core 2 cuo 2.66GHz, 4GB RAM, GeForce 8800GTS [sterowniki do karty graficznej ze strony nvidii]. Wynik jest... zaskakujący. Na 32-bitowej maszynie DirectX osiąga jakieś 60FPS, natomiast OpenGL nieco ponad 80, natomiast na 64-bitowej jest to 85FPS dla OGLa i... 120(!) dla DirectX. Powody mogą być dwa: albo pisany pod 32 bity OpenGL nie wykorzystuje możliwości 64 bitów, albo Microsoft olał wydajność 32-bitowego DirectX (podobnie jak i 32-bitowej Visty, która działa ślamazarnie w porównaniu do 64 bit) i postawił na 64 bity zachęcając do przejścia na nową platformę sprzętową.
Jak znajdę więcej czasu - zrobię dokładniejsze testy, tym razem może za pomocą czegoś bardziej miarodajnego (FPS to nie wszystko). Jakieś pomysły na test?
Tytuł: Odp: OpenGL vs DirectX
Wiadomość wysłana przez: gamecreator w Lipiec 03, 2007, 20:28:45
Cytat: HIsTronIC
A co by się stało gdyby ktoś zrobił ankietę. To jest chyba najlepszy sposób na to, żeby określić, czego używa więcej osób.

"Ludzie, jedzcie gówno! Miliony much nie może się mylić!" :P
To, że czegoś używa więcej osób, nie oznacza jeszcze, że to jest lepsze. Oznacza to jedynie, że ma lepszy marketing ;-J A zazwyczaj im gorszy jest produkt, tym więcej potrzeba marketingu ;-J

Co do porównywania wydajności OpenGL i DirectX to nie wiem czy jest sens. Obie bilioteki są jedynie interfejsem. Ich szybkość zależy od tego, jak ten interfejs zostanie zaimplementowany w sterownikach do kart graficznych. OpenGL może być zaimplementowany software'owo [np. Mesa] i wtedy raczej wydajne to nie będzie [no chyba że na Cray'u ;-J]. W większości przypadków sterowniki i implementację DirectX/OpenGL dla danej grafkarty dostarcza ta sama firma, więc trudno żeby były jakieś znaczące różnice w wydajności, jeśli oba interfejsy używają wewnętrznie tych samych sterowników i tego samego sprzętu.

Jeśli już porównujemy OpenGL i DirectX, to porównać należy to, czym się najbardziej różnią ;-)  OpenGL ma przede wszystkim taką przewagę, że jego implementacje są dostępne na całe mnóstwo różnych platform, i to zazwyczaj ze wspomaganiem sprzętowym. DirectX jest dostępny tylko na Windowsa i Xboxa [heh.. czyli słownie dwie platformy na krzyż, z czego obie od Małego-miękkiego ;P].
Różnią się też tym, że DirectX to API w pełni obiektowe i w dodatku wymaga stosowania technologii COM Microsoftu i nie ma możliwości z tego zrezygnować. Z kolei OpenGL to API dla języka C, a więc praktycznie nie korzysta z mechanizmów języka C++ i nie posiada wsparcia dla obiektowości. Dla niektórych będzie to zaletą, dla innych wadą. Jak dla mnie jest OK, bo nie narzuca mi żadnego konkretnego stylu programowania - jak chcę, mogę sobie go opakować w jakie chcę klasy. OpenGL jest tu dość elastyczny, łatwo się dostosowuje.
Jedyną wadą OpenGL jak dla mnie jest jego wolniejszy rozwój i konieczność kombinowania z rozszerzeniami [szczególnie na pewnej szczególnej platformie, która trochję go nie lubi ;-P].

Jest jeszcze coś w OpenGL, czego AFAIK nie ma w DirectX: można wypełniać ścianki patternami zamiast tekstur, można wyłączać linie siatki, które nie są krawędziami, i stosować antyaliasing punktów i linii siatki. Małe, a cieszy ;-D
Tytuł: Odp: OpenGL vs DirectX
Wiadomość wysłana przez: maxest w Lipiec 04, 2007, 23:56:09
Cytuj
Porównując wydajność OpenGL i DirectX zrobiłem test i jego wyniki są... ciekawe.
Jak mowimy o testach to i ja dorzuce cos od siebie. Unigine, ze wszystkimi bajerami D3D wyciaga pare % wiecej w wydajnosci niz OGL.
To w ogole bez sensu takie testy - to zalezy od wszystkiego: karta graficzna, sterowniki, a przede wszystkim od implementacji danego zadania. Nie rozumiem po co w ogole toczyc dalej ten temat - kazdy dojrzaly programista powie ze to bez zadnej cholernej roznicy czego sie uzywa, wazne by umiec tego uzywac. Czemu nikt np. nie porusza kwestii wydajnosci API dostepnych na konsole? Bo nie ma po prostu sensu - jest "cos" co daje mozliwosc wyrysowania "czegos" na ekranie i tylko trzeba tego w odpowiedni sposob uzyc, nierzadko korzystajac z roznego rodzaju trickow. Trzeba tylko znac to, czegos sie uzywa, a nie mowic "D3D jest lepszy niz OGL, bo ja uzywam D3D" - z reguly wlasnie takie stwierdzenia padaja :)
Tytuł: Odp: OpenGL vs DirectX
Wiadomość wysłana przez: skoti w Lipiec 05, 2007, 00:18:03
Porównując wydajność OpenGL i DirectX zrobiłem test i jego wyniki są... ciekawe. Skompilowałem demko irrlichta i uruchomiłem je w 1280x1024@110Hz z wyłączonym vsync - żeby zmierzyć wydajność - na maszyny 32-bitowe i 64-bitowe. Testy były prowadzone na Windows Vista Ultimate [odpowiednio 32- lub 64-bit] na maszynie: core 2 cuo 2.66GHz, 4GB RAM, GeForce 8800GTS [sterowniki do karty graficznej ze strony nvidii]. Wynik jest... zaskakujący. Na 32-bitowej maszynie DirectX osiąga jakieś 60FPS, natomiast OpenGL nieco ponad 80, natomiast na 64-bitowej jest to 85FPS dla OGLa i... 120(!) dla DirectX. Powody mogą być dwa: albo pisany pod 32 bity OpenGL nie wykorzystuje możliwości 64 bitów, albo Microsoft olał wydajność 32-bitowego DirectX (podobnie jak i 32-bitowej Visty, która działa ślamazarnie w porównaniu do 64 bit) i postawił na 64 bity zachęcając do przejścia na nową platformę sprzętową.
Jak znajdę więcej czasu - zrobię dokładniejsze testy, tym razem może za pomocą czegoś bardziej miarodajnego (FPS to nie wszystko). Jakieś pomysły na test?
Tak jak powiedział Maxest porównania takie porównania są bez sensu, ale poza tym Asmodeusz twoje porównanie dotyczące testów na windows vista jest tak jak porównanie opengl vs emulacja dx na linuxie :P... Vista ostro broni się przed opengl'em i jest dopiero we wczesnej fazie rozwoju na tą platformę. Bardziej "obiektywny" test można by wykonać na starszym systemie co i tak nie będzie trafny bo to zależy od sterowników i użytych technik w danym api. Testowanie wydajności nie ma sensu, raz wygrywa jedno raz drugie :)
Tytuł: Odp: OpenGL vs DirectX
Wiadomość wysłana przez: counterClockWise w Lipiec 09, 2007, 13:28:47
Oczywiście że porównanie wydajnośći OpenGL vs DirectX mija się z celem.
Owszem są takie aspekty w programowaniu grafiki, że dany efekt w programie będzie działał szybciej pod OGL-em inny szybciej pod DX-em i to wynika ze sposobu jego implementacji jaki w pewnym sensie API wymusza - ale to raz na korzysc OGL raz DX.
Natomiast schodząc do najniższego poziomu to wydajność jest przybliżona i determinowana przez kartę graficzną.
Tytuł: Odp: OpenGL vs DirectX
Wiadomość wysłana przez: zero w Sierpień 18, 2007, 15:18:38
co do wydajności ogl vs directx to może:

http://content.3dlabs.com/Datasheets/TechnologyLaunchWhitepaper.pdf

page 3 :)

ktoś pokusie się o komentarz ?
Tytuł: Odp: OpenGL vs DirectX
Wiadomość wysłana przez: gamecreator w Sierpień 18, 2007, 16:46:00
To porównanie ilości warstw może mieć znaczenie, gdy ktoś chce modyfikować programy shaderów w trakcie renderingu. Zbytnio się nie znam, ale wydaje mi się, że takie programy kompiluje się raz i wrzuca do karty jednorazowo, a wtedy ilość warstw pośrednich nie powinna mieć zbytniego wpływu na wydajność renderingu.
Tytuł: Odp: OpenGL vs DirectX
Wiadomość wysłana przez: mINA87 w Sierpień 18, 2007, 16:55:50
co do wydajności ogl vs directx to może:

http://content.3dlabs.com/Datasheets/TechnologyLaunchWhitepaper.pdf

page 3 :)

ktoś pokusie się o komentarz ?
<ziew>
no i ? czujesz się lepszy, fajniejszy i w ogóle bo nie rozumiesz istoty działania mechanizmów kompilacji shaderów? :)
Tytuł: Odp: OpenGL vs DirectX
Wiadomość wysłana przez: gamecreator w Sierpień 18, 2007, 17:12:14
A ty czujesz się lepszy prawiąc takie farmazony? Baw się grzecznie i jak już chcesz komentować, to przynajmniej pisz na temat i wykaż się wiedzą, której brak zarzucasz zerowi.
Tytuł: Odp: OpenGL vs DirectX
Wiadomość wysłana przez: RageX w Sierpień 18, 2007, 17:35:18
No ale rzeczywiście... mINA97 ma rację, no bo co struktura czegoś, ma do wydajności. Co zresztą w tym dokumencie jest dość wyraźnie powiedziane. Sam ten rys. ma tylko przedstawić róznice w podejściu
w oby dwóch API. Nic to nie dowodzi. Tylko tyle, że z każdą kolejną wersją, są coraz większe różnice między nimi. A czy jest kompilacja na poziomie sterownika, czy wyżej. Ehh, i tak czy siak, na jednym i tym samym procku. Tyle, że vista potrzebuje takiego wyższego poziomu... dla "niby"(nie wnikam jak jest naprawdę) bezpieczeństwa. A OGL niejako idzie na przekór/ na złość microsoftowi, OGL będzie działał w niższej warstwie. Oczywiście za wszystkim tak naprawdę idzie o pieniądze. Microsoft moim zdaniem powinien trochę popuścić, na dobre by mu to wyszło... ale to temat na inną rozmowę.
Tytuł: Odp: OpenGL vs DirectX
Wiadomość wysłana przez: mINA87 w Sierpień 18, 2007, 17:42:20
A ty czujesz się lepszy prawiąc takie farmazony? Baw się grzecznie i jak już chcesz komentować, to przynajmniej pisz na temat i wykaż się wiedzą, której brak zarzucasz zerowi.
Tak czuję się lepszy. Ty skomentowałeś rzeczowo, ja po prostu wyraziłem swoją opinię co do poziomu opinii kolegi, gdyż wnioski do których doszedłeś Ty, RageX i ja wydają mi się oczywiste.
Tytuł: Odp: OpenGL vs DirectX
Wiadomość wysłana przez: gamecreator w Sierpień 18, 2007, 17:58:26
Cytat: mINA87
Tak czuję się lepszy. Ty skomentowałeś rzeczowo, ja po prostu wyraziłem swoją opinię co do poziomu opinii kolegi, gdyż wnioski do których doszedłeś Ty, RageX i ja wydają mi się oczywiste.

To mogłeś napisać o tych wnioskach. Co z tego że komuś powiesz, że jest głupi, i czujesz się z tego powodu lepszy? Jemu taka wypowiedź w niczym nie pomoże, wręcz przeciwnie. Ja się otwarcie przyznałem, że nie wiem zbyt wiele na temat programowania shaderów, ciekawe czemu po mnie nikt nie jeździ ;J

A wracając do tematu OpenGL: czytałem w sierpniowym SDJ, że ma wkrótce wyjść nowa wersja OpenGL 3. Ktoś coś wie jakie nowe niespodzianki nas czekają?
Tytuł: Odp: OpenGL vs DirectX
Wiadomość wysłana przez: mINA87 w Sierpień 18, 2007, 18:07:56
To mogłeś napisać o tych wnioskach.
Ty napisałeś wystarczająco w tym temacie, nie chciałem powtarzać tych samych argumentów, a jednak napisąłem, bo nie potrafiłem sobie odmówić rzucenia chamskiej riposty :]

Co z tego że komuś powiesz, że jest głupi,
Głupi to słowo obraźliwe, zazwyczaj go nie używam.

i czujesz się z tego powodu lepszy?
Prawdę mówiąc nie czuję :] Sarkazm, ironia i te sprawy :)

Jemu taka wypowiedź w niczym nie pomoże, wręcz przeciwnie. Ja się otwarcie przyznałem, że nie wiem zbyt wiele na temat programowania shaderów, ciekawe czemu po mnie nikt nie jeździ ;J
Słuchaj jest różnica - zapytać się o coś, a stwierdzić coś, do tego w bardzo kontrowersyjnym temacie w taki sposób.
Rzadko kiedy jeżdżę po kimś, nawet jeśli jego pytania są absurdalne, ale gdy ktoś podejmuje kontrowersyjną dyskusję i okazuje się że jest w błędzie to odpowiadam w taki sposób, w jaki ja sam oczekiwałbym odpowiedzi w podobnej sytuacji :)
Myślę że wyjaśniłem Ci wystarczająco mój schemat postępowania, możesz się zgadzać z nim lub nie - masz do tego prawo, jeśli chcesz o tym podyskutować to myślę że via PM, bo wystarczająco dużo offtopu powstało.
A wracając do kwestii wiedzy to staram sie kierować zdaniem "wiem że nic nie wiem", gdyż wiedza jest pojęciem bardzo subiektywnym i mimo tego że na świecie żyje ograniczona liczba osób, zawsze znajdzie się ktoś kto posiada _w danym temacie_ większą czy mniejszą wiedzę. Sam staram sie rzucać w wir dyskusji, gdyż (nie pamiętam kto tak twierdził) najlepszym sposobem na zweryfikowanie opinii jest poddanie jej ogniu krzyżowemu negatywnej krytyki. Wtedy jesteśm,y w stanie sporo się nauczyć, potwierdzić lub obalić nasza tezę. Tyle ode mnie.

A wracając do tematu OpenGL: czytałem w sierpniowym SDJ, że ma wkrótce wyjść nowa wersja OpenGL 3. Ktoś coś wie jakie nowe niespodzianki nas czekają?
Oj dużo niespodzianek :) Jest nawet temacik na forum gdzie toczyła się dyskusja na ten temat. Skrótowo: kapsułkowanie stanów i model potoku a'la DirectX 10. Standaryzacja itp.
Tytuł: Odp: OpenGL vs DirectX
Wiadomość wysłana przez: zero w Sierpień 18, 2007, 20:41:50
"w ogóle bo nie rozumiesz istoty działania mechanizmów kompilacji shaderów?"

skoro Ty dokładnie rozumiesz :) (pewnie pracujesz dla ATI albo nVidii) to proszę objaśnij ten proces w szczególe ;)

a co do linka, który podałem, to czy oprócz obrazka który jest na stronie 3 przeczytałeś to co jest na stronie następnej ?

Tytuł: Odp: OpenGL vs DirectX
Wiadomość wysłana przez: st3tc w Sierpień 18, 2007, 20:46:19
a co do linka, który podałem, to czy oprócz obrazka który jest na stronie 3 przeczytałeś to co jest na stronie następnej ?
Ja przeczytałem. I ten obrazek jak i opis jest tendencyjny. Autor procesy "przetwarzania" shaderków w opengl wkleil w jedną pozycję ("ogls compiler") a z niewiadomych przyczyn dla dx-a porozbijał na "pod procesy" - a powinien napisać "HLSL compiler" :).  "ogls compiler" to podobnie złożona maszyneria.
Mydlenie oczu i tyle (warto wspomnieć, że "ogls compiler" na nVidii to ... Cg compiler "wbudowany" w sterownik. A to już mówi samo  przez się...

Ale pewnie nie mam racji :)
Pozdr.
Tytuł: Odp: OpenGL vs DirectX
Wiadomość wysłana przez: mINA87 w Sierpień 19, 2007, 13:12:22
Ale pewnie nie mam racji :)
Pozdr.
Nie masz pompek! Nie pracujesz dla AMD ani nVIDI!! Mosad się nie liczy ^^

zero: pomijając tendencyjności i inne fakty, to generalnie wydajność jest dla mnie funkcją kosztów wykonywania instrukcji ONLINE. Nie interesuje mnie preprocessing czyli koszty OFFLINE dopóki są one akceptowalne. Może stwierdzisz że gra działa mniej wydajnie pod XP niż pod 98, bo 98 się szybciej ładuje, ta? :P
A dla nV jeszcze nie pracuje :)
Tytuł: Odp: OpenGL vs DirectX
Wiadomość wysłana przez: zero w Sierpień 19, 2007, 13:34:22
"Może stwierdzisz że gra działa mniej wydajnie pod XP niż pod 98, bo 98 się szybciej ładuje, ta?"

to pozostawię bez komentarza ;)

podając link do tego dokumentu liczyłem na dyskusję czy jest to tylko chwyt marketingowy 3dlabs czy też istnieją zastosowania (niekoniecznie gry) w których ISTOTNY jest czas ładowania / przetwarzania shaderów.

"to generalnie wydajność jest dla mnie funkcją kosztów wykonywania instrukcji ONLINE. Nie interesuje mnie preprocessing czyli koszty OFFLINE dopóki są one akceptowalne."

znowu, zadaję pytanie czy czas preprocessingu shaderów może mieć znaczenie a jeśli tak to w jakich zastosowaniach ;) chyba nie istnieją jeszcze "self modyfing shaders" aka SMS ;)

OT:
czytając Twoje posty zauważyłem dziwną tendencję do stosowania wymyślnych określeń:

"ale to mi podchodzi pod ostrą hackerkę z lekkim rootkitowaniem "
"dumpowanie funkcjonalności"
"musisz zreplikować funkcjonalność loader'a PE jak już pisałem"

nie obraź się, ale mam wrażenie, że czasem nie wiesz co piszesz a sam pochopnie zarzucasz innym (np. mnie) brak wiedzy. nie sądzisz, że ludzie inteligentni i kulturalni posiadają trochę więcej pokory?
Tytuł: Odp: OpenGL vs DirectX
Wiadomość wysłana przez: mINA87 w Sierpień 19, 2007, 13:58:28
to pozostawię bez komentarza ;)
Widzisz - ja dokładnie w taki sposób odbieram Twoją wypowiedź :)

podając link do tego dokumentu liczyłem na dyskusję czy jest to tylko chwyt marketingowy 3dlabs czy też istnieją zastosowania (niekoniecznie gry) w których ISTOTNY jest czas ładowania / przetwarzania shaderów.
Trzeba było to sprecyzować.
Czas tworzenia/przetwarzania/kompilowania shaderów jest stosunkowo BARDZO wysoki jeśli chodzi o zastosowania czasu rzeczywistego, więc dokonuje się tego albo w tle, albo w osobnej fazie wczytywania. O ile drugie rozwiązanie jest bardzo naturalne, o tyle pierwsze może być problematyczne dosyć i nie widzę zastosowania poza doczytywaniem na bieżąco czy modyfikacją shaderów bezpośrednio w silniku. Przy podejściu pierwszym czas ten może być istotny, ale tutaj akurat czas przetwarzania shaderów jest stosunkowo niski, na tyle by się nim nie przejmować.

znowu, zadaję pytanie czy czas preprocessingu shaderów może mieć znaczenie a jeśli tak to w jakich zastosowaniach ;) chyba nie istnieją jeszcze "self modyfing shaders" aka SMS ;)
Self modyfing? Rozumiem to dosłownie - shader modyfikuje sam siebie w GPU? Mamy dynamiczną kontrolę przebiegu wykonywania w shaderach, ale bez przesady :)

OT:
czytając Twoje posty zauważyłem dziwną tendencję do stosowania wymyślnych określeń:
Tak stosuję bardzo wymyślne określenia, gdyż bawię się słowami, nie przykładam do nich zbyt dużej wagi i stosuję bardzo dużo skrótów myślowych. Ludzie z IGK do dzisiaj się brechtają z konstrukcji językowych które powstały na mojej prelekcji :)

nie obraź się, ale mam wrażenie, że czasem nie wiesz co piszesz a sam pochopnie zarzucasz innym (np. mnie) brak wiedzy. nie sądzisz, że ludzie inteligentni i kulturalni posiadają trochę więcej pokory?
Nie obrażam się, ale wyobraź sobie że mam pojęcie o czym piszę - skoro nie rozumiesz tych wypowiedzi to znaczy że nie masz akurat wiedzy w tamtej tematyce :) Mam naprawdę hardc0rowe pomysły, sam wyszukuję sobie problemy by proste rzeczy rozwiązywać na naprawdę wymyślne sposoby ale cóż - taka moja natura. Interesuję się szeroko pojętym bezpieczeństwem i stąd takie a nie inne pomysły. Jeżeli uważasz je za bezsensowne, bo np. twierdzisz że replikowanie funkcjonalności laoder'a PE nie ma sensu przy zabezpieczaniu aplikacji, czy że można prościej ustrzec się przed różnymi atakami na Twoją aplikację niż troszkę oszukując i robiąc rzeczy do których uciekają się twórcy rootkitów, to chętnie z Tobą podyskutuję :)
Odnośnie mojej wiedzy czy pokory - pewnie mi jej brak, ale ani mnie ani Tobie tego oceniać - ja nie byłbym obiektywny, a Ty niestety nie znasz mnie :)
Tytuł: Odp: OpenGL vs DirectX
Wiadomość wysłana przez: RageX w Sierpień 19, 2007, 14:03:12
poczytaj o fragment shaderach, to najlepszy sposób "samomodyfikujące się shader'y"... polecam prace pana Shawn'a Hargreaves'a na tabula coś tam.


Przyczepiłeś się do szczegółu... który zresztą jak w tekście zaznaczono, jest domniemaniem...

"Also, the fact that these shaders are translated into assembly code outside of DirectX
makes for a somewhat time consuming"

Odnoszenie się do tej teorii, byłoby przyznaniem racji...
To tak jakby się ktoś mnie się pytał dlaczego ukradłem mu 2 stówy, nie wiedząc czy ukradłem. W ten sposób urealnia się mit, buduje stereotypy... starczy.
Tytuł: Odp: OpenGL vs DirectX
Wiadomość wysłana przez: skovron w Sierpień 24, 2007, 18:39:51
Na wstępie przyznam się bez bicia, że wszystkich 20 stron nie przeczytałem dlatego jeśli się za kimś powtarzam lub nie wnoszę nic nowego do dyskusji to z góry przepraszam.

(Tak na marginesie to nie chce się czytać tylu postów jeśli większość z nich zamiast pozostawać w temacie, przeradza się w kłótnie o to jak kto czyją wypowiedź odbiera, kto kogo obraża a kogo przeprasza...)

Ale wracając do tematu:
Chciałbym powiedzieć, że moim skromnym zdaniem, kłótnie o wyższość jednej biblioteki nad drugą, a w szczególności dotyczące spraw wydajności, nie mają w ogóle sensu. Tak naprawdę wydajność określa sprzęt. Wiem wiem można zaprojektować bibliotekę graficzną tak, że będzie wszystko robiła nieoptymalnie (niech dla przykładu nie umożliwia wysyłania tablic wierzchołków do sprzętu i zmusza użytkownika do przesyłania jednego wierzchołka na jedno wywołanie funkcji). Ok ok zatem sam design biblioteki, podejście do tego jak ma coś robić jest ważne, ale moim zdaniem ani Microsoftowi, ani firmom wspierającym OpenGL nie zależy na tym by ich produkty źle spełniały swoje zadania. (Choć Microsoft na początku miał z designem małe problemy).

Spójrzcie na to jeszcze inaczej. OpenGL to tak naprawdę tylko specyfikacja (pomijam tu fakt, że pewne algorytmy mogą realizować się także w sofcie). Weźmy dowolne rozszerzenie do OpenGL
http://oss.sgi.com/projects/ogl-sample/registry/ (http://oss.sgi.com/projects/ogl-sample/registry/)
Czy jest to jakaś biblioteka, którą ktoś napisał? Jest tam kod, którego możemy użyć? Nie, wszystko to to tylko specyfikacja. Jak zostanie ona użyta zależy tylko i wyłącznie od twórców sterowników. Pewne fragmenty mogą być zoptymalizowane bardziej, inne mniej lub wogóle.

Chodzi mi o to, że zrozumiałbym jeszcze porównywanie osiągów aplikacji testowej napisanej np. w OpenGL dla dwóch różnych sterowników. To ma sens. Natomiast porównywanie FPS'ów osiąganych dla dwóch różnych bibliotek graficznych mija się z celem.
Tytuł: Odp: OpenGL vs DirectX
Wiadomość wysłana przez: mr666 w Sierpień 24, 2007, 20:58:21
Ostatnio znalazłem dośc ciekawy artykuł nt. początków obu API pod Windowsem: http://www.starstonesoftware.com/OpenGL/opengl.htm (http://www.starstonesoftware.com/OpenGL/opengl.htm)


 
Tytuł: Odp: OpenGL vs DirectX
Wiadomość wysłana przez: Krzysiek K. w Sierpień 24, 2007, 22:25:42
Ostatnio znalazłem dośc ciekawy artykuł nt. początków obu API pod Windowsem:
W tym momencie to ma już właściwie tylko wartość historyczną. :)
Tytuł: Odp: OpenGL vs DirectX
Wiadomość wysłana przez: gamecreator w Sierpień 24, 2007, 23:05:29
Cytat: mr666
Ostatnio znalazłem dośc ciekawy artykuł nt. początków obu API pod Windowsem: http://www.starstonesoftware.com/OpenGL/opengl.htm (http://www.starstonesoftware.com/OpenGL/opengl.htm)

Ja kiedyś czytałem pewien tekst o początkach interfejsów graficznych, w którym Microsoft był przedstawiony jako wynalazca wszystkiego ;-J [w książce Petzolda, jeśli mam być dokładny].


Cytat: skovron
Spójrzcie na to jeszcze inaczej. OpenGL to tak naprawdę tylko specyfikacja (pomijam tu fakt, że pewne algorytmy mogą realizować się także w sofcie).

Zwracałem już uwagę na ten fakt w moim pierwszym poście w tym temacie:

Cytat: gamecreator
Co do porównywania wydajności OpenGL i DirectX to nie wiem czy jest sens. Obie bilioteki są jedynie interfejsem. Ich szybkość zależy od tego, jak ten interfejs zostanie zaimplementowany w sterownikach do kart graficznych. OpenGL może być zaimplementowany software'owo [np. Mesa] i wtedy raczej wydajne to nie będzie [no chyba że na Cray'u ;-J]. W większości przypadków sterowniki i implementację DirectX/OpenGL dla danej grafkarty dostarcza ta sama firma, więc trudno żeby były jakieś znaczące różnice w wydajności, jeśli oba interfejsy używają wewnętrznie tych samych sterowników i tego samego sprzętu.

ale coś przeszedł bez echa ;-J
Jeśli chcemy porównywać wydajność DirectX i OpenGL, to trzeba jeszcze podać o którą implementację OpenGL chodzi ;-J Specyfikacja OpenGL opisuje tylko API, interfejs. Nie mówi, jak poszczególne funkcje mają być zaimplementowane, ani nawet czy mają być wspomagane sprzętowo ;-)
Tytuł: Odp: OpenGL vs DirectX
Wiadomość wysłana przez: skovron w Sierpień 25, 2007, 09:28:14
Cytat: gamecreator
ale coś przeszedł bez echa ;-J
Jeśli chcemy porównywać wydajność DirectX i OpenGL, to trzeba jeszcze podać o którą implementację OpenGL chodzi ;-J Specyfikacja OpenGL opisuje tylko API, interfejs. Nie mówi, jak poszczególne funkcje mają być zaimplementowane, ani nawet czy mają być wspomagane sprzętowo ;-)

No właśnie. OpenGL to tylko specyfikacja (przepis jak upiec ciasto, samym pieczeniem zaś zajmują się już kucharze :)). Specyfikacja w wielu miejscach stwierdza, że coś powinno być zorganizowane tak, by zapewnić jak najlepszą wydajność, nie zmuszając do konkretnych rozwiązań. Jak wspomniał gamecreator, nie stwierdza ona nawet tego czy coś ma być realizowane sprzętowo.

Z DX jest trochę inaczej chociaż prawdopodobnie na poziomie sterowników kod jest podobny. Np. mechanizm wysyłania tablicy wierzchołków przez AGP lub PCIEx jest prawdopodobnie (tego nie wiem zgaduję) realizowany przez tą samą funkcję.
Tytuł: Odp: OpenGL vs DirectX
Wiadomość wysłana przez: desertangel w Sierpień 25, 2007, 11:53:42
Może sobie odpuścicie ? Hmm ?
Takie tematy mogą prowadzić początkujący, którzy nie znają realiów...

Obie biblioteki mają swoje zalety i wady. Współcześnie obie jest dobrze znać.
Nie rozumiem po co jest prowadzić takie jałowe dyskusje ?

To tak jakby zapytać co jest lepsze: PHP czy C++ ?
Odpowiedź zawsze będzie brzmiała: zależy.

Czy ktoś wykorzysta PHP do tworzenia silnika 3D ? A może c++ będzie obsługiwał strony ?

Podobnie było z C/C++ i Asm/C. Liczy się nie to co masz, ale jak to używasz.
Powstają dobre gry i w OGL i w DX.
Tytuł: Odp: OpenGL vs DirectX
Wiadomość wysłana przez: matyssek w Sierpień 25, 2007, 12:19:37
Czy ktoś wykorzysta PHP do tworzenia silnika 3D ?
Od razu zaznaczam, że zgadzam się z Tobą co do tego, że te biblioteki mają wady i zalety, oraz że dobrze jest znać obie - tak tylko na marginesie: http://gorion.pl/page.php?ID=5 (http://gorion.pl/page.php?ID=5) ;)

pozdrawiam
Tytuł: Odp: OpenGL vs DirectX
Wiadomość wysłana przez: desertangel w Sierpień 25, 2007, 12:23:57
He, he. Dobra złapałeś mnie :)
Problem tylko stanowi fakt, że nowego Diablo, Starcrafta itp. na tym nie zrobisz...
Mam nadzieję, że teraz moja poprzednia wypowiedź jest czytelniejsza.

Edit:
Przy okazji: Projekt został zawieszony i prawdopodobnie nie będzie już dalej rozwijany. To chyba daje do myślenia. Niektóre projekty to po prostu sztuka dla sztuki. Takie gamedev'owe kto ma większego. I wg mnie tak należy to odbierać.
Tytuł: Odp: OpenGL vs DirectX
Wiadomość wysłana przez: skoti w Sierpień 25, 2007, 14:25:45
A może c++ będzie obsługiwał strony ?
Dodam tylko że zdarzają się i takie strony... od czego niby jest cgi ;p

Ale zgadzam się, że warto znać obie w tej chwili, bo jak będzie potrzeba napisania na ps3 i xbox to się nie obejdzie bez znajomości obu bibliotek.
Tytuł: Odp: OpenGL vs DirectX
Wiadomość wysłana przez: desertangel w Sierpień 25, 2007, 14:30:52
Hmm, wpadam w pułpakę za pułapką. Trzeba się doszkolić.
Mam nadzieję, że przynajmniej to co zostało z mojej wypowiedzi, ma sens i rozwiązuje problematyczną kwestię  OGL vs DX.
Tytuł: Odp: OpenGL vs DirectX
Wiadomość wysłana przez: maxest w Sierpień 25, 2007, 14:57:00
I tak najwazniejsze jest "strong math skills", dzieki czemu nauka API do renderowania grafiki bedzie niespecjalnie trudna :)
Tytuł: Odp: OpenGL vs DirectX
Wiadomość wysłana przez: Reg w Sierpień 26, 2007, 11:48:36
To tak jakby zapytać co jest lepsze: PHP czy C++ ?
Odpowiedź zawsze będzie brzmiała: zależy.
To raczej kiepskie porównanie. Jasne, że jeśli ktoś pisze stronę to raczej w PHP (chociaż w C++ też się da - od czego jest CGI). Jasne, że jeśli ktoś pisze program, to raczej w C++ albo innym "poważnym" języku (chociaż w PHP też się da - ja sobie piszę w PHP proste skrypty konsolowe).

Podobnie jeśli ktoś pisze grę przenośną na Linuksa, użyje OpenGL. Jeśli ktoś pisze grę na XBoksa, użyje DirectX.

A co, jesli ktoś pisze grę na peceta, pod Windowsa? Wtedy wybór między DirectX a OpenGL "zależy" od tego co ktoś zna, co mu się bardziej podoba, co szybciej działa (jeśli w ogóle są jakieś różnice) itp.
Tytuł: Odp: OpenGL vs DirectX
Wiadomość wysłana przez: Darek w Wrzesień 14, 2007, 19:32:55
Podpisuje się pod wypowiedziami moich przedmówców: każde API ma swoje wady i zalety. Dokładniej, widzę to tak: DirectX ma wiele zalet (nie będe ich wymieniał, bo wszyscy je znamy), ale niestety jest bardzo słabo przenośny. Natomiast OpenGL posiada  dużą zaletę, w postaci właśnie wspomnianej przenośnosci, brakuje natomiast wielu pożytecznych usprawnień obecnych w DirectX.

Tak czy inaczej,  jest to temat pokroju: "Ile osób tyle opini".
Tytuł: Odp: OpenGL vs DirectX
Wiadomość wysłana przez: _MtZ_ w Wrzesień 29, 2007, 21:51:43
No cóż czasem warto zakładać właśnie takie tematy np. po to, żeby uniknąć syfu na forum :D Itak nikt nie czyta całego topicu a najwyżej 3 ostatnie posty. Ale nie ma co - temat popularny jest :D (Chociaż nie wiem czy to dobrze świadczy o polskim gamedevie  ;D )
Tytuł: Odp: OpenGL vs DirectX
Wiadomość wysłana przez: czerwiakowski w Listopad 16, 2007, 06:12:28
Przeczytałem pierwszą i ostatnia stronę wątku więc nie wiem czy ktoś już o tym wspomniał, ale i tak dorzucę swoje 3 gorsze ;P

Możecie dyskutować co jest bardziej przenośne, co mniej, co trudniejsze, a co łatwiejsze, ale i tak jedynym wyznacznikiem jest twarda waluta. Obydwa interfejsy zostały napisane nie dla entuzjastów, ale po to, aby zarobić na nich kasę (to twórcy) i zarobić kasę na aplikacjach które na nich bazują. W związku z tym odpowiedzcie sobie na jedno pytanie: ile wart jest rynek gier linuxowych i macowych, a ile rynek windowsowo - xboxowy? Uczcie się tego co przynosi większą kasę - po co zakuwać dwa API kiedy jeden przynosi zyski, a nauka drugiego to strata czasu, czyli waszych nie zarobionych pieniędzy.
Tytuł: Odp: OpenGL vs DirectX
Wiadomość wysłana przez: Riddlemaster w Listopad 16, 2007, 09:51:31
Cytuj
Możecie dyskutować co jest bardziej przenośne, co mniej, co trudniejsze, a co łatwiejsze, ale i tak jedynym wyznacznikiem jest twarda waluta. Obydwa interfejsy zostały napisane nie dla entuzjastów, ale po to, aby zarobić na nich kasę (to twórcy) i zarobić kasę na aplikacjach które na nich bazują.
Zapominasz o jednym detalu (mimo że jestem zwolennikiem DXa). Programowanie grafiki to nie tylko gry i aplikacje na Windowsa, ale również np. projekty naukowe czy symulatory (NASA w niektórych projektach korzysta z OpenGLa), które często operują na systemach innych od Windowsa. Kasa nie mała, a DXa raczej nie wykorzystasz ;)
Tytuł: Odp: OpenGL vs DirectX
Wiadomość wysłana przez: gamecreator w Listopad 16, 2007, 10:53:09
Cytat: Darek
DirectX ma wiele zalet (nie będe ich wymieniał, bo wszyscy je znamy), ale niestety jest bardzo słabo przenośny.
Tak jakby to była jego jedyna wada ;P A poza tym dla niektórych brak przenośności nie jest wadą [bo np. piszą tylko na Windows].

Cytat: Darek
Natomiast OpenGL posiada  dużą zaletę, w postaci właśnie wspomnianej przenośnosci
I tylko to? Dla mnie zaletą OpenGL jest też to, że nie muszę się babrać z COMem i że jego nieobiektowe API pozwala mi wybrać, czy chcę pisać proceduralnie, czy opakować go w obiekty. Dla niektórych wadą jest to, że OpenGL jest tylko do grafiki 3D, a dla mnie jest to zaleta, bo jeśli piszę aplikację tylko graficzną, nie muszę wlec wraz z nią całego pakietu multimedialnego "do wszystkiego".
Zady i walety OpenGL i DirectX zostały już wymienione w innych postach wcześniej w tym wątku, więc w tej kwestii trudno wnieść coś nowego. Ale jeśli już chcesz porównywać, to przynajmniej rób to uczciwie i porównuj OpenGL nie z całym DirectX, lecz z samym modułem DirectX Graphics odpowiedzialnym wyłącznie za grafikę 3D [tak jak OpenGL].

Cytat: Darek
brakuje natomiast wielu pożytecznych usprawnień obecnych w DirectX.
Hmm.. Może gdybyś je wymienił, to dyskusja stałaby się bardziej merytoryczna ;)

Cytat: czerwiakowski
Obydwa interfejsy zostały napisane nie dla entuzjastów, ale po to, aby zarobić na nich kasę
A to ciekawe, bo o ile mi wiadomo, OpenGL jest wolnym standardem przemysłowym, nie należącym do żadnej pojedynczej firmy. Każdy może go używać i implementować jak chce, a jedynie za wykorzystanie logo OpenGL są pobierane opłaty. DirectX także można wykorzystywać bez opłat, lecz jest własnością jednej firmy i tylko ona decyduje, co się w nim znajdzie.

Cytat: czerwiakowski
i zarobić kasę na aplikacjach które na nich bazują.
Jeśli mówisz o zarabianiu na grach i programach przez ich twórców, to raczej chyba nie ma znaczenia, jakiej biblioteki użyli, przecież tak czy tak mogą sprzedawać swój program. Użycie OpenGL w żadnym stopniu w tym nie przeszkadza ;P

Cytat: czerwiakowski
odpowiedzcie sobie na jedno pytanie: ile wart jest rynek gier linuxowych i macowych, a ile rynek windowsowo - xboxowy?
Jeśli ograniczymy się do rynku Win/Xbox [czyli używamy DirecX], to rynek będzie spory, to fakt. Jednak użycie OpenGL nie ogranicza tego rynku, a raczej go poszerza o Linuxy/Makówki, oraz wiele innych systemów, o których nie raczyłeś wspomnieć. Skoro dzięki OpenGL liczba klientów może być jeszcze większa, to wybieram OpenGL.
Tytuł: Odp: OpenGL vs DirectX
Wiadomość wysłana przez: skoti w Listopad 16, 2007, 11:00:29
Przeczytałem pierwszą i ostatnia stronę wątku więc nie wiem czy ktoś już o tym wspomniał, ale i tak dorzucę swoje 3 gorsze ;P

Możecie dyskutować co jest bardziej przenośne, co mniej, co trudniejsze, a co łatwiejsze, ale i tak jedynym wyznacznikiem jest twarda waluta. Obydwa interfejsy zostały napisane nie dla entuzjastów, ale po to, aby zarobić na nich kasę (to twórcy) i zarobić kasę na aplikacjach które na nich bazują. W związku z tym odpowiedzcie sobie na jedno pytanie: ile wart jest rynek gier linuxowych i macowych, a ile rynek windowsowo - xboxowy? Uczcie się tego co przynosi większą kasę - po co zakuwać dwa API kiedy jeden przynosi zyski, a nauka drugiego to strata czasu, czyli waszych nie zarobionych pieniędzy.
Zapominasz o małej kwestii - piszesz "ile jest wart rynek windowsowo - xboxowy", a zapominasz dodać, że opengl to rynek macowo-linuxowo-windowsowo-ps3 oraz aplikacje mobilne na palmtopy i nowsze komórki do tego jeszcze można by dodać wiele systemów i urządzeń, ale one już dużego wpływu na rynek nie mają, więc nie jest to takie jasne który jest większy... i tak trzeba się nauczyć obu gdy chce się napisać na ps3 i xbox

Cytat: czerwiakowski
Obydwa interfejsy zostały napisane nie dla entuzjastów, ale po to, aby zarobić na nich kasę
A to ciekawe, bo o ile mi wiadomo, OpenGL jest wolnym standardem przemysłowym, nie należącym do żadnej pojedynczej firmy. Każdy może go używać i implementować jak chce, a jedynie za wykorzystanie logo OpenGL są pobierane opłaty. DirectX także można wykorzystywać bez opłat, lecz jest własnością jednej firmy i tylko ona decyduje, co się w nim znajdzie.
Stworzony był przez SGI (i na początku nie był on open tylko IRIS GL bo na system operacyjny Irix tworzony też przez SGI) która zarabiała dzięki niemu na stacjach graficznych które wykorzystywane były przy produkcji filmów (np. terminator 2), ale teraz  to faktycznie jest tylko otwarty standard i każdy może sobie go zaimplementować - przykład to mesa
Tytuł: Odp: OpenGL vs DirectX
Wiadomość wysłana przez: czerwiakowski w Listopad 19, 2007, 04:37:04

Cytat: czerwiakowski
Obydwa interfejsy zostały napisane nie dla entuzjastów, ale po to, aby zarobić na nich kasę
A to ciekawe, bo o ile mi wiadomo, OpenGL jest wolnym standardem przemysłowym, nie należącym do żadnej pojedynczej firmy. Każdy może go używać i implementować jak chce, a jedynie za wykorzystanie logo OpenGL są pobierane opłaty. DirectX także można wykorzystywać bez opłat, lecz jest własnością jednej firmy i tylko ona decyduje, co się w nim znajdzie.

Wolny nie znaczy non profit, po za tym zarabiać można inaczej niż przez bezpośrednią sprzedaż licencji - w biznesie jest coś takiego jak wartość dodana, która nie jednokrotnie jest wymiernie większa niż kwota płacona jednorazowo. Po za tym nie wierzę, żeby firmy, które biorą/brały udział w tworzeniu i rozwijaniu OGL robiły to z czysto altruistycznych pobudek - za tym standardem stoi potężna kasa i jeszcze lepszy plan inwestycji, inaczej zapewne by nie powstał.

Cytat: czerwiakowski
i zarobić kasę na aplikacjach które na nich bazują.
Jeśli mówisz o zarabianiu na grach i programach przez ich twórców, to raczej chyba nie ma znaczenia, jakiej biblioteki użyli, przecież tak czy tak mogą sprzedawać swój program. Użycie OpenGL w żadnym stopniu w tym nie przeszkadza ;P

Cytat: czerwiakowski
odpowiedzcie sobie na jedno pytanie: ile wart jest rynek gier linuxowych i macowych, a ile rynek windowsowo - xboxowy?
Jeśli ograniczymy się do rynku Win/Xbox [czyli używamy DirecX], to rynek będzie spory, to fakt. Jednak użycie OpenGL nie ogranicza tego rynku, a raczej go poszerza o Linuxy/Makówki, oraz wiele innych systemów, o których nie raczyłeś wspomnieć. Skoro dzięki OpenGL liczba klientów może być jeszcze większa, to wybieram OpenGL.

Jeszcze raz ponawiam pytanie: jak duży jest rynek linuxowo/makowy, a ile razy większy jest rynek win/xbox?. Nie znam najnowszych statystyk, ale mniej więcej wygląda to tak, że ok 90% pecetów pracuje pod kontrolą windows. Po prostu nie opłaca się pisać gier na linuxa i maka - rynek jest za mały. Po za tym napisanie gry w OGL jest droższe. Nie zapominaj, że directx to nie tylko grafika, ale biblioteka do obsługi wszystkich multimediow, a co za tym idzie nie trzeba korzystać z innych bibliotek, czyli spadam poziom skomplikowania programu i ilość zewnętrznych licencji, które trzeba zakupić.
Tytuł: Odp: OpenGL vs DirectX
Wiadomość wysłana przez: gamecreator w Listopad 19, 2007, 12:22:42
Cytat: czerwiakowski
Cytat: gamecreator
A to ciekawe, bo o ile mi wiadomo, OpenGL jest wolnym standardem przemysłowym
Wolny nie znaczy non profit
W tym przypadku jednak programista piszący grę wykorzystując OpenGL nie musi nic nikomu płacić, a wydawało mi się, że o tym rozmawiamy.
http://opengl.org/about/licensing/

Cytat: czerwiakowski
Po za tym nie wierzę, żeby firmy, które biorą/brały udział w tworzeniu i rozwijaniu OGL robiły to z czysto altruistycznych pobudek - za tym standardem stoi potężna kasa i jeszcze lepszy plan inwestycji, inaczej zapewne by nie powstał.
Taa... a nie stoją za tym też jacyś masoni, albo iluminaci? :P

Firmy, które wchodzą w skład ARB i nadzorują rozwijanie standardu OpenGL mają w tym taki interes, że mogą uzgadniać między sobą wspólny standard tworzenia grafiki 3D i mieć nadzieję na wprowadzenie ich nowatorskich rozwiązań w owym standardzie. Np. wiele roszerzeń OpenGL udostępnianych przez implementację nVidii zostało później wprowadzonych jako rozszerzenia oficjalnego standardu. Dzięki standaryzacji mogą lepiej ze sobą współpracować i czerpać z tego zyski. Zyskują też wtedy, gdy ich rozwiązania są wprowadzane do standardu OpenGL, a programiści i użytkownicy kupują ich sprzęt zgodny z tym standardem. Ja bym się tam żadnych tajemnych spisków nie doszukiwał.

Cytat: czerwiakowski
Jeszcze raz ponawiam pytanie: jak duży jest rynek linuxowo/makowy, a ile razy większy jest rynek win/xbox?
To ja jeszcze raz odpowiadam: rynki te wzajemnie się nie wykluczają. Jeśli mam wybór [niech stracę ;P]: 90% [Windowsy, Xboxy] i 99% [Windowsy, Makówki, Linuxy, FreeBSD, komórki, palmtopy, tostery itp. ;J], to wybieram 99% bo oznacza to dla mnie większy zysk. Pisałem o tym ja, a później skoti, ale jak widać prostych rzeczy nie potrafisz zrozumieć. Podaj mi powód: Dlaczego miałbym się ograniczać do Jedynej Słusznej Platformy(tm), nawet jeśli używa jej największa grupa docelowa? Czemu mam później wysłuchiwać żali od użytkowników innych systemów operacyjnych, że ich olewam, skoro nic nie stoi na przeszkodzie, by TEN SAM KOD przeportować też na ich platformy?

Cytat: czerwiakowski
Nie znam najnowszych statystyk, ale mniej więcej wygląda to tak, że ok 90% pecetów pracuje pod kontrolą windows.
Z czego 90% to piraty ;)
Ja też nie znam statystyk, ale osobiście znam dużo użytkowników Linuxa i jednego użytkownika Makówki, więc podejście "90% świata używa Windowsa" wydaje mi się z lekka Gatesocentryczne ;P
Ale dyskusja dotyczy chyba czegoś innego [OpenGL vs. DirectX, a nie Windows vs. reszta świata ;P].

Cytat: czerwiakowski
Po prostu nie opłaca się pisać gier na linuxa i maka - rynek jest za mały.
Właśnie przez ludzi z takim podejściem ta sytuacja się utrzymuje. Na szczęście są też ludzie, którzy twierdzą inaczej, i jakoś chyba im się to opłaca, skoro to robią ;P  Jeśli wszystkie użyte biblioteki są wieloplatformowe [a OpenGL jest], to koszt przeportowania na inne platformy jest praktycznie zerowy, bo kod od razu jest do tego przygotowany i nie wymaga przepisywania na każdą platformę z osobna.

Cytat: czerwiakowski
Po za tym napisanie gry w OGL jest droższe.
ROTFL możesz rozwinąć tą myśl? :D

Cytat: czerwiakowski
Nie zapominaj, że directx to nie tylko grafika, ale biblioteka do obsługi wszystkich multimediow
JA mam nie zapominać? :| Czytasz co tu ludzie piszą, czy trollujesz? Przecież dwa posty wyżej to ja zwróciłem Ci uwagę, że porównujesz bibliotekę graficzną [OpenGL] z biblioteką graficzno-muzyczno-cośtam, a to jak porównanie kosiarki ze snopowiązałką ;P  Jeśli chcesz porównywać rzetelne, porównuj OpenGL z modułem DirectX Graphics. Inaczej to tak jakbyś mówił, że młotek jest lepszy od ogórka, bo można nim wbijać gwoździe ;P

Cytat: czerwiakowski
a co za tym idzie nie trzeba korzystać z innych bibliotek
Patrząc z odwrotnej strony: jeśli chcę napisać aplikację czysto graficzną, dlaczego mam wlec z nią inne biblioteki poza graficzną? Modularyzacja umożliwia dobieranie tylko tego, co się chce. Monolityczne biblioteki, takie jak DirectX, nie pozwalają na to. Nie można np. zainstalować samego DirectX Graphics. Całe to twoje "ułatwienie" polega na tym, że DirectX jest od razu zainstalowany w świeżo wgranym Windowsie XP [choć nie najnowsza wersja], dlatego masz wrażenie, że to jest prostsze.

Cytat: czerwiakowski
czyli spadam poziom skomplikowania programu
Rozwiń.

Cytat: czerwiakowski
i ilość zewnętrznych licencji, które trzeba zakupić
Toż kwa przecież Ci mówie, że na OpenGL nie trzeba nic zakupywać. Podobnie jest z SDL - wieloplatformową biblioteką multimedialną, która może uzupełniać OpenGL. To już zależy od używanych bibliotek i nie jest bezpośrednio związane ani z OpenGL, ani z DirectX. Zresztą nawet programiści DirectX używają czasem jakichś innych dodatkowych bibliotek pomocniczych, bo np. lepiej rozwiązują jakiś problem.
Tytuł: Odp: OpenGL vs DirectX
Wiadomość wysłana przez: skoti w Listopad 19, 2007, 14:13:28
Wolny nie znaczy non profit, po za tym zarabiać można inaczej niż przez bezpośrednią sprzedaż licencji - w biznesie jest coś takiego jak wartość dodana, która nie jednokrotnie jest wymiernie większa niż kwota płacona jednorazowo. Po za tym nie wierzę, żeby firmy, które biorą/brały udział w tworzeniu i rozwijaniu OGL robiły to z czysto altruistycznych pobudek - za tym standardem stoi potężna kasa i jeszcze lepszy plan inwestycji, inaczej zapewne by nie powstał.
Jakbyś zobaczył kto jakie firmy pracują nad opengl to wiedziałbyś że im zależy nad tym żeby się rozwijał ;p. Pracują nad nim producenci kart graficznych, systemów operacyjnych, smartfonów i gier, więc pracują oni nad polepszeniem własnych produktów i na tym etapie to inwestują, a dopiero ze swoich produktów dostają kasę.
Jeszcze raz ponawiam pytanie: jak duży jest rynek linuxowo/makowy, a ile razy większy jest rynek win/xbox?. Nie znam najnowszych statystyk, ale mniej więcej wygląda to tak, że ok 90% pecetów pracuje pod kontrolą windows. Po prostu nie opłaca się pisać gier na linuxa i maka - rynek jest za mały. Po za tym napisanie gry w OGL jest droższe. Nie zapominaj, że directx to nie tylko grafika, ale biblioteka do obsługi wszystkich multimediow, a co za tym idzie nie trzeba korzystać z innych bibliotek, czyli spadam poziom skomplikowania programu i ilość zewnętrznych licencji, które trzeba zakupić.
A przeczytałeś mój post? Powiedz mi który rynek jest większy win/xbox czy win/lin/macos/ps3/urzadzenia mobilne i inne systemy? Nie zapominaj że do opengl jest openal, openml, openil (devil), to "bliźniacze" projekty, których api jest wzorowane na opengl i tworzy się w nich imo łatwiej niż w dx i gdzie podwyższa Ci się poziom skomplikowania? Po tych licencjach widać, że nie bardzo kumasz o co chodzi ;p, w takim razie ile płacisz za licencję na dx? ;p
Te biblioteki, które wymieniłem są darmowe do wykorzystania w jaki sposób chcesz, czyli w większy niż DX bo tego zmieniać nie możesz ;p Swoją drogą jest jeszcze wiele bibliotek które możesz używać komercyjnie nie płacąc ani złotówki... jest ich nieporównywalnie więcej niż płatnych ;p


Cytat: gamecreator
Firmy, które wchodzą w skład ARB...
Nie ARB tylko od tego roku Khronos Group ;p, ale dalej się zgadza :)
Tytuł: Odp: OpenGL vs DirectX
Wiadomość wysłana przez: Krzysiek K. w Listopad 19, 2007, 18:18:38
Cytuj
tworzy się w nich imo łatwiej niż w dx
Radzę zaakcentować to "IMO". ;) Zaczynałem na OpenGL i doszedłem tam do niezłego poziomu, potem poznałem Direct3D, nieco czasu pisałem trochę w tym, trochę w tamtym, ale powoli zaczynam zauważać, że w OpenGL już nie chce mi się nic robić właśnie ze względu na wygodę API. :)
Tytuł: Odp: OpenGL vs DirectX
Wiadomość wysłana przez: czerwiakowski w Listopad 19, 2007, 19:06:05
Cytat: czerwiakowski
Cytat: gamecreator
A to ciekawe, bo o ile mi wiadomo, OpenGL jest wolnym standardem przemysłowym
Wolny nie znaczy non profit
W tym przypadku jednak programista piszący grę wykorzystując OpenGL nie musi nic nikomu płacić, a wydawało mi się, że o tym rozmawiamy.
http://opengl.org/about/licensing/
Co w dalszym ciągu nie jest równoznaczne z tym, że nikt na OGL nie zarabia - przeczytaj do końca akapit, z którego wyrwałeś ten fragment.

Cytat: czerwiakowski
Po za tym nie wierzę, żeby firmy, które biorą/brały udział w tworzeniu i rozwijaniu OGL robiły to z czysto altruistycznych pobudek - za tym standardem stoi potężna kasa i jeszcze lepszy plan inwestycji, inaczej zapewne by nie powstał.
Taa... a nie stoją za tym też jacyś masoni, albo iluminaci? :P

Firmy, które wchodzą w skład ARB i nadzorują rozwijanie standardu OpenGL mają w tym taki interes, że mogą uzgadniać między sobą wspólny standard tworzenia grafiki 3D i mieć nadzieję na wprowadzenie ich nowatorskich rozwiązań w owym standardzie. Np. wiele roszerzeń OpenGL udostępnianych przez implementację nVidii zostało później wprowadzonych jako rozszerzenia oficjalnego standardu. Dzięki standaryzacji mogą lepiej ze sobą współpracować i czerpać z tego zyski. Zyskują też wtedy, gdy ich rozwiązania są wprowadzane do standardu OpenGL, a programiści i użytkownicy kupują ich sprzęt zgodny z tym standardem. Ja bym się tam żadnych tajemnych spisków nie doszukiwał.

Oczywiście wszystkie firmy robią to z myślą o Tobie i innych nie licząc się z kosztami ;P Tutaj nie ma żadnego spisku, tu funkcjonuje podstawowa zasada biznesu - pieniądze inwestuje się po to, żeby wyjąć ich więcej.

Cytat: czerwiakowski
Jeszcze raz ponawiam pytanie: jak duży jest rynek linuxowo/makowy, a ile razy większy jest rynek win/xbox?
To ja jeszcze raz odpowiadam: rynki te wzajemnie się nie wykluczają. Jeśli mam wybór [niech stracę ;P]: 90% [Windowsy, Xboxy] i 99% [Windowsy, Makówki, Linuxy, FreeBSD, komórki, palmtopy, tostery itp. ;J], to wybieram 99% bo oznacza to dla mnie większy zysk. Pisałem o tym ja, a później skoti, ale jak widać prostych rzeczy nie potrafisz zrozumieć. Podaj mi powód: Dlaczego miałbym się ograniczać do Jedynej Słusznej Platformy(tm), nawet jeśli używa jej największa grupa docelowa? Czemu mam później wysłuchiwać żali od użytkowników innych systemów operacyjnych, że ich olewam, skoro nic nie stoi na przeszkodzie, by TEN SAM KOD przeportować też na ich platformy?

Cytat: czerwiakowski
Nie znam najnowszych statystyk, ale mniej więcej wygląda to tak, że ok 90% pecetów pracuje pod kontrolą windows.
Z czego 90% to piraty ;)
Ja też nie znam statystyk, ale osobiście znam dużo użytkowników Linuxa i jednego użytkownika Makówki, więc podejście "90% świata używa Windowsa" wydaje mi się z lekka Gatesocentryczne ;P
Ale dyskusja dotyczy chyba czegoś innego [OpenGL vs. DirectX, a nie Windows vs. reszta świata ;P].

Masz racje, wczoraj grałem w C&C Tiberium Wars na mojej komórce - ot takie małe przeoczenie, a CD Projekt wypuścił wersję Wiedźmina na toster. Ucz się od największych. To że te gry nie funkcjonują na linuxie wynika z czystej kalkulacji biznesowej, a nie czyjegoś widzimisię. Uwierz mi, te firmy w kwestii zarabiania na grach mają takie doświadczenie, że są mądrzejsze od Ciebie, mnie i całego forum razem wziętego.

Cytat: czerwiakowski
Po prostu nie opłaca się pisać gier na linuxa i maka - rynek jest za mały.
Właśnie przez ludzi z takim podejściem ta sytuacja się utrzymuje. Na szczęście są też ludzie, którzy twierdzą inaczej, i jakoś chyba im się to opłaca, skoro to robią ;P  Jeśli wszystkie użyte biblioteki są wieloplatformowe [a OpenGL jest], to koszt przeportowania na inne platformy jest praktycznie zerowy, bo kod od razu jest do tego przygotowany i nie wymaga przepisywania na każdą platformę z osobna.

Patrz akapit wyżej.

Cytat: czerwiakowski
Po za tym napisanie gry w OGL jest droższe.
ROTFL możesz rozwinąć tą myśl? :D

A ilu programistów ostatnio zatrudniłeś i ile budżetów na projekt przygotowałeś, skoro ROTFL'em traktujesz to co mówię? Jakoś dziwnym trafem przy liczeniu budżetu w 2 ostatnich projektach wyszło nam w firmie, że w przypadku DX TCP jest niższy.

Cytat: czerwiakowski
Nie zapominaj, że directx to nie tylko grafika, ale biblioteka do obsługi wszystkich multimediow
JA mam nie zapominać? :| Czytasz co tu ludzie piszą, czy trollujesz? Przecież dwa posty wyżej to ja zwróciłem Ci uwagę, że porównujesz bibliotekę graficzną [OpenGL] z biblioteką graficzno-muzyczno-cośtam, a to jak porównanie kosiarki ze snopowiązałką ;P  Jeśli chcesz porównywać rzetelne, porównuj OpenGL z modułem DirectX Graphics. Inaczej to tak jakbyś mówił, że młotek jest lepszy od ogórka, bo można nim wbijać gwoździe ;P

Nie można porównać rzetelnie, czegoś co jest tylko do grafiki z czymś co jest jednolitym (nie odinstalujesz modułów z DX) kombajnem. I ponawiam prośbę - cytuj całość, bo w dalszej część zdania, które pociąłeś masz odpowiedź na pytanie dlaczego DX jest biznesowo lepszy od OGL'a - tam masz wszystko w jednym miejscu i z jednym interfejsem. To jest tak jakbyś porównywał dwa topowe modele opon do samochodu (od różnych producentów) zapominając, że jedne założysz do malucha, a drugie do mercedesa.

Cytat: czerwiakowski
a co za tym idzie nie trzeba korzystać z innych bibliotek
Patrząc z odwrotnej strony: jeśli chcę napisać aplikację czysto graficzną, dlaczego mam wlec z nią inne biblioteki poza graficzną? Modularyzacja umożliwia dobieranie tylko tego, co się chce. Monolityczne biblioteki, takie jak DirectX, nie pozwalają na to. Nie można np. zainstalować samego DirectX Graphics. Całe to twoje "ułatwienie" polega na tym, że DirectX jest od razu zainstalowany w świeżo wgranym Windowsie XP [choć nie najnowsza wersja], dlatego masz wrażenie, że to jest prostsze.

Po pierwsze nie mam wrażenia tylko widzę, że to jest prostsze - zarówno w implementacji jak i dystrybucji. Po za tym gra to nie tylko sama grafika o czym wielu zapomina...

Cytat: czerwiakowski
czyli spadam poziom skomplikowania programu
Rozwiń.

... to są jeszcze tysiące linii kodu, które spajają wszystko w całość. Im mniej różnych bibliotek z różnymi interfejsami tym tego kodu jest mniej - napisanie każdej linijki kosztuje ileś tam - no chyba, że robimy amatorski projekt, ale ja od początku pisze w kontekście czysto biznesowym.

Cytat: czerwiakowski
i ilość zewnętrznych licencji, które trzeba zakupić
Toż kwa przecież Ci mówie, że na OpenGL nie trzeba nic zakupywać. Podobnie jest z SDL - wieloplatformową biblioteką multimedialną, która może uzupełniać OpenGL. To już zależy od używanych bibliotek i nie jest bezpośrednio związane ani z OpenGL, ani z DirectX. Zresztą nawet programiści DirectX używają czasem jakichś innych dodatkowych bibliotek pomocniczych, bo np. lepiej rozwiązują jakiś problem.

A ja Ci kwa mówię, że gra to nie tylko grafika, ale też dźwięk, obsługa urządzeń I/O sieć, których OGL nie obsługuje. Albo trafisz na jakąś otwartą bibliotekę, której nie zaufa dyrektor wydawniczy wraz z szefem marketingu (i mają racje, bo nikt nie daje Ci gwarancji), albo kupujesz zamknięty często kod od firm trzecich.
Tytuł: Odp: OpenGL vs DirectX
Wiadomość wysłana przez: Asmodeusz w Listopad 19, 2007, 20:11:21
Ja dodam tylko jedną obserwację, która 'boli' OpenGL (jak każdy inny standard komisyjny) z samego sposobu działania komisji: dynamizm wprowadzania zmian i reakcji na nie. Chciałem tylko przypomnieć, że jednolita obsługa Shader Model 4 pojawiła się w DirectX wcześniej niż karty to wspierające ;) i jej postać nie zmieniła się do teraz - została od razu wprowadzona jako gotowy standard. Natomiast z tego, co wiem OpenGL ma osobne rozszerzenia dla NVIDIA i ATi obsługujące Shader Model 4 i brak wsparcia dla tychże w samym standardzie biblioteki. Efekt? Jeśli producent chce przygotować nowoczesną grę/silnik, praktycznie nie ma wyjścia bo albo użyje DirectX, albo poczeka pół roku (lub znacznie więcej) na OpenGL, albo użyje dwóch rozwiązań z przełączaniem zależnie od karty - co może powodować problemy z kompatybilnością i znacznie (dwa rozszerzenia do obsłużenia) podnosi koszt produkcji. Nie przeczę że OGL może być lepiej przemyślany, ale... czas to pieniądz, a zatrzymanie się (nawet na chwilę) w ciągle pędzącym do przodu świecie to tak naprawdę cofanie się względem reszty.
Tytuł: Odp: OpenGL vs DirectX
Wiadomość wysłana przez: skoti w Listopad 19, 2007, 22:23:00
Ja dodam tylko jedną obserwację, która 'boli' OpenGL (jak każdy inny standard komisyjny) z samego sposobu działania komisji: dynamizm wprowadzania zmian i reakcji na nie. Chciałem tylko przypomnieć, że jednolita obsługa Shader Model 4 pojawiła się w DirectX wcześniej niż karty to wspierające ;) i jej postać nie zmieniła się do teraz - została od razu wprowadzona jako gotowy standard. Natomiast z tego, co wiem OpenGL ma osobne rozszerzenia dla NVIDIA i ATi obsługujące Shader Model 4 i brak wsparcia dla tychże w samym standardzie biblioteki. Efekt? Jeśli producent chce przygotować nowoczesną grę/silnik, praktycznie nie ma wyjścia bo albo użyje DirectX, albo poczeka pół roku (lub znacznie więcej) na OpenGL, albo użyje dwóch rozwiązań z przełączaniem zależnie od karty - co może powodować problemy z kompatybilnością i znacznie (dwa rozszerzenia do obsłużenia) podnosi koszt produkcji. Nie przeczę że OGL może być lepiej przemyślany, ale... czas to pieniądz, a zatrzymanie się (nawet na chwilę) w ciągle pędzącym do przodu świecie to tak naprawdę cofanie się względem reszty.
W ogl są takie rozszerzenia jak GL_EXT_geometry_shader4 i GL_EXT_gpu_shader4, które działają i na ati i na nv i w przeciwieństwie do DX działa na XP i innych systemach (a są dostępne od bardzo dawna - z tego co pamiętam od ogl 2.1 (chodź może od 2.0 nie chce mi się sprawdzać ;p) czyli wszystkie karty z sm4 z nowymi sterami powinny działać - ). Poza tym jest jeszcze CG które działa na kartach obu firm i jest to ten sam język shaderów co w DX bo był wspólnie opracowywany.

Cytat: czerwiakowski
Masz racje, wczoraj grałem w C&C Tiberium Wars na mojej komórce - ot takie małe przeoczenie, a CD Projekt wypuścił wersję Wiedźmina na toster. Ucz się od największych. To że te gry nie funkcjonują na linuxie wynika z czystej kalkulacji biznesowej, a nie czyjegoś widzimisię. Uwierz mi, te firmy w kwestii zarabiania na grach mają takie doświadczenie, że są mądrzejsze od Ciebie, mnie i całego forum razem wziętego.
ID software, czy Epic Games uważasz za małe firmy od których nie ma co się uczyć bo robią wersję na wiele systemów i przynosi im to zysk ;p Też mają rzecz jasna za małe doświadczenie względem CD Project.

Cytat: czerwiakowski
Nie można porównać rzetelnie, czegoś co jest tylko do grafiki z czymś co jest jednolitym (nie odinstalujesz modułów z DX) kombajnem. I ponawiam prośbę - cytuj całość, bo w dalszej część zdania, które pociąłeś masz odpowiedź na pytanie dlaczego DX jest biznesowo lepszy od OGL'a - tam masz wszystko w jednym miejscu i z jednym interfejsem. To jest tak jakbyś porównywał dwa topowe modele opon do samochodu (od różnych producentów) zapominając, że jedne założysz do malucha, a drugie do mercedesa.
Jednolity interface masz również w openXX o których już pisałem i jest również i jeśli porównujesz ich możliwości do malucha to raczej nie wiesz o nich nic co tłumaczy Twoje obliczenia biznesowe.
a grafika o czym wielu zapomina...

Cytat: czerwiakowski
... to są jeszcze tysiące linii kodu, które spajają wszystko w całość. Im mniej różnych bibliotek z różnymi interfejsami tym tego kodu jest mniej - napisanie każdej linijki kosztuje ileś tam - no chyba, że robimy amatorski projekt, ale ja od początku pisze w kontekście czysto biznesowym.
Ale interface w bibliotekach nie musisz mieć różnego i jak porównam jak kiedyś pisałem obsługę dźwięku przestrzennego w DX, a to ile to zajmuje w porównaniu w OpenAL to za przeproszeniem wali się twoja teoria na temat interface i wielkości kodu.

Cytat: czerwiakowski
A ja Ci kwa mówię, że gra to nie tylko grafika, ale też dźwięk, obsługa urządzeń I/O sieć, których OGL nie obsługuje. Albo trafisz na jakąś otwartą bibliotekę, której nie zaufa dyrektor wydawniczy wraz z szefem marketingu (i mają racje, bo nikt nie daje Ci gwarancji), albo kupujesz zamknięty często kod od firm trzecich.
Tutaj jest porównywana tylko grafika, ale takim bibliotekom jak opengl, openal, openml czy sdl ufają największe firmy gamedev więc dlaczego szef ma nie ufać (a mają wszystko co ci potrzeba do produkcji gier)?
Tytuł: Odp: OpenGL vs DirectX
Wiadomość wysłana przez: maxest w Listopad 20, 2007, 23:15:38
Cytuj
opengl, openal, openml czy sdl ufają największe firmy gamedev więc dlaczego szef ma nie ufać
Ano, niektorzy i bawia sie w takie cos. Problem w tym ze 90% firm z branzy wybiera jednak DirectX'a :)
A skoro SDL czy OpenAL sa takie wspaniale (nie neguje tego, ale...) to dlaczego do ID Software'owego Doom'a 3 musialem zainstalowac najnowsza wersje DirectX? :)

Cytuj
Poza tym jest jeszcze CG które działa na kartach obu firm i jest to ten sam język shaderów co w DX bo był wspólnie opracowywany.
Jakis czas temu bawilem sie w pisanie dwu-API-owego silniczka. Shader'y wiec mialem w Cg. I nie wiedziec czemu ten sam shader na DirectX'ie dzialal dobrze na wszystkich kartach, a gdy uzywal OpenGL'owego renderer'a to nie chcial sie w ogole wykonywac na Radeon'ach.
Piszac kiedys inna gierke (na fixed pipeline w OGL) tez mialem podobny problem. Na prawie wszystkich GeForce'ach bylo ok, a na prawie zadnym ATI nie :(. I takie problemy z OGL zdarzaly sie nie tylko mnie ale wielu osobom. O podobnych w DX jeszcze nie slyszalem. Pewnie wynika to w duzej czesci z mojej niewiedzy na temat uzywania OGL na roznych kartach ale... z drugiej strony nie kazdy jest Carmack'iem zeby mial pisac kilkanascie roznych wersji tego samego kodu pod kilka roznych kart graficznych :)
Tytuł: Odp: OpenGL vs DirectX
Wiadomość wysłana przez: skoti w Listopad 21, 2007, 09:39:28
Ano, niektorzy i bawia sie w takie cos. Problem w tym ze 90% firm z branzy wybiera jednak DirectX'a :)
A skoro SDL czy OpenAL sa takie wspaniale (nie neguje tego, ale...) to dlaczego do ID Software'owego Doom'a 3 musialem zainstalowac najnowsza wersje DirectX? :)
Dlatego bo ID pisał 2 wersję silnika... ale i tak rendering byl na ogl. Teraz id robi silnik na wszystko to też są 2 wersję i już jest na windowsa dx, ale to tylko dlatego że i tak musieli napisać na xbox to juz wykorzystali ta wersję do wszystkich produktów MS- do macos, linux, i ps3 jest dalej opengl
Jakis czas temu bawilem sie w pisanie dwu-API-owego silniczka. Shader'y wiec mialem w Cg. I nie wiedziec czemu ten sam shader na DirectX'ie dzialal dobrze na wszystkich kartach, a gdy uzywal OpenGL'owego renderer'a to nie chcial sie w ogole wykonywac na Radeon'ach.
Piszac kiedys inna gierke (na fixed pipeline w OGL) tez mialem podobny problem. Na prawie wszystkich GeForce'ach bylo ok, a na prawie zadnym ATI nie :(. I takie problemy z OGL zdarzaly sie nie tylko mnie ale wielu osobom. O podobnych w DX jeszcze nie slyszalem. Pewnie wynika to w duzej czesci z mojej niewiedzy na temat uzywania OGL na roznych kartach ale... z drugiej strony nie kazdy jest Carmack'iem zeby mial pisac kilkanascie roznych wersji tego samego kodu pod kilka roznych kart graficznych :)
Na radeonach z sm2 nie powinno być problemów bo sam testowałem.
Tytuł: Odp: OpenGL vs DirectX
Wiadomość wysłana przez: Hadrian W. w Listopad 21, 2007, 10:32:03
Oprócz PS3, można powiedzieć, że Wii używa OGLa.
ATI kiedyś (nie wiem jak teraz) OpenGL zawsze traktowało po macoszemu, po prostu spieprzyli robotę ;)
Co do OpenAL, to on rzeczywiście jest wspaniały i jeśli już rzucamy firmami to Epic używa OpenAL. OpenAL zapewnia (przynajmniej na kartach Creative ;)) możliwość skorzystania z dobrodziejstw karty dźwiękowej na Viście. OpenGL z kolei, pozwala skorzystać z dobrodziejstw SM4 również pod XP a nie tylko pod Vistą.
To jest chyba poszerzanie rynku? Albo przynajmniej zapewnianie klientom wysokiej jakości produktu bez względu na posiadany system.
Tytuł: Odp: OpenGL vs DirectX
Wiadomość wysłana przez: Esidar w Listopad 21, 2007, 23:51:49
Oprócz PS3, można powiedzieć, że Wii używa OGLa.
Gwoli ścisłości, Wii używa swojego "standardu" Revolution Graphics Library. Prawie podobny do OGL (GXBegin, GXPosition3f32(), GXNormal3f32(), GXEnd() ) ale "prawie" robi różnicę :)

Z konsol tylko PS3 używa OGL.

Tytuł: Odp: OpenGL vs DirectX
Wiadomość wysłana przez: maxest w Listopad 22, 2007, 00:20:21
A wlasnie tak odnosnie tego OGL na PS3. Czy czasem nie ma jakiegos API graficznego od Sony? Czy jest moze wybor: albo uzywam OGL albo jakies graficzne API od Sony?
Tytuł: Odp: OpenGL vs DirectX
Wiadomość wysłana przez: Esidar w Listopad 22, 2007, 21:48:30
Nie. Na PS3 jest tylko OGL, tak jak na X360 jest tylko DX i na Wii tylko RGL. Pewnie NVidia dała im swój sterownik OGL ICD bo już mieli gotowy :)

Edit: I odchodząc troche od tematu
Co do OpenAL, to on rzeczywiście jest wspaniały i jeśli już rzucamy firmami to Epic używa OpenAL.
Większą przyszłość wróżę XAudio2. OpenAL ma to co każdy Open Standard czyli nie ma standardu bo wszystko zależy od implementacji. Natomiast XAudio2 gwarantuje 100% zgodność na wszystkich możliwych sprzętach bo chodzi w pełnym software. Ma też kilka AFT features (About Fucking Time) czyli np. możliwość własnego programowania efektów DSP i podłączanie efektów pod każdy dźwięk osobno. Przy obecnych procesorach multicore, w końcu ktoś się zabrał porządnie za dźwięk, zamiast ograniczania się wprowadzania zmian w nazwach funkcji.

Tytuł: Odp: OpenGL vs DirectX
Wiadomość wysłana przez: skoti w Listopad 23, 2007, 02:50:17
Co do OpenAL, to on rzeczywiście jest wspaniały i jeśli już rzucamy firmami to Epic używa OpenAL.
Większą przyszłość wróżę XAudio2. OpenAL ma to co każdy Open Standard czyli nie ma standardu bo wszystko zależy od implementacji. Natomiast XAudio2 gwarantuje 100% zgodność na wszystkich możliwych sprzętach bo chodzi w pełnym software. Ma też kilka AFT features (About Fucking Time) czyli np. możliwość własnego programowania efektów DSP i podłączanie efektów pod każdy dźwięk osobno. Przy obecnych procesorach multicore, w końcu ktoś się zabrał porządnie za dźwięk, zamiast ograniczania się wprowadzania zmian w nazwach funkcji.
To jest otwarty standard ale jedyną implementację jaką widziałem to implementacja Creative (twórcy OAL)... i działa na wszystkich platformach tak samo ;p
Tytuł: Odp: OpenGL vs DirectX
Wiadomość wysłana przez: RageX w Listopad 23, 2007, 17:23:38
Nie. Na PS3 jest tylko OGL, tak jak na X360 jest tylko DX i na Wii tylko RGL. Pewnie NVidia dała im swój sterownik OGL ICD bo już mieli gotowy :)

Edit: I odchodząc troche od tematu
Co do OpenAL, to on rzeczywiście jest wspaniały i jeśli już rzucamy firmami to Epic używa OpenAL.
Większą przyszłość wróżę XAudio2. OpenAL ma to co każdy Open Standard czyli nie ma standardu bo wszystko zależy od implementacji. Natomiast XAudio2 gwarantuje 100% zgodność na wszystkich możliwych sprzętach bo chodzi w pełnym software. Ma też kilka AFT features (About Fucking Time) czyli np. możliwość własnego programowania efektów DSP i podłączanie efektów pod każdy dźwięk osobno. Przy obecnych procesorach multicore, w końcu ktoś się zabrał porządnie za dźwięk, zamiast ograniczania się wprowadzania zmian w nazwach funkcji.
procesory dedykowane pod DSP zawsze będą szybsze, podobnie jak procesory dedykowane pod grafikę. Nie widzę większego sensu w narzucaniu standardów które będą działały w czystym softwarze. Takie coś to tylko pecetowy standard i nie rozwiązuje w ogóle problemu na prawdziwym rynku DSP. Jest potrzebne coś zupełnie innego...
"XAudio2 is a low-level, cross-platform audio API for Microsoft Windows and Xbox 360"
napewno an każdym... dla mnie to brzmi jak zamknięty standard sprzętowy.

Efekty DSP to można było w directsoundzie do tej pory pisać (w każdym api od dżwięku, w którym jest dostęp do bufora próbki), bądź pod popularne VST.
W zasadzie nie rozumiem sformułowania, albo źle sie wyraziłeś, albo nie rozumiesz o czym piszesz.

Niskopoziomowy multi-core to swoją drogą. Potrzebne to jest rzeczywiście...

Ogółem sam pewnie użyję tego xAudio2, ale to co napisałeś to jakaś mitomania.
Powtórzę:
Żadnego standardu otwartego sprzętowego nie ma, (linux nie ma szans).
DSP było do dawna możliwe, jedynie jakieś nowe API mające to uprościć, usprawnić, zestandaryzować stworzyli. No i ten multi core... hmm. Obsługa wielu rdzeni na niskim poziomie (np. bufora próbki) to po prostu "must - be" na dziś.

xAudio2 to tylko takie uporządkowanie tego wszystkiego nowego w pecetowym (XBox 360 to tez "pecet" przecie) świecie audio.
Żadnej rewolucji.
Tytuł: Odp: OpenGL vs DirectX
Wiadomość wysłana przez: Esidar w Listopad 24, 2007, 02:48:51
procesory dedykowane pod DSP zawsze będą szybsze, podobnie jak procesory dedykowane pod grafikę. Nie widzę większego sensu w narzucaniu standardów które będą działały w czystym softwarze.
Prędkość to jest żaden problem. Mixowanie 32 kanałów z prostym reverbem już miałem na 386. Dzisiejsze procesory są kilka-tysięcy razy szybsze. Myślę, że sobie poradzą z mixowaniem 100 kanałów :) I dlatego właśnie teraz jest dobry moment na powrót do softwaru.

Cytuj
dla mnie to brzmi jak zamknięty standard sprzętowy.
XAudio2 nie ma nic wspólnego ze sprzętem. Wszystko jest w czystym sofcie "XAudio 2 is fully a software audio rendering layer – that means that it works pretty transparent to whatever audio hardware you’re using". Tym się właśnie różni od OAL. OAL daje tylko "ujednoliconą" możliwość sprawdzenia co sprzęt potrafi. XAudio2 ma wszystko co najlepsze karty Creative. I nie musisz się martwić czy ktoś ma taką kartę czy nie.

Cytuj
Efekty DSP to można było w directsoundzie do tej pory pisać (w każdym api od dżwięku, w którym jest dostęp do bufora próbki), bądź pod popularne VST.
W zasadzie nie rozumiem sformułowania, albo źle sie wyraziłeś, albo nie rozumiesz o czym piszesz.
Heh. Wyraziłem się dokładnie tak jak zrozumiałeś. Tak, można było napisać w directsoundzie full wypas, full możliwości własny mixer z efektami DSP z możliwością użycia VST, obsługą pozycjonowania 3D i efektami DSP 3D i cokolwiek sobie tylko wymyślisz. Ale mam pytanie: w ilu grach widziałeś, żeby ktoś to zrobił ? Pewnie znajdziesz kilka sztuk pojedyńczych.
I właśnie po to powstało XAudio2. Teraz nie będzie trzeba tego pisać, ponieważ to wszystko właśnie robi XAudio2. A ponieważ XAudio2 ma zastąpić DirectSound, to gier używających tego będzie coraz więcej.

W XAudio2 nawet ktoś kto ma dźwięk wbudowany na płycie, będzie mieć takie efekty jak ten z kartą Creative. W OpenAL po 3 latach "standaryzacji" efekty 3D będzie miał tylko ten kto ma Windows i kartę Creative i to tylko wtedy gdy programista specjalnie rozpozna i użyje rozszeżenia EAX. Dlatego właśnie XAudio2 ma większe szanse zyskania uznania wśród developerów gier.

Tytuł: Odp: OpenGL vs DirectX
Wiadomość wysłana przez: bies w Listopad 24, 2007, 03:30:14
W XAudio2 nawet ktoś kto ma dźwięk wbudowany na płycie, będzie mieć takie efekty jak ten z kartą Creative. W OpenAL po 3 latach "standaryzacji" efekty 3D będzie miał tylko ten kto ma Windows i kartę Creative i to tylko wtedy gdy programista specjalnie rozpozna i użyje rozszeżenia EAX. Dlatego właśnie XAudio2 ma większe szanse zyskania uznania wśród developerów gier.
A nie da się mieć 3D na urządzeniu ,,Generic Software''? To przypadkiem nie będzie to samo co XAudio2?
Tytuł: Odp: OpenGL vs DirectX
Wiadomość wysłana przez: RageX w Listopad 24, 2007, 04:15:15
Nie zgodzę się z tym softwarem, to jest krok w tył.
Mixowanie, to jeśli chodzi o DSP tylko wierzchołek góry lodowej... procesory dedykowane pod obróbkę dzwięku, były tym czym są nowe karty grafiki, czy fizyki (z tymi jeszcze nie bałdzo). A teraz cofamy się?

Co do efektów... No właśnie Microsoft te środowisko od efektów zapowiada, zapowiada... a efektów poza pozycjonowaniem 3D nie widać. Na rynku jest milion użytkowych efektów w rzeczonym już VST (większość oczywiście nie związana z 3D) wystarczyło hosta, jakimś api obudować który by się zajął obsługa starego standardu. To nie, Microsoft będzie kreował własne, czysto windowsowe... dranie. :D
Jako przykład tandety microsoftu na polu dsp niech służy brak jakiegokolwiek kompresora/expandera dynamiki, czyli przede wszystkim limitera, wśród tych efektów...hehe, a jest to podstawowa sprawa. Mówię ci - gówno będzie z tych efektów, jak microsoft nie napisze, to nie będzie... zamiast połączyć dwa światy, dzielą je jeszcze bardziej.
OpenAL nie lepszy w tym wszystkim... nic, tylko narzekać...
Tytuł: Odp: OpenGL vs DirectX
Wiadomość wysłana przez: RL89 w Grudzień 09, 2007, 12:00:24
Ja zacznę wpierw przygodę z OpenGL, ponieważ jest najlepszy na początek. Później może DirectX. Nie wyobrażam sobie, aby ktoś został tylko przy jednym z nich. OpenGL jest świetny do gier 2D (mniej problemów niż z DirectX). Nie można mówić który jest lepszy, ponieważ to zależy od umiejętności programisty.
Tytuł: Odp: OpenGL vs DirectX
Wiadomość wysłana przez: taki_tam w Grudzień 09, 2007, 13:47:07
Cytuj
OpenGL jest świetny do gier 2D
Coo?????

Cytuj
...mniej problemów niż z DirectX...
Coooooooo????


Pozdrawiam! ;) kompustelnik taki_tam
Tytuł: Odp: OpenGL vs DirectX
Wiadomość wysłana przez: Esidar w Grudzień 10, 2007, 00:17:06
Ja zacznę wpierw przygodę z OpenGL, ponieważ jest najlepszy na początek.

Skąd wiesz że jest najlepszy skoro jeszcze nie zacząłeś ? :)
Tytuł: Odp: OpenGL vs DirectX
Wiadomość wysłana przez: S.Producer w Grudzień 10, 2007, 00:24:56
OpenGL i DirectX są tak samo świetne do gier 2D... Ale w 3D też sobie nie ustępują.
Tytuł: Odp: OpenGL vs DirectX
Wiadomość wysłana przez: maxest w Grudzień 10, 2007, 03:35:18
Chyba raczej powinnismy mowic... NVidia i ATI sa tak samo swietne do "tworzenia", zarowno gier (a raczej grafiki) 2D jak i 3D :). Przeciez OGL i D3D to tylko funkcje przekazujace polecenia sterownikom... :)
Tytuł: Odp: OpenGL vs DirectX
Wiadomość wysłana przez: RageX w Grudzień 10, 2007, 04:58:40
no i API dla developerów. Więc nie powinniśmy tak mówić. :)
Tytuł: Odp: OpenGL vs DirectX
Wiadomość wysłana przez: dynax w Styczeń 05, 2008, 10:25:51
Ja teraz zaczynam przygodę z OpenGL. Myślę, że on jest lepszy na początek od DirectX, dlatego, że jest strukturalny a DirectX obiektowy  ;)
Tytuł: Odp: OpenGL vs DirectX
Wiadomość wysłana przez: deX(ter) w Styczeń 05, 2008, 15:51:59
Ja teraz zaczynam przygodę z OpenGL. Myślę, że on jest lepszy na początek od DirectX, dlatego, że jest strukturalny a DirectX obiektowy  ;)

Hehe.. Chyba pierwszy raz spotykam kogoś, kto uważa obiektowość za wadę ;P.

A co do tematu - OpenGL jest przenośny, DX nie. A o ich funkcjach nie ma co dyskutować. Całe szczęście są jeszcze ludzie, dla których multioperacyjność się liczy...
Tytuł: Odp: OpenGL vs DirectX
Wiadomość wysłana przez: Kurak w Styczeń 05, 2008, 15:57:42
DX tez jest przenośny :P
Tytuł: Odp: OpenGL vs DirectX
Wiadomość wysłana przez: infernus w Styczeń 05, 2008, 16:12:05
DX tez jest przenośny :P

Z jednego produktu Microsoftu na drugi... Tez mi przenosnosc.
Tytuł: Odp: OpenGL vs DirectX
Wiadomość wysłana przez: Kurak w Styczeń 05, 2008, 16:13:54
Ale jednak przenośność, niezależnie od tego co kto o niej uważa. OpenGL także nie jest przenośny na wszystkie platformy.
Tytuł: Odp: OpenGL vs DirectX
Wiadomość wysłana przez: k_b w Styczeń 05, 2008, 16:15:11
Powtarzacie się :P. Była o tym samym mowa na początku tego tematu.
Tytuł: Odp: OpenGL vs DirectX
Wiadomość wysłana przez: Kurak w Styczeń 05, 2008, 16:22:21
Ten temat dawno się już wyczerpał i wszystko już było, nie odkryłeś niczego nowego, k_b :P
Tytuł: Odp: OpenGL vs DirectX
Wiadomość wysłana przez: skoti w Styczeń 05, 2008, 16:48:53
Ale jednak przenośność, niezależnie od tego co kto o niej uważa. OpenGL także nie jest przenośny na wszystkie platformy.
Tak Opengl też nie jest przenośny na wszystkie platformy... jednak nieporównywalnie bardziej... ba najnowsza wersja dx nie jest przenośna nawet między windows - jedynie na xbox 360 więc słownie 2 platformy w porównaniu w chyba niezliczoną ilością platform dla opengl (poprzez wszystkie windowsy, linux, BSD, BeOS, MacOS, inne unixy, urządzenia mobilne czy PlayStation3) - działanie na 2 platformach i to tylko na jednej wersji z każdej dla mnie nie jest przenośne ;p
Tytuł: Odp: OpenGL vs DirectX
Wiadomość wysłana przez: gamecreator w Styczeń 05, 2008, 17:58:52
Cytat: deX(ter)
Hehe.. Chyba pierwszy raz spotykam kogoś, kto uważa obiektowość za wadę ;P
Miałem o tym pisać, ale sobie przypomniałem, że już pisałem ;-J Ale co tam, rozwinę trochę...

Nieobiektowość OpenGL dla jednych jest wadą, dla innych zaletą, zależnie od tego, jaki styl programowania ktoś lubi ;-J

Sporo osób się znajdzie takich, które uważają, że OpenGL jest łatwiejszy do nauczenia się, bo nie jest obiektowy. Zazwyczaj będą to osoby, które jeszcze nie umieją programować obiektowo, więc tak naprawdę to tutaj leży ich problem, a nie w obiektowości innych API ;-)

Również "old-schoolowcy" wychowani na papce C, Pascala, czy innego języka głównie strukturalnego, mają odrazę do programowania obiektowego, bo uważają, że to jest wolniejsze [mit], wymaga więcej pisania [mit], więcej wiedzy itp., mimo że nierzadko próbują używać mechanizmów obiektowych nieźle się przy tym męcząc ;-J [obiektowo można programować nawet w assemblerze, tylko trzeba mieć wiele samodyscypliny i żelazne nerwy ;-P].
Jednak niezależnie od stylu programowania używanego przez programistę jedno jest pewne: API nieobiektowe można łatwo opakować w obiekty, ale gorzej zrobić to w drugą stronę.

Cytat: Kurak
Ale jednak przenośność, niezależnie od tego co kto o niej uważa.
Tak stawiając sprawę, to prawie każdy program napisany na platformę Windows 98 jest przenośny... na Windows 2000, Windows XP... :-P  Tylko że to wciąż platforma tej samej firmy, podobnie jak Xbox. My tutaj mówimy o przenośności na różne platformy, a więc także inne, niż Microsoftu :P

Cytat: Kurak
OpenGL także nie jest przenośny na wszystkie platformy.
Ale na pewno jest przenośny na wiele innych platform, niż systemy Micro$oftu. Z tego co wiem nawet na niektóre telefony komórkowe ;-J Nam się rozchodzi o to, że nawet Twoja definicja przenośności nie ukryje faktu, że DirectX'a nie przeniesiesz na wiele platform, na których OpenGL normalnie się przenosi.

Cytat: Kurak
Ten temat dawno się już wyczerpał i wszystko już było, nie odkryłeś niczego nowego
To może najwyższy czas go zamknąć? ;) Jak ktoś chce sobie porównywać, to już sporo zostało porównane we wcześniejszych postach. No chyba że ktoś potrafi jeszcze coś do tematu wnieść nowego? :P  Albo chyba że ten wątek jest taką "strefą zrzutu", gdzie każdy może się wyżalić i wylać swoją frustrację na bibliotekę, z którą mu "nie poszło" ;-J
Tytuł: Odp: OpenGL vs DirectX
Wiadomość wysłana przez: Netrick w Styczeń 05, 2008, 18:01:24
Kurak, ktoś już to wypominał komuś innemu... Nie odkryłeś niczego nowego, Kurak :P

BTW

OpenGL and linux rulz!
Tytuł: Odp: OpenGL vs DirectX
Wiadomość wysłana przez: Krzysiek K. w Styczeń 05, 2008, 18:09:47
Cytuj
Nieobiektowość OpenGL dla jednych jest wadą, dla innych zaletą, zależnie od tego, jaki styl programowania ktoś lubi ;-J
Jak widać, nieobiektowość OpenGL dla większości jest wadą, włączając w to ludzi odpowiedzialnych za rozwój OpenGL, bo OpenGL 3 już ma wykorzystywać podejście obiektowe (a przy tym ma być całkowicie niekompatybilny wstecz). :)
Tytuł: Odp: OpenGL vs DirectX
Wiadomość wysłana przez: Charibo w Styczeń 05, 2008, 20:58:31
Kozystajac z okazji, ze ktos odswiezyl temat, wrzuce swoje wypociny na ten temat: LINK (http://charibo.wordpress.com/2007/12/27/dlaczego-directx-jest-fajny/) ;)

EDIT
Cytuj
OpenGL and linux rulz!
Mowisz o serwerach/pralkach/kuchenkach mikrofalowych? W takim przypadku masz racje :D

edit2:
Probowalem uzywac, ale po mmcu zrezygnowalem - Windows jest do uzywania, a Linux do zabawy. Moze to kwestia przyzwyczajenia, od malego Win uzywalem
Tytuł: Odp: OpenGL vs DirectX
Wiadomość wysłana przez: gamecreator w Styczeń 05, 2008, 21:14:26
Tak mówią ludzie, którzy go nie używają. Ja używam od ponad dwóch lat wyłączine i od paru dobrych lat w ogóle i nie zamieniłbym go na nic innego.
Tytuł: Odp: OpenGL vs DirectX
Wiadomość wysłana przez: k_b w Styczeń 05, 2008, 21:21:40
Tak mówią ludzie, którzy go nie używają. Ja używam od ponad dwóch lat wyłączine i od paru dobrych lat w ogóle i nie zamieniłbym go na nic innego.

Heh, i znowu zaczynacie :P. Weźcie stwórzcie sobie temat Windows vs Linux i tam się kłóćcie (a nie, w co drugim wątku pojawia się offtop na temat windy i lindy).
Tytuł: Odp: OpenGL vs DirectX
Wiadomość wysłana przez: Kurak w Styczeń 05, 2008, 21:33:12
k_b, taki temat już jest (były tam nawet jakieś fajne czołgi, ale wyleciały)
Tytuł: Odp: OpenGL vs DirectX
Wiadomość wysłana przez: maxest w Styczeń 05, 2008, 21:46:47
Cytuj
OpenGL 3 już ma wykorzystywać podejście obiektowe (a przy tym ma być całkowicie niekompatybilny wstecz).
I chwala im za to! :)
I nie rozumiem za bardzo stwierdzenia ze DirectX jest obiektowy... interfejsy to jednak chyba nie to samo co klasy, tak wiec na dobra sprawe jedyna roznica miedzy D3D a OGL w tym zakresie jest fakt, ze zrodla z D3D moga wiecej bajtow zajmowac (przez niemalze colinijkowe kombinacje ->) ;)
Pewien nie jestem ale zdaje sie ze procki konsolowe, pomimo ze "parametrami" moga byc gorsze od PC'owych, to jednak sa wydajniejsze bo nie jest zachowywana zadna kombatybilnosc wstecz - nowa konsola = nowy procek, dzieki czemu mozna uzyskac wieksza wydajnosc. Tyle jakis czas temu wyczytalem. Szczegolow nie znam - niech mnie ktos poprawi jesli sie myle
Tytuł: Odp: OpenGL vs DirectX
Wiadomość wysłana przez: gamecreator w Styczeń 05, 2008, 22:06:25
Cytat: k_b
Heh, i znowu zaczynacie :P. Weźcie stwórzcie sobie temat Windows vs Linux i tam się kłóćcie (a nie, w co drugim wątku pojawia się offtop na temat windy i lindy).

Znasz powiedzenie "Kto sieje wiatr, ten zbiera burzę"? Zauważ, że to Charibo zasiał wiatr, robiąc z Linuxa system do tosterów, mimo że jego doświadczenie z tym systemem [co sam przyznał] wynosi 1 miesiąc :P  [jeśli nie daj Bóg jego doświadczenie z OpenGL jest podobne, to zapowiada się zaiste ciekawa dyskusja -_-]. Ja tylko starałem się wykazać, że jego opinia na temat tego systemu jest mitem, podając siebie jako żywy dowód ;-J Z moich osobistych obserwacji jak ludzie podchodzą do systemów operacyjnych wynika, że większość ich kłopotów przy pracy z nowym systemem bierze się z przyzwyczajeń wyuczonych na starym systemie. Też przez to przechodziłem, ale nie poddawałem się po miesiącu, bo moja irytacja systemem z Redmond sięgała już zenitu. Teraz wiem, że było warto wspinać się na learning curve ;-J
Tytuł: Odp: OpenGL vs DirectX
Wiadomość wysłana przez: Kurak w Styczeń 05, 2008, 22:14:52
gamecreator: ja używałem Linuksa jakieś 2-3 lata i mam podobne zdanie co Charibo :P


//@down (gamecreator)
dobra, przyznaje się, nie czytałem tego co napisał Charibo :P Mnie tam wisi kto czego używa
Tytuł: Odp: OpenGL vs DirectX
Wiadomość wysłana przez: Charibo w Styczeń 05, 2008, 22:17:16
Czyli jak linuksiarz powie "linux rox" to ja nie moge wyglosci kontropinii bo "sieje wiatr"? ;)
Ale fakt faktem - brzydki offtop prowadzimy, wiec raczej EOT z mojej strony.
Tytuł: Odp: OpenGL vs DirectX
Wiadomość wysłana przez: gamecreator w Styczeń 05, 2008, 23:35:11
Cytat: Kurak
ja używałem Linuksa jakieś 2-3 lata i mam podobne zdanie co Charibo
I masz do tego prawo. Każdy wybiera sobie system wedle swoich potrzeb i możliwości. Ja wybrałem Linux [Gentoo] i jeśli ktoś mi mówi, że używam "systemu dla tosterów", to zaprzecza mojemu doświadczeniu, a to najlepszy sposób na drakę ;P Ty wybrałeś coś innego [załóżmy, że Windows, nie wiem jaką wersję] i pewnie też byś się wkurzył, gdyby ktoś Ci wpierał, że to np. system dla lamerów, albo dla samobójców, bo Twoje doświadczenie z tym sytemem maluje się inaczej, a ktoś mu zaprzecza.

Cytat: Charibo
Czyli jak linuksiarz powie "linux rox" to ja nie moge wyglosci kontropinii bo "sieje wiatr"? ;)
Zacznijmy od tego, że wątek jest o OpenGL vs DirectX, więc jakiekolwiek rozmowy na temat Windows vs Linux są w nim nie na miejscu. Natomiast co do reszty: tak, siejesz wiatr, bo wygłaszasz negatywne opinie. Opinia "linux rox" [czy "whatever rox" ;J] jest opinią sformułowaną pozytywnie, czyli:
a) nikogo nie obraża
b) nie wyklucza, że są też inne systemy, które też "rox" ;)
Ty natomiast nie wygłaszasz "kontropinii", tylko kpisz i wygłaszasz opinie negatywne, które obrażają użytkowników pewnego systemu. Kontropinia mogłaby wyglądać np. tak: "Windows i DirectX też rulz!" - zauważ, że również spełnia punkty a) i b). Nie da się ukryć, że jestem negatywnie nastawiony do produktów firmy z Redmond, jednak nie czuję potrzeby wciskania swojego zdania każdej napotkanej osobie i niepytany siedzę cicho. Ale gdy ktoś próbuje wciskać swoje banały, to już cicho siedzieć nie potrafię.

Cytat: Charibo
Ale fakt faktem - brzydki offtop prowadzimy, wiec raczej EOT z mojej strony.
I tu wreszcie mogę przyznać Ci rację.
Tytuł: Odp: OpenGL vs DirectX
Wiadomość wysłana przez: deX(ter) w Styczeń 06, 2008, 00:59:19
I co? Na tym koniec? :P.

O nieeee.. ;d.

@Charibo, Kurak: Hehe.. Ja odkąd spróbowałem linuksa, mam zupełnie odwrotne odczucia - miesiąca na windowsie nie wytrzymam ;].
Tytuł: Odp: OpenGL vs DirectX
Wiadomość wysłana przez: Krzysiek K. w Styczeń 06, 2008, 04:25:56
Cytuj
I nie rozumiem za bardzo stwierdzenia ze DirectX jest obiektowy... interfejsy to jednak chyba nie to samo co klasy, tak wiec na dobra sprawe jedyna roznica miedzy D3D a OGL w tym zakresie jest fakt, ze zrodla z D3D moga wiecej bajtow zajmowac (przez niemalze colinijkowe kombinacje ->) ;)
Wywołanie metody to chyba raptem jeden bajt więcej w źródle w porównaniu ze zwykłą funkcją (zamiast wrzucić wskaźnik na stos wrzucamy go do ECX, a potem dopiero ECX na stos). Z ta obiektowością chodzi głównie o różnice w filozofii programowania. W DirectX operacje wykonuje się bezpośrednio na obiektach, podczas gdy w OpenGL nie ma pojęcia obiektu i musimy coś tam podpiąć, żeby dopiero potem wykonać na tym operacje, na czym cierpi wielowątkowość (bo jak to stworzyć nową teksturę w jednym wątku podczas gdy w drugim coś renderujemy).

Cytuj
Pewien nie jestem ale zdaje sie ze procki konsolowe, pomimo ze "parametrami" moga byc gorsze od PC'owych, to jednak sa wydajniejsze bo nie jest zachowywana zadna kombatybilnosc wstecz - nowa konsola = nowy procek, dzieki czemu mozna uzyskac wieksza wydajnosc.
Te PC'towe też sobie źle nie radzą, dzięki temu że mają wbudowane optymalizatory kodu i pod spodem wyglądają architekturą bardziej jak procesory DSP niż jak klasyczne x86. :)


No i na koniec ostrzeżenie moderatorskie: jak chcecie pogadać o Windowsach i Linuksach, to jest od tego inny wątek, więc proszę tam się rozpisywać, bo będę zmuszony offtop wykasować.
Tytuł: Odp: OpenGL vs DirectX
Wiadomość wysłana przez: Asmodeusz w Luty 14, 2008, 05:10:30
Ja jeszcze (dolewając oliwy do ognia, starym dobrym zwyczajem) dorzucę coś od siebie - coś na temat prostoty i przenośności. Nie zaprzeczam, że w OpenGL można pisać na wszystko - od PeCeta, przez konsolę, komórkę aż do mikrofalówki :P Tyle tylko, że... co z tego? Na ilu urządzeniach tak samo napisany kod będzie działał z podobną wydajnością? Ile tracimy nie optymalizując go pod jedną, konkretną platformę?
Na drugim biegunie DirectX 10 - póki co wymaga Windows Vista i karty graficznej wspierającej *wszystkie* opcje i możliwości DX10. Zrezygnowano z wkurzających wszystkich CAPSów, stawiając na prosty podział: zgodne w pełni / niezgodne. Dzięki temu: 1) oszczędza się pracy programiście, który wie, czego *zawsze* może się spodziewać i oczekiwać i 2) pozwala na optymalizację pod konkretne możliwości sprzętu.
W przypadku OpenGL (mówię jeszcze o 2.0 - mam nadzieję, że w nowym to poprawią) jest masa rozszerzeń, nie ze wszystkim zgodnych, nie dających pewności wsparcia sprzętowego itp. Więc niby ta przenośność jest, ale tak naprawdę okazuje się ona być znacznie bardziej szkodliwa niż pomocna :P Do tego fakt "przenośności" komplikuje prostotę kodu - bo jak skorzystać z rozszerzeń specyficznych dla danej platformy jak to ma być przenośne?
I dlatego specjalizacja i jednoplatformowość rox :D
Tytuł: Odp: OpenGL vs DirectX
Wiadomość wysłana przez: Reg w Luty 14, 2008, 11:44:48
Dla mnie ten brak capsów to ściema i pic na wodę. Teraz robi więcej szkody niż pożytku, bo żadna licząca się z pieniędzmi firma nie pisze gry wymagającej koniecznie Visty i GeForce 8000 (z wyjątkiem Microsoftu...), a pisanie dwóch wersji na dwie różne biblioteki (DX9 i DX10) kosztuje więcej.

A co będzie, kiedy już (jeśli już?) Vista całkowicie zastąpi XP, a GeForce 8000 będzie w każdym pececie i w każdym laptopie? Nie powiesz mi przecież, że rozwój kart graficznych się zatrzyma i twórcy sprzętu nie będą dodawali nowych możliwości. Wtedy albo capsy znowu powrócą, albo będzie tworzony DirectX 10.1, DirectX 11 itd., każdy niekompatybilny z poprzednim i ze starym sprzętem. A wtedy twórcy gier będą musieli pisać osobne wersje i wrócilibyśmy do czasów DOS-a, kiedy np. takie GTA miało osobne pliki EXE dla 3dfx i innych niekompatybilnych ze sobą standardów graficznych.
Tytuł: Odp: OpenGL vs DirectX
Wiadomość wysłana przez: Khaine w Luty 14, 2008, 13:11:36
Cytuj
A co będzie, kiedy już (jeśli już?) Vista całkowicie zastąpi XP, a GeForce 8000 będzie w każdym pececie i w każdym laptopie?
bedzie to samo co z dx9.0. DX10.x to jest to samo co DX9.0x, w koncu przestana robic nowe wersje 10tki (tak jak sie skonczylo na dx9.0c), a DX11 jeszcze tak szybko nie wejdzie (chociaz prace juz trwaja).

Niebawem DX10 stanie sie standardem tak jak 9tka. Kiedys tez wiele osob nie chcialo sie przesiadac z win98 na xp. Teraz wszyscy maja (jesli windows) XP lub viste. Taka jest kolej rzeczy wg. MS - nowy OS to robimy wszystko, zeby ludzie sie przesiedli na niego... i sie przesiadaja.

Obecnie nowsze gry wspieraja DX10, jesli nie od razu to wychodza jakies patche do nich. Do silnikow tez dodaja DX10, wiec to jest poprostu dalszy rozwoj a nie pisanie od nowa na 2 renderery DX + opengl + konsole.
Tytuł: Odp: OpenGL vs DirectX
Wiadomość wysłana przez: Krzysiek K. w Luty 14, 2008, 13:20:26
Cytuj
A co będzie, kiedy już (jeśli już?) Vista całkowicie zastąpi XP, a GeForce 8000 będzie w każdym pececie i w każdym laptopie? Nie powiesz mi przecież, że rozwój kart graficznych się zatrzyma i twórcy sprzętu nie będą dodawali nowych możliwości. Wtedy albo capsy znowu powrócą, albo będzie tworzony DirectX 10.1, DirectX 11 itd., każdy niekompatybilny z poprzednim i ze starym sprzętem. A wtedy twórcy gier będą musieli pisać osobne wersje i wrócilibyśmy do czasów DOS-a, kiedy np. takie GTA miało osobne pliki EXE dla 3dfx i innych niekompatybilnych ze sobą standardów graficznych.
I tak piszą osobne wersje pod Windows'a, XBox'a i PS3, więc aż tak wiele to nie zmieni, bo komercyjne silniki są z reguły przygotowane na ewentualność zmiany API. W przypadku nieco mniejszych produkcji DX10 ułatwi o tyle, że pociągnął za sobą ujednolicenie właściwości sprzętowych i można pisać tylko pod niego.
Tytuł: Odp: OpenGL vs DirectX
Wiadomość wysłana przez: skoti w Luty 14, 2008, 16:15:50
Ja jeszcze (dolewając oliwy do ognia, starym dobrym zwyczajem) dorzucę coś od siebie - coś na temat prostoty i przenośności. Nie zaprzeczam, że w OpenGL można pisać na wszystko - od PeCeta, przez konsolę, komórkę aż do mikrofalówki :P Tyle tylko, że... co z tego? Na ilu urządzeniach tak samo napisany kod będzie działał z podobną wydajnością? Ile tracimy nie optymalizując go pod jedną, konkretną platformę?
Na drugim biegunie DirectX 10 - póki co wymaga Windows Vista i karty graficznej wspierającej *wszystkie* opcje i możliwości DX10. Zrezygnowano z wkurzających wszystkich CAPSów, stawiając na prosty podział: zgodne w pełni / niezgodne. Dzięki temu: 1) oszczędza się pracy programiście, który wie, czego *zawsze* może się spodziewać i oczekiwać i 2) pozwala na optymalizację pod konkretne możliwości sprzętu.
W przypadku OpenGL (mówię jeszcze o 2.0 - mam nadzieję, że w nowym to poprawią) jest masa rozszerzeń, nie ze wszystkim zgodnych, nie dających pewności wsparcia sprzętowego itp. Więc niby ta przenośność jest, ale tak naprawdę okazuje się ona być znacznie bardziej szkodliwa niż pomocna :P Do tego fakt "przenośności" komplikuje prostotę kodu - bo jak skorzystać z rozszerzeń specyficznych dla danej platformy jak to ma być przenośne?
I dlatego specjalizacja i jednoplatformowość rox :D
Ile będzie działać z podobną wydajnością? np na pc to macosX, linux, *bsd, windows... Pewnie powiesz, że nie opłacalne ;p - odpowiedź http://etqw.splatterladder.com/?mod=statistic quake wars i 74% graczy używających linuxa ;p
Co do odcinania się od wcześniejszych kart... hmmm w ogl też możesz tak zrobić pisząc tylko dla najnowszych kart graficznych i olewając graczy bez nich oszczędzając na programowaniu starszych kart - tu masz wybór, a nie tak jak w dx nakaz ;p czy to źle? Myślę że wręcz przeciwnie, bo nie każdy projekt uderza w ten sam target i firma może się dostosować ;p
Dlatego wieloplatformowość i OpenGL rox ;p
Tytuł: Odp: OpenGL vs DirectX
Wiadomość wysłana przez: maxest w Luty 14, 2008, 16:51:03
Cytuj
tu masz wybór, a nie tak jak w dx nakaz ;p czy to źle? Myślę że wręcz przeciwnie, bo nie każdy projekt udeża w ten sam target i firma może się dostosować ;p
W przypadku DX'a tez masz wybor - chcesz nowy sprzet - DX10, chcesz wspierac stary i bawic sie w capsy - DX9.
Jak wyjdzie OGL 3.0 to tez bedziesz mial **wno nie wybor, bo ta specyfikacja pewnie nie bedzie wspierana przez karty ponizej GeForce z serii 9k :P
I niech sie wreszcie ujednolica jakos te standardy bo przez ten burdel nie mozna w spokoju aplikcji pisac, ktore by dzialaly na kazdym sprzecie :). Dlatego na dzien dzisiejszy duzo przyjemniej pisze sie w DX'ie, gdzie nie ma tony rozszerzen, ktorych to z kolei implementacji zalezy od widzi-mi-sie producenta kart. Z reszta najlepszym chyba dowodem na to, ze DX dzisiaj jest wygodniejszy w uzyciu (oczywiscie nie mowie tutaj o uzywaniu API bo to bez sensu, ale o wygodzie wynikajacej z "przenosnosci" pomiedzy rozny hardware na Piecach) jest fakt, ze chyba z 90% gier powstaje wlasnie w DX'ie
Tytuł: Odp: OpenGL vs DirectX
Wiadomość wysłana przez: albireo w Luty 14, 2008, 17:13:09
Jak wyjdzie OGL 3.0 to tez bedziesz mial **wno nie wybor, bo ta specyfikacja pewnie nie bedzie wspierana przez karty ponizej GeForce z serii 9k :P
Mylisz się, OGL 3.0 ma działać na kartach od GF6xxx w górę (i ich odpowiednikach innych firm), dopiero późniejsza specyfikacja (Mount Evans) będzie wymagała kart typu GF8xxx lub wyższych (czyli tego co teraz dx10).
Tytuł: Odp: OpenGL vs DirectX
Wiadomość wysłana przez: skoti w Luty 14, 2008, 18:04:05
...Dlatego na dzien dzisiejszy duzo przyjemniej pisze sie w DX'ie, gdzie nie ma tony rozszerzen, ktorych to z kolei implementacji zalezy od widzi-mi-sie producenta kart. Z reszta najlepszym chyba dowodem na to, ze DX dzisiaj jest wygodniejszy w uzyciu (oczywiscie nie mowie tutaj o uzywaniu API bo to bez sensu, ale o wygodzie wynikajacej z "przenosnosci" pomiedzy rozny hardware na Piecach) jest fakt, ze chyba z 90% gier powstaje wlasnie w DX'ie
Piszesz tak jakby w dx nie zależało od "widzimisię" producentów ;p Przecież dx przekazuje do sterowników tak jak ogl gdzie wszystko zależy od tego "widzimisię" (dlatego obraz na radkach jest inny niż na gf w dx10 ;p)...
Co do OGL 3.0 to raczej nie masz racji ;p - znaczy się wszystkie możliwości będą tylko na najnowszych, ale jak nie będziesz używał ich powinno działać i na starszych :)

"fakt, ze chyba"?? to wreszcie fakt czy chyba, bo nie rozumiem tego sformułowania ;p
Tytuł: Odp: OpenGL vs DirectX
Wiadomość wysłana przez: Charibo w Luty 14, 2008, 18:11:09
Cytuj
bedzie to samo co z dx9.0. DX10.x to jest to samo co DX9.0x, w koncu przestana robic nowe wersje 10tki (tak jak sie skonczylo na dx9.0c), a DX11 jeszcze tak szybko nie wejdzie (chociaz prace juz trwaja).
Że que? Direct3D 9.0c wprowadził SM3 - czyli milowy krok w stosunku do SM2. D3D10-10.1 porównałbym raczej do D3D9a-b, gdzie zmiany były dosyc kosmetyczne :)

Cytuj
(dlatego obraz na radkach jest inny niż na gf w dx10 ;p)...
BTW, ATI udało się wreszcie zrobic jakąś kartę z pełnym SM3? :D
Tytuł: Odp: OpenGL vs DirectX
Wiadomość wysłana przez: Krzysiek K. w Luty 14, 2008, 18:13:56
Cytuj
Przecież dx przekazuje do sterowników tak jak ogl gdzie wszystko zależy od tego "widzimisię" (dlatego obraz na radkach jest inny niż na gf w dx10 ;p)...
Właśnie nie do końca. Raz, że w DX10 obowiązują state blocki (czy jak to się nazywa), które pozwalają nieco optymalniej zarządzać stanami. Dwa, że DX10 gwarantuje, że sterowniki dostają kod shaderów już przeparsowany, zoptymalizowany i skompilowany do postaci pośredniej, przez co producenci nie mają już większych szans skopać parsera shaderów, jak to w GLSL bywało. :)
Tytuł: Odp: OpenGL vs DirectX
Wiadomość wysłana przez: maxest w Luty 14, 2008, 20:00:53
Cytuj
"fakt, ze chyba"?? to wreszcie fakt czy chyba, bo nie rozumiem tego sformułowania ;p
Czepisz sie :P. Wyrazenie "chyba z" to co innego niz samo "chyba". Rownie dobrze moglem napisac "fakt, ze jakies". To za przecinkiem mialo oznaczac jakies przyblizenie tych 90% :)

Cytuj
Mylisz się, OGL 3.0 ma działać na kartach od GF6xxx w górę (i ich odpowiednikach innych firm)
Chcialbym zobaczyc jakas gre wykorzystujaca OGL 3.0 z wymaganiami 2xCrysis na karcie z serii GF 6k :D
Tytuł: Odp: OpenGL vs DirectX
Wiadomość wysłana przez: skoti w Luty 14, 2008, 22:46:00
Cytuj
Przecież dx przekazuje do sterowników tak jak ogl gdzie wszystko zależy od tego "widzimisię" (dlatego obraz na radkach jest inny niż na gf w dx10 ;p)...
Właśnie nie do końca. Raz, że w DX10 obowiązują state blocki (czy jak to się nazywa), które pozwalają nieco optymalniej zarządzać stanami. Dwa, że DX10 gwarantuje, że sterowniki dostają kod shaderów już przeparsowany, zoptymalizowany i skompilowany do postaci pośredniej, przez co producenci nie mają już większych szans skopać parsera shaderów, jak to w GLSL bywało. :)
no tu to nie wiem jak jest bo używam cg czyli tak na dobrą sprawę hlsl

Chcialbym zobaczyc jakas gre wykorzystujaca OGL 3.0 z wymaganiami 2xCrysis na karcie z serii GF 6k :D
To nie o to chodzi, żeby karta obsługiwała wszystkie efekty, ale żeby można było napisać tak, żeby się na tej karcie uruchomiła - po to są ustawienia jakości efektów w grach ;p
Tytuł: Odp: OpenGL vs DirectX
Wiadomość wysłana przez: skalniak w Luty 14, 2008, 23:03:48
Cytuj
"fakt, ze chyba"?? to wreszcie fakt czy chyba, bo nie rozumiem tego sformułowania ;p
Czepisz sie :P. Wyrazenie "chyba z" to co innego niz samo "chyba". Rownie dobrze moglem napisac "fakt, ze jakies". To za przecinkiem mialo oznaczac jakies przyblizenie tych 90% :)

Cytuj
Mylisz się, OGL 3.0 ma działać na kartach od GF6xxx w górę (i ich odpowiednikach innych firm)
Chcialbym zobaczyc jakas gre wykorzystujaca OGL 3.0 z wymaganiami 2xCrysis na karcie z serii GF 6k :D

moim zdaniem mogli zrobic crysisa zeby szybciej dzialal

Pozdr.skalniak
PS no i grafa jest ladna ale wyjadkowo realistyczna to w puszczy i obok wody po za nia ( pomieszczenia ) wg mnie niestety ambient occlusion szalu nie zrobil :) ale woda lepsza niz w realu :)
Tytuł: Odp: OpenGL vs DirectX
Wiadomość wysłana przez: maxest w Luty 14, 2008, 23:45:34
Cytuj
ale woda lepsza niz w realu Smiley
Polemizowalbym. Jak bedziesz grac nastepnym razem to wez podejdz do wody i zobacz jak przyplywa do brzegu i odplywa. Mozna zauwazyc, ze zaraz pod powierzchnia wody nastepuje gwaltowne zalamanie swiatla. Nie jestem pewien, czy tak powinno byc, ale imho w grze wyglada to dosc nierealistyczne - widoczna jest "linia" w ktorej styka sie plaszczyzna wody z plaszczyzna terenu.

A tak swoja drogaCrysis to potwornie nudna i badziewna gra :)

Cytuj
To nie o to chodzi, żeby karta obsługiwała wszystkie efekty, ale żeby można było napisać tak, żeby się na tej karcie uruchomiła
Jak juz sie bawic sprzetem to na calego ;). Nie no, w tym momencie masz absolutna racje, tyle ze zanim OGL 3.0 wejdzie w uzytek i nim powstanie pierwsza gra nan dedykowana (pewnie id zrobi Quake'a 5 :D) to GF6k juz malo kto bedzie mial :). Poza tym nie wiem czy producentom az tak bedzie sie chcialo babrac z krojeniem grafiki zeby ruszylo na GF6k
Tytuł: Odp: OpenGL vs DirectX
Wiadomość wysłana przez: gamecreator w Luty 15, 2008, 05:02:14
A ja wolę, gdy gra jednak sprawdza, jakie możliwości oferuje moja karta graficzna i udostępnia mi wtedy opcje lepszej grafiki, a jeśli coś nie jest oferowane przez kartę, to po prostu "degraduje się" [np. wyłącza jakieś efekty specjalne], a nie po chamsku wyłącza się z komunikatem, że mam za słabą kartę, co doskonale wiem :P Przecież równie dobrze mógłbym na tej słabej karcie grać, tylko bez różnych efektów specjalnych.
To tak a' propos tych CAPSów w DX i rozszerzeń w OGL.
Wycofanie CAPSów to był IMHO pomysł iście idiotyczny, bo wątpię, żeby kiedykolwiek wszystkie karty oferowały tą samą funkcjonalność. To by oznaczało zatrzymanie się w rozwoju. Jak np. nVidia wymyśli nowy bajer, to wolę włączyć jedno niestandardowe rozszerzenie tym graczom, którzy mają tą nową kartę, niż czekać, aż MS raczy wypuścić kolejną wersję DX. Cała ta "zgodność/niezgodność z DX" to kolejna łapka na pieniądze, tak jak z certyfikowaniem sterowników przez MS: certyfikacja to przecież kosztowny proces ;J a nie posiadanie certyfikatu zgodności oznacza gorszą pozycję na rynku ;J
Tytuł: Odp: OpenGL vs DirectX
Wiadomość wysłana przez: Krzysiek K. w Luty 15, 2008, 13:45:03
Cytuj
Wycofanie CAPSów to był IMHO pomysł iście idiotyczny, bo wątpię, żeby kiedykolwiek wszystkie karty oferowały tą samą funkcjonalność.
Już tak jest, bo autorytet DirectX 10 i porozumienie między jego twórcami zdołało to wymusić to wymusić. Co prawda nieco capsów pozostało, ale 99% rzeczy masz gwarantowane. W efekcie developerzy nie będą trafiali na takie kwiatki, że tu nie działa filtrowanie floatów, tam blending, a Radeony z Shader Model 3.0 zgłaszają obsługę vertex texture fetch, ale nie zgłaszają żadnych wspieranych formatów textur. :)

Cytuj
To by oznaczało zatrzymanie się w rozwoju. Jak np. nVidia wymyśli nowy bajer, to wolę włączyć jedno niestandardowe rozszerzenie tym graczom, którzy mają tą nową kartę, niż czekać, aż MS raczy wypuścić kolejną wersję DX.
Weź pod uwagę, że specyfikacja DirectX 10 pojawiła się sporo przed udostępnieniem pierwszych kart je wspierających, więc raczej tego bym się nie obawiał. Poza tym jeżeli NVidia zdecyduje się dorzucić coś istotnego, to zawsze mogą dodać kolejną literkę do DX'a i dorzucić co nie co w kolejnym wydaniu (tak jak to było przykładowo z Shader Model 2.X i Shader Model 3.0).

Cytuj
Cała ta "zgodność/niezgodność z DX" to kolejna łapka na pieniądze, tak jak z certyfikowaniem sterowników przez MS: certyfikacja to przecież kosztowny proces ;J a nie posiadanie certyfikatu zgodności oznacza gorszą pozycję na rynku ;J
Certyfikacja przyczynia się do poprawy jakości tych sterowników, bo w przypadku fuszerki przecież certyfikatu nie dostaną, więc proces certyfikacji osiąga zamierzony cel - użytkownicy dostają bardziej stabilne sterowniki.
Tytuł: Odp: OpenGL vs DirectX
Wiadomość wysłana przez: bies w Luty 15, 2008, 13:53:37
Cytuj
Cała ta "zgodność/niezgodność z DX" to kolejna łapka na pieniądze, tak jak z certyfikowaniem sterowników przez MS: certyfikacja to przecież kosztowny proces ;J a nie posiadanie certyfikatu zgodności oznacza gorszą pozycję na rynku ;J
Certyfikacja przyczynia się do poprawy jakości tych sterowników, bo w przypadku fuszerki przecież certyfikatu nie dostaną, więc proces certyfikacji osiąga zamierzony cel - użytkownicy dostają bardziej stabilne sterowniki.
Sterowniki ATI przed Catalystem miały certyfikat MS? IIRC tak. No i co z tego, przecież to był kompletny szmelc. Ostatni przypadek z Purple Pill i sterownikami ATI dla Visty -- też miały certyfikat. Cetryfikowane sterowniki do innych urządzeń wywracające system to też znana sytuacja.
Tytuł: Odp: OpenGL vs DirectX
Wiadomość wysłana przez: skoti w Luty 15, 2008, 14:08:06
Certyfikacja przyczynia się do poprawy jakości tych sterowników, bo w przypadku fuszerki przecież certyfikatu nie dostaną, więc proces certyfikacji osiąga zamierzony cel - użytkownicy dostają bardziej stabilne sterowniki.
W skuteczność certyfikacji Microsoftu bym nie ufał tak, bo już były przypadki certyfikowanych sterów, przez microsoft z backdoorami i robakami to i w to że fuszerki nie podpiszą nie wierze (tym bardziej że już widziałem podpisane stery, których nazwanie porażką jest pochwałą ;p)
Tytuł: Odp: OpenGL vs DirectX
Wiadomość wysłana przez: gamecreator w Luty 15, 2008, 14:14:23
Cytat: Krzysiek K.
o prawda nieco capsów pozostało, ale 99% rzeczy masz gwarantowane. W efekcie developerzy nie będą trafiali na takie kwiatki, że tu nie działa filtrowanie floatów, tam blending, a Radeony z Shader Model 3.0 zgłaszają obsługę vertex texture fetch, ale nie zgłaszają żadnych wspieranych formatów textur. :)
Jeśli tak, to sprawa dotyczy DX i OGL w jednakowym stopniu, więc nie można z tego robić argumentu za/przeciw któremuś z nich.

Cytat: Krzysiek K.
Cytat: SasQ
Cała ta "zgodność/niezgodność z DX" to kolejna łapka na pieniądze, tak jak z certyfikowaniem sterowników przez MS: certyfikacja to przecież kosztowny proces ;J a nie posiadanie certyfikatu zgodności oznacza gorszą pozycję na rynku ;J
Certyfikacja przyczynia się do poprawy jakości tych sterowników, bo w przypadku fuszerki przecież certyfikatu nie dostaną, więc proces certyfikacji osiąga zamierzony cel - użytkownicy dostają bardziej stabilne sterowniki.
Pod warunkiem, że kupią markową kartę jednego z wiodących producentów, która ma certyfikat. W przypadku certyfikowania sterowników kupno sprzętu niecertyfikowanego nie wykluczało poprawnego działania urządzenia w systemie Windows, więc certyfikacja to tylko mydlenie oczu i wzajemne klepanie się po plecach przez Microsoft i producentów sprzętu, których stać na certyfikację [choć domyślam się, że także wspólny interes ;J].
Tytuł: Odp: OpenGL vs DirectX
Wiadomość wysłana przez: Krzysiek K. w Luty 15, 2008, 14:36:57
Cytuj
Jeśli tak, to sprawa dotyczy DX i OGL w jednakowym stopniu, więc nie można z tego robić argumentu za/przeciw któremuś z nich.
Jest to argument za DX10, chociaż nieco innego rodzaju - DirectX 10 stał się panującym standardem, czego żadnej wersji OpenGL nie udało się osiągnąć.
Tytuł: Odp: OpenGL vs DirectX
Wiadomość wysłana przez: bies w Luty 15, 2008, 14:51:20
Cytuj
Jeśli tak, to sprawa dotyczy DX i OGL w jednakowym stopniu, więc nie można z tego robić argumentu za/przeciw któremuś z nich.
Jest to argument za DX10, chociaż nieco innego rodzaju - DirectX 10 stał się panującym standardem, czego żadnej wersji OpenGL nie udało się osiągnąć.
Panującym standardem z 6-cio procentową penetracją rynku?! Panującym standardem jest DX9c.
Tytuł: Odp: OpenGL vs DirectX
Wiadomość wysłana przez: Khaine w Luty 15, 2008, 15:33:40
mysle, ze Krzysiek ma racje. Kazda szanujaca sie gra jaka teraz wyjdzie bedzie obslugiwac DX10 (czywiscie mowie o czyms lepszym niz tytuly typu 'sherk 15'), oraz DX9c dla 'wstecznej' kompatybilnosci :P
Tytuł: Odp: OpenGL vs DirectX
Wiadomość wysłana przez: Krzysiek K. w Luty 15, 2008, 16:01:56
Cytuj
Panującym standardem z 6-cio procentową penetracją rynku?! Panującym standardem jest DX9c.
Co prawda jeszcze nie rozpowszechnionym na masowa skalę, ale już panującym. Teraz po prostu żaden szanujący się producent chipów graficznych nie wypuści czegoś, co by nie było kompatybilne z DX10. :)
Tytuł: Odp: OpenGL vs DirectX
Wiadomość wysłana przez: skoti w Luty 15, 2008, 17:50:38
Cytuj
Panującym standardem z 6-cio procentową penetracją rynku?! Panującym standardem jest DX9c.
Co prawda jeszcze nie rozpowszechnionym na masowa skalę, ale już panującym. Teraz po prostu żaden szanujący się producent chipów graficznych nie wypuści czegoś, co by nie było kompatybilne z DX10. :)
To nie dlatego, że uważają go za panujący standard, ale dlatego, że jest to dobry lep marketingowy - tak samo jak żadna szanująca się firma nie wypuści karty nie obsługującej najnowszego opengl ;p
Jest to argument za DX10, chociaż nieco innego rodzaju - DirectX 10 stał się panującym standardem, czego żadnej wersji OpenGL nie udało się osiągnąć.
ja pamiętam to zupełnie inaczej  opengl był pierwszym liczącym się standardem i dx do wersji bodajże 7 był raczej kiepski - później dx został poprawiony + marketing ms razem z praktycznie zatrzymaniem prac nad ogl zrobiły swoje, ale odkąd Khronos działa sytuacja się zmieniła, ale nie łatwo oderwać teraz od przyzwyczajeń programistów ;p - niewątpliwie nadchodzi kolejne starcie tych api ;p - pierwszą bitwę wygrał ogl drugą dx - teraz dzięki MS ma szanse znowu ogl, bo niewątpliwie większe możliwości na najpopularniejszym systemie ma OGL ;p
Tytuł: Odp: OpenGL vs DirectX
Wiadomość wysłana przez: Krzysiek K. w Luty 15, 2008, 18:37:19
Cytuj
To nie dlatego, że uważają go za panujący standard, ale dlatego, że jest to dobry lep marketingowy - tak samo jak żadna szanująca się firma nie wypuści karty nie obsługującej najnowszego opengl ;p
A kto z przeciętnych graczy zwraca uwagę na to, którą wersję OpenGL karta obsługuje, skoro "wszystkie" gry są pisane w DirectX'ie? Poza tym fakt "obsługi" OpenGL x.y o niczym nie świadczy, bo zawsze można dodać softwareową implementację w driverze. Z DirectX 10 jest o tyle inaczej, że ma on bardzo wysoko ustawione wymagania sprzętowe i ma realny wpływ na to, co znajdujemy na kartach graficznych. Z OpenGL sprawa wyglądała tak, że cokolwiek było na karcie, można było jakoś podpiąć pod OpenGL'a i jakoś to chodziło, czego przykładem jest polityka ATI - realizować dokładnie to, co jest w DirectX 9 na kartach, a OpenGL'a potem jakoś pod to podciągać.

EDIT:
Cytuj
ja pamiętam to zupełnie inaczej  opengl był pierwszym liczącym się standardem i dx do wersji bodajże 7 był raczej kiepski
OpenGL był standardem, bo nie było za bardzo nic innego, a w przypadku kart graficznych pierwszym liczącym się standardem był Glide.

Cytuj
odkąd Khronos działa sytuacja się zmieniła
Mógłbyś mnie uświadomić co się zmieniło? Bo z perspektywy programisty to większych zmian nie zauważyłem. :)

Cytuj
teraz dzięki MS ma szanse znowu ogl, bo niewątpliwie większe możliwości na najpopularniejszym systemie ma OGL ;p
Myślę, że marketingowcy MS wystarczająco przemyśleli decyzję o olaniu wsparcia DX10 na OpenGL, więc raczej na nagły wzrost popularności OpenGL'a z tego powodu bym nie liczył. W przypadku komercyjnych gier raczej bym się spodziewał naturalną koleją wymagania Visty, przez co większość graczy będzie zmuszona do upgrade'u, jak to już było z przesiadką na XP - też niektóre gry tego wymagały, a teraz już pewnie ciężko znaleźć cokolwiek, co by wspierało 98.
Tytuł: Odp: OpenGL vs DirectX
Wiadomość wysłana przez: skoti w Luty 15, 2008, 21:21:52
Mógłbyś mnie uświadomić co się zmieniło? Bo z perspektywy programisty to większych zmian nie zauważyłem. :)
OpenGL znowu prężnie się rozwija, pojawiły się nowe wersję specyfikacji. Marketing i lobby na rzecz opengl się widocznie polepszyły. OpenGL ES poszerzył znacznie zastosowanie tego api - pisanie w opengl jest bardzo opłacalne ze względu na dużo większy target. Dzięki dynamizacji działań w tej chwili odświeżane jest całe api czego wynikiem będzie opengl 3.0 który ma być za niedługo wydany. Zmienia się dużo ;p
Tytuł: Odp: OpenGL vs DirectX
Wiadomość wysłana przez: Krzysiek K. w Luty 15, 2008, 21:28:54
Cytuj
Zmienia się dużo ;p
Poczekajmy aż te zmiany wpłyną jakoś na faktyczną sytuację. :)
Tytuł: Odp: OpenGL vs DirectX
Wiadomość wysłana przez: maxest w Luty 16, 2008, 00:37:44
Cytuj
OpenGL ES poszerzył znacznie zastosowanie tego api
No tu sie jak najbardziej zgadzam - OGL ES to wreszcie byl jakis powazniejszy krok w kierunku ujednolicania standardu, gdzie wyrzucono bublowane funkcje a wrzucono te bardziej "nowoczesne" jak chocby funkcje do obslugi szejderow :)
Tytuł: Odp: OpenGL vs DirectX
Wiadomość wysłana przez: Invincible w Maj 06, 2008, 13:49:53
Z DirectX 10 jest o tyle inaczej, że ma on bardzo wysoko ustawione wymagania sprzętowe i ma realny wpływ na to, co znajdujemy na kartach graficznych. Z OpenGL sprawa wyglądała tak, że cokolwiek było na karcie, można było jakoś podpiąć pod OpenGL'a i jakoś to chodziło, czego przykładem jest polityka ATI - realizować dokładnie to, co jest w DirectX 9 na kartach, a OpenGL'a potem jakoś pod to podciągać.
To że ATI z OpenGL radzi sobie jeszcze gorzej niż ze sterownikami nie świadczy źle o OGL tylko o ATI:P
Na kartach nVidi OGL jest traktowany dużo lepiej (język Cg wyraźnie nawiązujący do OGL i prędkość gier Id Software na GF i Radeonach).
Tytuł: Odp: OpenGL vs DirectX
Wiadomość wysłana przez: maxest w Maj 06, 2008, 15:25:08
Cytuj
To że ATI z OpenGL radzi sobie jeszcze gorzej niż ze sterownikami nie świadczy źle o OGL tylko o ATI:P
Nie patrz na to czyja to wina, tylko kto na tym cierpi. Bo w tym wypadku to my - programisci :P. I dopoki m.in. to sie nie zmieni, OGL bedzie standardem  ktory z powazniejszych firm beda uzywaly tylko id i Epic, bo na dzien dzisiejszy znaczna czesc developerow "siedzi" w dx'ie :)
Tytuł: Odp: OpenGL vs DirectX
Wiadomość wysłana przez: Invincible w Maj 06, 2008, 18:45:29
A D3D nie ma shaderow 3.0 pod Cg a OpenGL ma :P (no przynajmniej kiedyś tak było ;))
Tytuł: Odp: OpenGL vs DirectX
Wiadomość wysłana przez: gamecreator w Maj 06, 2008, 19:35:01
Cytat: maxest
Cytuj
To że ATI z OpenGL radzi sobie jeszcze gorzej niż ze sterownikami nie świadczy źle o OGL tylko o ATI:P
[...]OGL bedzie standardem  ktory z powazniejszych firm beda uzywaly tylko id i Epic, bo na dzien dzisiejszy znaczna czesc developerow "siedzi" w dx'ie :)

Wygląda na to, że skończyły się argumenty, bo zaczyna się podpieranie autorytetami [fabryki gier, producenci kart] i bliżej nieokreśloną "większością", czyli typowa "psychologia tłumu" i pędzenie owiec. Na szczęście nie jestem demokratą i swój rozum mam ;J
Tytuł: Odp: OpenGL vs DirectX
Wiadomość wysłana przez: Charibo w Maj 06, 2008, 19:43:23
Tak, na szczęście.
Tytuł: Odp: OpenGL vs DirectX
Wiadomość wysłana przez: maxest w Maj 06, 2008, 20:01:33
Cytuj
Wygląda na to, że skończyły się argumenty, bo zaczyna się podpieranie autorytetami
Akurat TA wiekszosc raczej nie wziela sie z niczego. Z DX'em raz ze nie ma problemow jesli idzie o rozne karty (a nawet jesli sa to jest ich mniej :P), a poza tym ma swietne wsparcie i narzedzia (jakies texture tool, pix, debugger, ze nie wspomne o calej gamie pozytecznych d3dx'owych funkcji). Tak wiec krotko mowiac: w dx'ie pisze sie WYGODNIEJ. Of korz to wszystko IMHO
Tytuł: Odp: OpenGL vs DirectX
Wiadomość wysłana przez: pawelad w Maj 07, 2008, 13:52:40
Dla inżyniera czy amatora, DX to już historia. Ograniczenie do Visty to paranoja. Wygodniejszy jest raczej OpenGL bo można łatwiej ulepic wrappera, w 5 minut napisac szybki test. Nie trzeba instalowac specjalnych pakietów, w przypadku XNA potrzebne NET, ja tego gówna napewno bym nie zainstalował, gdybym  naprawde nie musial.
Jestem zdecydowanie na nie, ale zaczynalem od DX przez te cholerne ułatwiacze i sie ostatecznie przejechałem na MS.
Tytuł: Odp: OpenGL vs DirectX
Wiadomość wysłana przez: maxest w Maj 07, 2008, 14:36:28
Cytuj
Wygodniejszy jest raczej OpenGL bo można łatwiej ulepic wrappera, w 5 minut napisac szybki test
A co to jest ten "szybki test"? Bo jesli demko jakiejs techniki majacej wykorzystac normal-mapping to juz tak szybko nie bedzie. Nawet tak powszechny i wazny mechanizm jak render-to-texture w dx'ie jest duzo wygodniejszy w uzyciu. Poza tym nikt Cie do Visty nie ogranicza - jest DX9 ktore smiga na windows'ach od 98 w gore
Tytuł: Odp: OpenGL vs DirectX
Wiadomość wysłana przez: pawelad w Maj 07, 2008, 18:04:58
Pewnie, a ale kto będzie tracił czas na obsługę dwóch różnych API, każdy chce sie bawić nowymi zabawkami bez ograniczeń. Jeśli producenci kart i gier na PC zaczną sie przyzwyczajac do DX10( wypuszczając swe gierki tylko na jeden wspaniały system) to  rynek gier PC upadnie mocno, widać to jak na dłoni także z innych powodów.
Tytuł: Odp: OpenGL vs DirectX
Wiadomość wysłana przez: Esidar w Maj 07, 2008, 20:50:44
Jeśli producenci kart i gier na PC zaczną sie przyzwyczajac do DX1.0 ( wypuszczając swe gierki tylko na jeden wspaniały system Windows 95) to  rynek gier PC upadnie mocno.
        Anonymous, year 1995
Tytuł: Odp: OpenGL vs DirectX
Wiadomość wysłana przez: gamecreator w Maj 07, 2008, 21:20:34
No i trochę się spełniło, tylko ucierpiał na tym nieco inny rynek, niż w tej przepowiedni.
Wybierając wsparcie dla DirectX'a programiści gier niejako pomogli znaleźć się platformie Windows tu, gdzie znajduje się teraz, czyli zrobić z niej "platformę do gier" [jak niektórzy ją opisują, choć moim zdaniem konsole nadają się do tego nieco lepiej ;-J], pomogli jej zdobyć ogromną część rynku i wymieść konkurencję, więc tym samym zaszkodzili popularyzacji innych systemów. Takiej drogi wcale nie musieli wybierać, bo OpenGL już wtedy umożliwiał pisanie gier na prawie wszystko.

Dziś układ sił jeśli chodzi o systemy operacyjne wygląda nieco inaczej, niż kiedyś, sytuacja zaczyna się nieco wyrównywać, więc stoimy przed możliwością zmian i przywrócenia zdrowej równowagi konkurencyjnego rynku [w przeciwieństwie do zmonopolizowanego]. Narzeka się, że na inne systemy pisane jest mniej gier, niż na Windows, ale przecież to zależy od samych programistów gier, na co będą pisać, i na pewno nie może to być argumentem za pisaniem dalej tylko na jedną platformę i ograniczanie sobie rynku zbytu tylko do niej. Bo to tak jak mówić, że tanie wino jest dobre, bo jest dobre i tanie ;-J Czyli argumentowanie wyboru samym wyborem.

To podobnie jak zazwyczaj bywa z Visualem: "Używam go, bo inni go używają", a gdy zapytamy tych innych, mówią to samo ;-J
Tytuł: Odp: OpenGL vs DirectX
Wiadomość wysłana przez: Charibo w Maj 07, 2008, 21:29:10
Cytuj
Wybierając wsparcie dla DirectX'a programiści gier niejako pomogli znaleźć się platformie Windows tu, gdzie znajduje się teraz, czyli zrobić z niej "platformę do gier" [jak niektórzy ją opisują, choć moim zdaniem konsole nadają się do tego nieco lepiej ;-J], pomogli jej zdobyć ogromną część rynku i wymieść konkurencję, więc tym samym zaszkodzili popularyzacji innych systemów.
I chwała im (nam?) za to!

Cytuj
To podobnie jak zazwyczaj bywa z Visualem: "Używam go, bo inni go używają", a gdy zapytamy tych innych, mówią to samo ;-J
A jest w gruncie rzeczy jakiś wybór? Vi? Code::Blocks? Dev? Sorry, ale Visual Studio to w gruncie rzeczy jedyne IDE z prawdziwego zdarzenia do C++/C# imo ;)
Tytuł: Odp: OpenGL vs DirectX
Wiadomość wysłana przez: bs.mechanik w Maj 07, 2008, 21:45:31
To podobnie jak zazwyczaj bywa z Visualem: "Używam go, bo inni go używają", a gdy zapytamy tych innych, mówią to samo ;-J

Co prawda to jest temat o OpenGL i DX, ale z tym Visualem to trochę brzydko napisałeś ;)
Powiedzmy sobie szczerze: ze  środowisk dla C++, Visual jest najlepszym wyjściem.
Może i dlatego, że "wszyscy go używają", ale coś o tym świadczy. Gdyby było coś lepszego, to "wszyscy", używaliby by właśnie tego czegoś.
Szkoda, że nie sprecyzowałeś tego "wszyscy", bo z tego co mi wiadomo, to są: ID software (nawet Carmack ma pozytywne zdanie o tym środowisku), Epic Games, EA itp itd...
A popularyzacja jednego systemu operacyjnego? Dla nas, programistów jest to plus. Wyobraź sobie, gdyby Windows, Linux i OS miały podobny udział w rynku. Pisałbyś porty pod te 3 systemy?
Pewnie powstały by jakieś przenośne biblioteki, ale juz samo testowanie, rekompilacja itp. mogłyby sprawiac więcej problemów. Teraz wiadomo - gry to Windows i tyle ;)
Tytuł: Odp: OpenGL vs DirectX
Wiadomość wysłana przez: gamecreator w Maj 07, 2008, 21:53:37
Cytat: Charibo
Cytat: SasQ
więc tym samym zaszkodzili popularyzacji innych systemów.
I chwała im (nam?) za to!
To zależy po której stronie barykady się stoi ;-P Czym tu się chwalić, że wsparło się monopolizację rynku? To tak jakby phreaker chwalił się że pomógł tepsie wygryźć całą konkurencję i narzucać swoje warunki [bo tak się dzieje, gdy nie ma kto konkurować z wiodącą firmą].

Cytat: Charibo
Cytat: SasQ
To podobnie jak zazwyczaj bywa z Visualem: "Używam go, bo inni go używają", a gdy zapytamy tych innych, mówią to samo ;-J
A jest w gruncie rzeczy jakiś wybór?
Na całe szczęście zawsze jest.

Cytat: Charibo
Vi? Code::Blocks? Dev? Sorry, ale Visual Studio to w gruncie rzeczy jedyne IDE z prawdziwego zdarzenia do C++/C# imo ;)
Bo ponieważ?
No chyba że jest "jedyne najlepsze bo tak", czyli jak zwykle w takich dyskusjach ;J [choć wolałbym nie wszczynać dyskusji nie na temat, więc jeśli już to nowy wątek albo priv...]

Cytat: bs.mechanik
z tym Visualem to trochę brzydko napisałeś ;)
Co ja poradzę, że dotąd nie miałem innych doświadczeń z jego userami? ;-J
Ten wątek też niczego w tej sprawie [czy w sprawie "OpenGL vs DirectX"] nie wnosi.

Cytat: bs.mechanik
Powiedzmy sobie szczerze: ze  środowisk dla C++, Visual jest najlepszym wyjściem.
Jeśli ograniczamy się do wiadomej platformy, to może bym się zgodził. Ale i tak wolałbym, gdyby stały za tym jakieś konkretne przesłanki, bo modą się zazwyczaj nie kieruję.

Cytat: bs.mechanik
Może i dlatego, że "wszyscy go używają", ale coś o tym świadczy. Gdyby było coś lepszego, to "wszyscy", używaliby by właśnie tego czegoś.
To jest jeszcze kwestia "marketingu" danego produktu, i to samo tyczy się OpenGL vs DX, czy C++ vs Java. Ilość użytkowników zależy w dużej mierze od marketingu, a ten rzadko jest uczciwy, zdarzają się i chwyty poniżej pasa. Nie chcę już porównywać Windows vs Linux, więc użyję innej analogii: VHS vs BetaMax. Pod względem technicznym system zapisu BetaMax był lepszy i miał lepsze parametry, jednak ostatecznie VHS zmiótł go z rynku, bo producenci zalali rynek magnetowidami wspierającymi VHS. Tak więc nie zawsze to, czego "wszyscy używają", jest kwestią merytorycznego wyboru tego co lepsze.

Cytat: bs.mechanik
Szkoda, że nie sprecyzowałeś tego "wszyscy", bo z tego co mi wiadomo, to są: ID software (nawet Carmack ma pozytywne zdanie o tym środowisku), Epic Games, EA itp itd...
Szkoda że nie sprecyzowałeś, skąd to wiesz ;)

Cytat: bs.mechanik
A popularyzacja jednego systemu operacyjnego? Dla nas, programistów jest to plus.
Może mów za siebie, OK?

Cytat: bs.mechanik
Wyobraź sobie, gdyby Windows, Linux i OS miały podobny udział w rynku. Pisałbyś porty pod te 3 systemy?
Gdyby miały podobny udział w rynku, prawdopodobnie nie byłoby to konieczne, bo użytkownicy mieliby większy wpływ na standaryzację jakichś wspólnych API, a rozwijanie bibliotek cross-platform byłoby bardziej opłacalne, może wręcz konieczne.

Cytat: bs.mechanik
Pewnie powstały by jakieś przenośne biblioteki
Nom. Czyli dokładnie tak, jak robi się to teraz. Ale przy mniej więcej podobnym udziale w rynku mogłoby to nie być konieczne, bo user jednego systemu mógłby stwierdzić: "A czemu gra z systemu X nie działa mi na systemie Y? Przecież nie jestem już jakąś mniejszością/system X nie jest mniejszością, należy się więc ze mną/z nią liczyć." Więc pod naciskami użytkowników byłaby jakaś większa tendencja ku interoperacyjności, niż teraz, gdy to się zwyczajnie mało opłaca [na szczęście nie wszyscy myślą w kategoriach opłacalności ;-J].

Cytat: bs.mechanik
ale juz samo testowanie, rekompilacja itp. mogłyby sprawiac więcej problemów.
A teraz nie sprawiają? Powiesz mi, że grę napisaną na Windows XP możesz w ciemno odpalić na Windows Vista? A na Windows 2000?

Cytat: bs.mechanik
Teraz wiadomo - gry to Windows i tyle ;)
Ano wiadomo, ale to nie jest prawo zapisane w kamieniu zesłane przez Boga. Na rynku też różnie bywa ;J

Tak ogólnie podsumowując, to marzę, by w dyskusjach takich jak ta zobaczyć wreszcie kiedyś rzetelne argumenty i porównanie możliwości, a nie tylko powoływanie się na autorytety, rynek, osobiste preferencje, czy różne przejawy mody. Ale chyba się nie doczekam, bo to już 29 strona tego wątku i nadal kiepsko ;P
Tytuł: Odp: OpenGL vs DirectX
Wiadomość wysłana przez: bs.mechanik w Maj 07, 2008, 21:58:50
Ja zaryzykuje:
IntelliSense - najbardziej pożyteczna zabawka w visualu.
Poza tym - stabilność. Nawet jak sie czasem wysypie, to chociaż zrobi to w 'uporządkowany' sposób.
Debugger - porównaj do tego z dev'a. Całkiem niedawno miałem okzaję to zrobić.
Visual jest jednym z niewielu produktów MS o którym ma całkowicie pozytywna opinię.   
Tytuł: Odp: OpenGL vs DirectX
Wiadomość wysłana przez: Dab w Maj 07, 2008, 22:09:18
VS jest rewelacyjne, gdy piszemy w C#. Obsługa C++ trochę ssie, niestety (o IS nie wspominając). Ale i tak nie widziałem IDE z lepszym C++. ;)
Tytuł: Odp: OpenGL vs DirectX
Wiadomość wysłana przez: Esidar w Maj 07, 2008, 22:27:26
Wybierając wsparcie dla DirectX'a programiści gier niejako pomogli znaleźć się platformie Windows tu, gdzie znajduje się teraz, czyli zrobić z niej "platformę do gier"
(...)
Czym tu się chwalić, że wsparło się monopolizację rynku?

Bez jaj. Progamiści gier to ułamek procenta wszystkich programistów i to nie programiści dyktują czy system jest popularny czy nie. Gdyby tak było to Linux miał by 99.9% rynku bo to głównie programiści są jego użytkownikami.

Na PC nie ma systemu dobrego do robienia gier i porównywalnego chociażby w połowie z tymi z konsol. I co to zmienia ?

Cytuj
marzę, by w dyskusjach takich jak ta zobaczyć wreszcie kiedyś rzetelne argumenty
A ja marzę aby Ty i paru innych Don Kichotów zechciało je w końcu dostrzegać.
Tytuł: Odp: OpenGL vs DirectX
Wiadomość wysłana przez: gamecreator w Maj 07, 2008, 22:55:29
Cytat: Esidar
Bez jaj. Progamiści gier to ułamek procenta wszystkich programistów i to nie programiści dyktują czy system jest popularny czy nie.
Odnoszę się tylko do "I chwała im (nam?) za to!" Charibo.
Pewnie, że ułamek procenta. Problem w tym, że ten ułamek procenta [gry] jest przeważającym argumentem dla wielu "zwykłych" użytkowników. Zapytaj kogo chcesz, dlaczego używa Windowsa, zamiast innego systemu [już niekoniecznie Linuxa, bo świat nie kończy się na tych dwóch ;P]. Znakomita większość wymieni mniejszą ilość gier pisanych bezpośrednio na te systemy.

Cytat: Esidar
Gdyby tak było to Linux miał by 99.9% rynku bo to głównie programiści są jego użytkownikami.
Rzecz w tym, że programiści siedzący na Linuxach mają trochę szersze horyzonty i piszą też na inne platformy, w tym Windows. Więc to nie użytkowanie danego systemu ma tu jakieś znaczenie, tylko target.

Cytat: Esidar
Na PC nie ma systemu dobrego do robienia gier i porównywalnego chociażby w połowie z tymi z konsol.
Z tym się zgodzę.

Cytat: Esidar
Cytat: SasQ
marzę, by w dyskusjach takich jak ta zobaczyć wreszcie kiedyś rzetelne argumenty
A ja marzę aby Ty i paru innych Don Kichotów zechciało je w końcu dostrzegać.
Już mówiłem, że moda, rynek, autorytety i osobiste preferencje nie są argumentami merytorycznymi/technicznymi, bo są zbyt subiektywne, by miały jakieś odniesienie do mojej osoby.
Jeśli zaś chodzi o Visuala... Postanowiłem zlookać na najnowszą wersję, by sprawdzić, czy rzeczywiście cokolwiek się ostatnio zmieniło od ostatniego czasu, gdy go używałem. W tym celu wszedłem na stronę MS. 10 minut błądziłem po stronach pełnych marketingowych przechwałek by znaleźć gdzie to można ściągnąć. Niestety nie znalazłem na owej stronie żadnych informacji prawno-licencyjnych, co jest dla mnie ważniejsze, niż bełkot marketingowy [rozumiem, że dla kogoś, kto większość softu i tak ma spiracony, takie rzeczy pewnie nie grają roli ;P ale dla mnie są ważne].
W końcu znalazłem stronę downloadu, jednak ku mojemu przerażeniu okazało się, że chcąc pobrać wersję instalacyjną offline należy pobrać cały obraz DVD :o TO są dopiero jaja! :P Nie chcę nawet myśleć ile to zajmuje po rozpakowaniu i ile z tego rzeczywiście kiedykolwiek użyję.
Tak, jest wersja instalacyjna online mająca 2MB, jednak zakładam, że nie skończy się na zassaniu przez nią dodatkowych 100 MB, a ja cenię sobie miejsce na dysku bo mam ciekawsze rzeczy do trzymania na nim ;P
Tak więc mimo szczerych chęci chyba jednak podziękuję i wolę narzędzia, których używam obecnie [KDevelop i Code::Blocks]. Też mają odpowiednik IntelliSense i qpę innych bajerów przy dużo mniejszej zajętości dysku, a mogą współpracować z dowolnym kompilatorem.
Tytuł: Odp: OpenGL vs DirectX
Wiadomość wysłana przez: Kurak w Maj 07, 2008, 23:02:53
Oceniasz IDE po tym, ile może *potencjalnie* zajmować miejsca na dysku (bo tego nawet nie sprawdziłeś) i po tym, jak niby-trudno znaleźć stronę downloadu? Brawo.

Jeśli już mowa o IDE, to akurat Visual jakoś szczególnie dobry do C++ nie jest (chociaż z niczym lepszym się dotąd nie spotkałem), natomiast Visual C# to jest cudo :)
Tytuł: Odp: OpenGL vs DirectX
Wiadomość wysłana przez: gamecreator w Maj 07, 2008, 23:26:45
Cytat: Kurak
Oceniasz IDE po tym, ile może *potencjalnie* zajmować miejsca na dysku
Nie przeczę, że jest to dla mnie ważna rzecz, bo bajty kosztują [zarówno na HDD jak i transfer]. Ale nie twierdzę też, że to jedyne kryterium, co próbujesz mi wmówić by ukazać mnie w wiadomym świetle ;P [o czym świadczą np. kolejne supozycje]

Cytat: Kurak
(bo tego nawet nie sprawdziłeś)
Mylisz się. Sprawdziłem i obraz ISO waży 894.7 MB. W istocie "potencjalnie", dopóki go nie pobiorę w całości ;P Dla Ciebie to mało? A ile zajmie po rozpakowaniu i instalacji? Zdaje się, że gdzieś widziałem jak ktoś pisał o 3 GB...

Cytat: Kurak
i po tym, jak niby-trudno znaleźć stronę downloadu?
Może dla kogoś, kto często tam zagląda i jest przyzwyczajony do takiego układu materiału, znaleźć jest łatwo. Ja jestem przyzwyczajony do stron, na których stawia się na pierwszym miejscu użytkownika i jego potrzeby, a nie produkt i korzyści firmy. Czyli wielki przycisk "download" na pierwszej stronie, licencja tuż pod nim, linki do listy ficzerów i screenów tuż obok, wyraźnie widoczne, może nawet kilka screenów na zachętę już na pierwszej stronie. Strona MS wymagała ode mnie 3 kliknięć do znalezienia się na stronie downloadu [+1 na przejście z wyników szukania Googli] i przeczytania wcześniej mimochodem "Ody do Visuala" w czasie wypatrywania linków, które zbliżyłyby mnie do downloadu.

Cytat: Kurak
Jeśli już mowa o IDE, to akurat Visual jakoś szczególnie dobry do C++ nie jest
Więc jednak zdania są podzielone. Całe szczęście...

BTW proponuję [już drugi raz] zakończyć wątek Visuala lub przenieść go gdzieś indziej, bo tutaj jest raczej o "OpenGL vs DirectX"...
Tytuł: Odp: OpenGL vs DirectX
Wiadomość wysłana przez: Charibo w Maj 07, 2008, 23:27:46
Cytuj
[rozumiem, że dla kogoś, kto większość softu i tak ma spiracony, takie rzeczy pewnie nie grają roli ;P ale dla mnie są ważne].
Rozumiem, że dla ciebie jeśli za soft trzeba płacić, to oznacza, że każdy go piraci. A EULA jest bardzo wyraźnie widoczna tam, gdzie powinna być - przy instalacji VS-a. Trzeba ją nawet zaakceptować.

Cytuj
W końcu znalazłem stronę downloadu, jednak ku mojemu przerażeniu okazało się, że chcąc pobrać wersję instalacyjną offline należy pobrać cały obraz DVD
Umiejętność czytania FTW.

Poza tym, czy pomysł (do niedawna) ściągania Nightly Buildów (C::B) nie wydaje ci się skrajnie poroniony?

Cytuj
Tak, jest wersja instalacyjna online mająca 2MB, jednak zakładam, że nie skończy się na zassaniu przez nią dodatkowych 100 MB, a ja cenię sobie miejsce na dysku bo mam ciekawsze rzeczy do trzymania na nim ;P
To jaki ty masz dysk, 2GB? ;)

Cytuj
Mylisz się. Sprawdziłem i obraz ISO waży 894.7 MB. Dla Ciebie to mało?
Jeśli chcesz przechowywać tego Visuala na komórce to tak, to dużo. A sam VC++ waży ~50MB.

Cytuj
Bo ponieważ?
No chyba że jest "jedyne najlepsze bo tak", czyli jak zwykle w takich dyskusjach ;J [choć wolałbym nie wszczynać dyskusji nie na temat, więc jeśli już to nowy wątek albo priv...]
Mi tam wszczęcie tej dyskusji pasuje, bo ten topic to i tak zupełny offtopic ;)
Chcesz, żebym wymieniał dalej?
Tytuł: Odp: OpenGL vs DirectX
Wiadomość wysłana przez: mosowski w Maj 07, 2008, 23:53:59
Cytuj
Rzecz w tym, że programiści siedzący na Linuxach mają trochę szersze horyzonty i piszą też na inne platformy
Mam przez to rozumieć, że tylko programiści z linuksów piszą na konsole? Konsole są tymi innymi platformami i moim zdaniem jedynymi innymi platformami, na które jest sens pisać. Na konsole piszą programiści windowsów, czyl iteż mają trochę szersze horyzonty.

Game developing na Linuksie jest czynnością moim zdaniem ocierającą się delikatnie o masochizm...  choć może wynika to z moich przykrych doświadczeń ze sterownikami na Linuksie, a raczej brakiem działających jak należy... z brakiem Photoshopa, brakiem Visuala, brakiem... blender akurat jest... brakiem Directxa.... no...

Dlaczego brakuje mi tych programów? Visuala świetnie obronił Charibo... Photoshop jest po prostu lepiej dopracowany niż GIMP i nie wiedzieć czemu działa znacznie szybciej... DirectX - czy OpenGL - mi to jedno, ważne, żeby silnik, na którym mam pracować obsługiwał chociaż jeden z interfejsów. Tak prawda, programista gier, który bardzo chce zrobić drobną  grę i bardzo chce dostać za nią monety, nie będzie się zastanawiał co jest lepsze, DX czy OGL, tylko będzie się zastanawiał - na którym silniku zrobi grę szybciej? Który wymagać będzie jak najmniej zmian? Dopiero po wyborze silnika wybierze tryb, w którym silnik pracuje lepiej lub nie będzie się tym przejmował, ponieważ silnik pracuje tylko na jednym.

Jeżeli chce zrobić większą grę, to raczej będzie się zastanawiał, licencję na który silnik kupić? Czy może powołać sztab programistów, który pomoże mu zrobić nowy silnik, może nie tak dobry, ale taniej? Choć nie wiem, nie należę do grona tych, co zamierzają zrobić wielki innowacyjny hit w ciągu najbliższych 5 lat.
Tytuł: Odp: OpenGL vs DirectX
Wiadomość wysłana przez: Hadrian W. w Maj 08, 2008, 00:20:49
Co do IDE. Nie wiem czemu, ale zawsze w tej kwestii pojawia się Visual vs C::B/Dev no i na dokładkę vim dla tych linuksowych freaków. Chciałbym poinformować wszem i wobec, że na rynku znajduje się Eclipse (http://www.eclipse.org) oraz NetBeans (http://www.netbeans.org).
Tytuł: Odp: OpenGL vs DirectX
Wiadomość wysłana przez: Dab w Maj 08, 2008, 00:24:53
Eclipse jest koszmarnie wolny. Jak to Java. Chyba tylko Monodevelop jest od niego wolniejszy. :)
Tytuł: Odp: OpenGL vs DirectX
Wiadomość wysłana przez: mr666 w Maj 08, 2008, 00:32:51
Chciałbym poinformować wszem i wobec, że na rynku znajduje się Eclipse (http://www.eclipse.org) oraz NetBeans (http://www.netbeans.org).

Oraz jeszcze C++Builder i Turbo C++ :P
Tytuł: Odp: OpenGL vs DirectX
Wiadomość wysłana przez: bs.mechanik w Maj 08, 2008, 00:35:25
Oraz jeszcze C++Builder i Turbo C++ :P

No tak. To już może być jakaś alternatywa, zważywszy na to, że te ostatnie wersje nie są już tak niezgodne z ANSI/ISO

//to juz jest druga strona offtopu. Tez sugeruje wydzielenie tematu
Tytuł: Odp: OpenGL vs DirectX
Wiadomość wysłana przez: mosowski w Maj 08, 2008, 00:36:36
Cytuj
Chciałbym poinformować wszem i wobec, że na rynku znajduje się Eclipse oraz NetBeans.
Eclipse i NetBeans to kombajny stworzone raczej z myślą o Javie,  więc ciężko je porównywać z VC++... Bliższą konkurencją są właśnie C::B i np. KDevelop, choć im, jak prawie każdej aplikacji open-source, brakuje tej solidności i jednolitości wykonania, którą mają aplikacje tworzone komercyjnie. Nawet lubiany przeze mnie Blender (ze względu na naturalny (wygodnie jest "trzymać" model na środku ekranu i go sobie obracać, niczym rękoma) interfejs) prawdopodobnie okazał by się gorszy (subiektywnie), gdybym zaczął naukę nie od niego a od 3DS MAX'a lub np. Softimage i do któregoś z nich bym przywykł.

Cytuj
Oraz jeszcze C++Builder i Turbo C++
Hmm.... gdyby powstały do niego porty wielu popularnych bibliotek, to mógłby stanowić sensowną alternatywę...
Tytuł: Odp: OpenGL vs DirectX
Wiadomość wysłana przez: gamecreator w Maj 08, 2008, 00:42:20
Cytat: Charibo
Rozumiem, że dla ciebie jeśli za soft trzeba płacić, to oznacza, że każdy go piraci.
Niczego takiego nie napisałem. W szczególności nie napisałem, że "każdy". Więc przy okazji kolejne spostrzeżenie: "Logika" niektórych uczestników tego typu dyskusji [czy też flejmów ;J] wygląda tak, że jeśli coś nie jest czarne, to znaczy że musi być białe :P Jeśli ktoś oświadczy że nie używa Windows, to zaraz się zakłada, że używa Linuxa, mimo że oprócz tych dwóch jest jeszcze qpa innych. Jak bluźni przeciw Visualowi, to od razu musi być użytkownikiem Dev-C++. Dziwny jest ten świat...

Cytat: Charibo
A EULA jest bardzo wyraźnie widoczna tam, gdzie powinna być - przy instalacji VS-a. Trzeba ją nawet zaakceptować.
Owszem, i o to mi się właśnie rozchodzi: że mogę się z nią zapoznać dopiero po przewaleniu tych 800 MB przez sieć, czyli niejako "po ptokach" ;P bo jeśli by się okazało, że mi ona nie odpowiada, to jestem 800 MB i kilkanaście/dziesiąt minut w plecy.

Cytat: Charibo
Umiejętność czytania FTW.
No tak, jak ma problem ze znalezieniem downloadu, to na pewno nie umie czytać ;P Ech...
Dyskusja na takim poziome mnie nie bawi...

Cytat: Charibo
Poza tym, czy pomysł (do niedawna) ściągania Nightly Buildów (C::B) nie wydaje ci się skrajnie poroniony?
Wydaje mi się. Dlatego jakoś nigdy z tej opcji nie korzystałem. Na Windowsie używałem 1.0 RC2, a na Linuxie biorę świeże bułeczki z SVNa. Ale widzę, że dawno nie zaglądałeś na stronę Code::Blocksa ;J
http://www.codeblocks.org/downloads/5

Cytat: Charibo
To jaki ty masz dysk, 2GB? ;)
120 GB. Ale jak już mówiłem, wolę go przeznaczać na filmy, muzykę, eBooki, gry, soft, dokumentacje itp., niż na śmieci które ktoś wpakował poza kompilatorem, IDE i libami żeby dopchać płytę.
BTW co tam tyle napchali, że to tyle zajmuje? Poprzednio widziałem pełno niepotrzebnych przykładów i innych rzeczy, których nigdy nie miałem potrzeby użyć. Co dali tym razem? Bo oczywiście żadnej listy zawartości tego ich DVD nigdzie nie mogę znaleźć :P

Cytat: Charibo
A sam VC++ waży ~50MB.
W takim razie poproszę o namiary, skąd mogę go pobrać w takiej wersji "mini", bo interesuje mnie tylko kompilator i IDE. Dokumentację i tak mam online, a przykładów nie potrzebuję.

Cytat: Charibo
Mi tam wszczęcie tej dyskusji pasuje, bo ten topic to i tak zupełny offtopic ;)
Bueheh.. ;-J

Cytat: Charibo
  • Intellisense (można się czepiać, że "nie działa" ale i tak jest lepszy niż w jakimkolwiek darmowym pseudo-odpowiedniku)
Hmm.. Ostatnio jak sprawdzałem to były porównywalne. Ale chętnie zobaczę najnowszy i porównam jeszcze raz. No tylko jak widać są z tym pewne komplikacje ;J

Cytat: Charibo
  • Assist X ;)
Dodatki zewnętrznych firm też wliczamy? To ja dorzucam wxSmith - wizualne narzędzie do wyklikiwania GUI dla biblioteki wxWidgets ;)

Cytat: Charibo
  • Debugowanie szaderów z poziomu VS-a
To akurat bardzo przydatna opcja :)
A potrafi to robić tylko z DX, czy z OGL też?

Cytat: Charibo
  • Custom Build Rules - praktycznie niezbędne narzędzie - C::B coś takiego ma? ;)
  • Okienko ustawień linkera i kompilatora to są na prawdę ustawienia - nie trzeba nic wpisywać z konsoli (kolejny poroniony pomysł); a to, co się nazywa "Ustawieniami" w C::B to jest śmiech na sali (przynajmniej jak ostatnio sprawdzałem - mówię o poprzednim oficjalnym release)
Cóż.. Makefile takie rzeczy potrafią od dawna, ale jeśli chodzi o graficzne nakładki, to raczej tak, C::B daje dużo większe możliwośći ustawiania budowania, niż robił to Dev-C++. Można tworzyć wiele targetów w jednym projekcie, każdy z własnymi ustawieniami budowania [opcje kompilacji, linkowania, dodatkowe definicje, ścieżki, dodatkowe parametry przy wywoływaniu narzędzi, a nawet skrypty]. Flag kompilacji nie trzeba podawać ręcznie, przynajmniej dla obsługiwanych kompilatorów wystarczy je wybrać z listy [zaznaczyć wybrane checkboxy]. Przykład:
http://wiki.codeblocks.org/images/1/14/DbgProjBuildOpt.png
Kilka screenów okna ustawień budowania, wraz z opisem, znajdziesz tu:
http://www.codeblocks.org/docs/main_codeblocks_ench1.html#x2-50001.4
Poza tym chwalą się jeszcze tak oto:
Cytuj
Build system
Code::Blocks implements a custom build system with very important features: ultra-fast dependencies generation, build queues and parallel builds are the most important ones to mention.
Debugging
The debugging subsystem has been greatly enhanced in the latest version. Automatic/manual watches, code/data breakpoints, call stack, disassembly listing and memory dumps are only few of its features.
A co do konsoli... Nawet bez IDE nie trzeba wpisywać z konsoli, są Makefile i inne "cuda" ;J

Cytat: Charibo
  • Masa pomniejszych głupot - "wieloschowek", zaznaczanie prostokątne, outlining kodu, tool Add Class
Masz na myśli coś w tym rodzaju? http://loulou.developpez.com/tutoriels/cpp/codeblocks/images/plugin_classwizard.png

Cytat: Charibo
  • odzyskiwanie niezapisanych projektów....
Chcesz, żebym wymieniał dalej?
Pytasz a wiesz ;) Jak tylko Ci się chce... Wreszcie lecą jakieś konkrety :)
Tytuł: Odp: OpenGL vs DirectX
Wiadomość wysłana przez: bs.mechanik w Maj 08, 2008, 00:45:56
Cytuj
W takim razie poproszę o namiary, skąd mogę go pobrać w takiej wersji "mini", bo interesuje mnie tylko kompilator i IDE. Dokumentację i tak mam online, a przykładów nie potrzebuję.

http://msdn.microsoft.com/en-us/express/future/bb421473.aspx
 (http://msdn.microsoft.com/en-us/express/future/bb421473.aspx)

Wersja express. Podczas instalacji wybierasz czy chcesz dokumentacje.
Web install.
Tytuł: Odp: OpenGL vs DirectX
Wiadomość wysłana przez: skoti w Maj 08, 2008, 00:53:10
Eclipse jest koszmarnie wolny. Jak to Java. Chyba tylko Monodevelop jest od niego wolniejszy. :)
Jakoś tego nie zauważyłem - działa szybciej niż VS2008 na praktycznie identycznym sprzęcie - na tym samym nie sprawdzałem bo nie chce mi się do tego celu instalować windowsa ;p - słyszałem opinie, że eclipse na windowsie działa dużo wolniej, ale nie wiem ile w tym prawdy.

@Charibo: nie porównuj ide z czołówki z ide dopiero początkującym ;p - porównaj z eclipse czy netbeans które są wspierane przez ibm i sun - każdy z tych trzech ma zalety i wady - mimo, że uważam VS za dobry ide jest w mojej opinii na miejscu 2gim za eclipse i brakuje mu wielu jego funkcji - nowy netbeans też zapowiada się nieźle ale jeszcze nie testowałem (6.1).

@Szatan Wcielony: Sterowniki Nvidii działają jak należy, a sterowniki ati na każdym systemie są kiepskie (chodź ati otworzył specyfikację więc można za niedługo się spodziewać lepszych sterów niż na windowsie ;p), brak photoshopa dla mnie nie jest problemem bo i tak jestem zmuszony do korzystania z pluginów których niestety nie ma do photoshopa, btw. photoshop do cs2 działa na wine (a google płaci programistą wine żeby pracowała nad photoshopem żeby adobe mogło bez zmian w kodzie skompilować natywną wersję na linuxa przez wineg++ ;p), brak visuala nikogo raczej nie boli gdy jest eclipse, do grafiki 3d jest blender, maya, softimage i wiele innych, ale jeśli chcesz używać dx to jesteś zmuszony do korzystania z platformy na którą jest - to nie wina systemu ;p.
Co do silników to większość teraz stawia na wieloplatformowość i używa zarówno dx jak i opengl oraz działa na windows, linux, macos, ps3 oraz xbox360.

//edit:
Eclipse i NetBeans to kombajny stworzone raczej z myślą o Javie,  więc ciężko je porównywać z VC++...
One są stworzone z myślą o obsłudze wielu języków (eclipse od początku, a netbeans tak naprawdę został tak przedobiony od wersji 6.0).
Btw jest coś takiego jak Eclipse C++ który obsługuje tylko c++ jak tak wolisz ;p
Nawet lubiany przeze mnie Blender (ze względu na naturalny (wygodnie jest "trzymać" model na środku ekranu i go sobie obracać, niczym rękoma) interfejs) prawdopodobnie okazał by się gorszy (subiektywnie), gdybym zaczął naukę nie od niego a od 3DS MAX'a lub np. Softimage i do któregoś z nich bym przywykł.
Tak ciężko jest podzielić ekran na ile chcesz w blenderze ;p - z obiektem na środku i obracając myszką bym chyba zwariował ;p (split area + klawisze numeryczne 1,3,7 do ustawiania rzutu jest niezbędny ;p)
Tytuł: Odp: OpenGL vs DirectX
Wiadomość wysłana przez: Charibo w Maj 08, 2008, 01:19:03
Cytuj
Cytuj
A EULA jest bardzo wyraźnie widoczna tam, gdzie powinna być - przy instalacji VS-a. Trzeba ją nawet zaakceptować.
Owszem, i o to mi się właśnie rozchodzi: że mogę się z nią zapoznać dopiero po przewaleniu tych 800 MB przez sieć, czyli niejako "po ptokach" ;P bo jeśli by się okazało, że mi ona nie odpowiada, to jestem 800 MB i kilkanaście/dziesiąt minut w plecy.

Cytuj
Umiejętność czytania FTW.
No tak, jak ma problem ze znalezieniem downloadu, to na pewno nie umie czytać ;P Ech...
Dyskusja na takim poziome mnie nie bawi...
Mnie również, dlatego proszę - czytaj dokładniej moje wypowiedzi. 800 MB ma wersja DVD której nikt ci nie każe ściągać. Masz też (albo przede wszystkim) Online Installera, który IMO jest wygodnym rozwiązaniem. No a problem ze znalezieniem downloadu jest ewidentnie właśnie objawem braku tej ważnej umiejętności, gdyż guzik Download znajduje się na samym widoku. No, chyba że wolisz jak strona wygląda  tak (http://dinosaur.compilertools.net/) lub tak (http://gcc.gnu.org/)...  O gustach się nie dyskutuje...

Cytuj
Cóż.. Makefile takie rzeczy potrafią od dawna
Z makefile-ami nigdy nie miałem do czynienia. Trzeba go ręcznie pisać? Jeśli tak, to dziękuję - postoję.

Cytuj
jeśli chodzi o graficzne nakładki, to raczej tak, C::B daje dużo większe możliwośći ustawiania budowania, niż robił to Dev-C++. Można tworzyć wiele targetów w jednym projekcie, każdy z własnymi ustawieniami budowania [opcje kompilacji, linkowania, dodatkowe definicje, ścieżki, dodatkowe parametry przy wywoływaniu narzędzi, a nawet skrypty]. Flag kompilacji nie trzeba podawać ręcznie, przynajmniej dla obsługiwanych kompilatorów wystarczy je wybrać z listy [zaznaczyć wybrane checkboxy]. Przykład:
http://wiki.codeblocks.org/images/1/14/DbgProjBuildOpt.png
Kilka screenów okna ustawień budowania, wraz z opisem, znajdziesz tu:
http://www.codeblocks.org/docs/main_codeblocks_ench1.html#x2-50001.4
Poza tym chwalą się jeszcze tak oto:
Cytuj
Code::Blocks implements a custom build system with very important features: ultra-fast dependencies generation, build queues and parallel builds are the most important ones to mention.
Debugging
The debugging subsystem has been greatly enhanced in the latest version. Automatic/manual watches, code/data breakpoints, call stack, disassembly listing and memory dumps are only few of its features.
A co do konsoli... Nawet bez IDE nie trzeba wpisywać z konsoli, są Makefile i inne "cuda" ;J
Zieeeff. VS ma to wszystko od wersji 6 (czyli bodaj od 10 lat).

Cytuj
@Charibo: nie porównuj ide z czołówki z ide dopiero początkującym ;p - porównaj z eclipse czy netbeans które są wspierane przez ibm i sun - każdy z tych trzech ma zalety i wady - mimo, że uważam VS za dobry ide jest w mojej opinii na miejscu 2gim za eclipse i brakuje mu wielu jego funkcji - nowy netbeans też zapowiada się nieźle ale jeszcze nie testowałem (6.1).
Szczerze mówiąc to Javy nie mam zainstalowanej, więc narazie nie sprawdzę. :)
Tytuł: Odp: OpenGL vs DirectX
Wiadomość wysłana przez: skoti w Maj 08, 2008, 01:39:35
@Charibo: Odżałuj te 7.1mb na minimalna instalacje jre i przetestuj bo warto wiedzieć jaka jest konkurencja dla programów których używasz ;). A dzięki wtyczkom do eclipse nadaje się świetnie do programowania gier podpowiadając składnie, poprawiając, oferujące debugging i pokazując błędy takich języków jak lua (http://luaeclipse.luaforge.net/index.html, http://lunareclipse.sourceforge.net/), python(http://pydev.sourceforge.net/), cg/glsl(http://sourceforge.net/projects/glshaders)
Tytuł: Odp: OpenGL vs DirectX
Wiadomość wysłana przez: lardux w Maj 08, 2008, 14:22:27
Jako poczatkujacy gamedev chcialbym wybrac dobrą platformę (DirectX/OpenGL) teraz pewnie padnie seria postow ze DirectX jest najlepszy a OpenGL jest ble lub na odwrot, nie wazne, dla mnie liczy sie wydajnosc, o mozliwosciach juz sobie poczytalem, napisaliscie tutaj ladny referat o roznicach miedzy jednym a drugim, wady i zalety, gdyby to podsumowac to duzo wartosciowych rzeczy by wyszlo, ale co z ta wydajnoscia? czy ktos testowal wydajnosc? jesli tak to na jakim sprzecie i jakie funkcje byly powlaczane, ile poligonow? ile klatek osiagnieto? jakie rozdzielczosci? w czym sie sprawdza lepiej OpenGL a w czym DirectX? bylbym wdzieczny za te odpowiedzi bo czas sie do roboty wziasc a ja ciagle nie wiem czego sie uczyc...
Tytuł: Odp: OpenGL vs DirectX
Wiadomość wysłana przez: mosowski w Maj 08, 2008, 14:47:13
Cytuj
Jako poczatkujacy gamedev chcialbym wybrac dobrą platformę (DirectX/OpenGL) teraz pewnie padnie seria postow ze DirectX jest najlepszy a OpenGL jest ble lub na odwrot, nie wazne, dla mnie liczy sie wydajnosc, o mozliwosciach juz sobie poczytalem, napisaliscie tutaj ladny referat o roznicach miedzy jednym a drugim, wady i zalety, gdyby to podsumowac to duzo wartosciowych rzeczy by wyszlo, ale co z ta wydajnoscia? czy ktos testowal wydajnosc? jesli tak to na jakim sprzecie i jakie funkcje byly powlaczane, ile poligonow? ile klatek osiagnieto? jakie rozdzielczosci? w czym sie sprawdza lepiej OpenGL a w czym DirectX? bylbym wdzieczny za te odpowiedzi bo czas sie do roboty wziasc a ja ciagle nie wiem czego sie uczyc...
Jakichś bredni się naczytałeś. I DX i OGL mają te same możliwości. Są tak samo wydajne (szybkość działania programu zależy od pewnego podzespołu komputera - karty graficznej). Różnice są subiektywne - jedni wolą korzystać z własnych bibliotek, inni wolą obiektowość i D3DX... Ja bym radził poznać ZASADę tworzenia aplikacji i w jednym i w drugim, a następnie nauczenie sie jakiegoś gotowego silnika jeśli chcesz robić gry (podstawy tych API mogą być przydatne, ponieważ będziesz miał jako takie pojęcie o grafice. Niektóre silniki są open-source i w jakimś przypadku możesz zechcieć wprowadzić jakąś elementarną zmianę). Jeżeli pasjonują cię silniki, najlepiej było by opanować do perfekcji oba API.
Tytuł: Odp: OpenGL vs DirectX
Wiadomość wysłana przez: maxest w Maj 08, 2008, 15:34:37
Cytuj
Cytuj
Szkoda, że nie sprecyzowałeś tego "wszyscy", bo z tego co mi wiadomo, to są: ID software (nawet Carmack ma pozytywne zdanie o tym środowisku), Epic Games, EA itp itd...
Szkoda że nie sprecyzowałeś, skąd to wiesz Wink
Bodaj w styczniowym Playboy'u z roku 2005 czy tez 2006 (nie pamietam dokladnie) byl wywiad z Carmackiem, gdzie wlasnie stwierdzil mniej wiecej cos takiego: "Mozna miec do nich [Microsoftu] pretensje o brutalne praktyki marketingowe, ale tworza dobre oprogramowanie [chodzi tutaj glownie o Visual Studio .NET 2003]"
Tytuł: Odp: OpenGL vs DirectX
Wiadomość wysłana przez: skoti w Maj 08, 2008, 15:43:18
Jako poczatkujacy gamedev chcialbym wybrac dobrą platformę (DirectX/OpenGL) teraz pewnie padnie seria postow ze DirectX jest najlepszy a OpenGL jest ble lub na odwrot, nie wazne, dla mnie liczy sie wydajnosc, o mozliwosciach juz sobie poczytalem, napisaliscie tutaj ladny referat o roznicach miedzy jednym a drugim, wady i zalety, gdyby to podsumowac to duzo wartosciowych rzeczy by wyszlo, ale co z ta wydajnoscia? czy ktos testowal wydajnosc? jesli tak to na jakim sprzecie i jakie funkcje byly powlaczane, ile poligonow? ile klatek osiagnieto? jakie rozdzielczosci? w czym sie sprawdza lepiej OpenGL a w czym DirectX? bylbym wdzieczny za te odpowiedzi bo czas sie do roboty wziasc a ja ciagle nie wiem czego sie uczyc...

Wydajność jest porównywalna (różnice w praktyce są na granicy błędu statystycznego) - nie ma co porównywać bo wydajność zależy od sterowników i karty graficznej, a nie api ;).
Co do możliwości to graficzne mają te same - plusem dx jest to że to cały zestaw bibliotek, które dostajesz w zestawie - ja wolę opengl + openal + openml + open... + sdl + boost ;p - ale to kwestia gustu ;]

Bodaj w styczniowym Playboy'u z roku 2005 czy tez 2006 (nie pamietam dokladnie) byl wywiad z Carmackiem, gdzie wlasnie stwierdzil mniej wiecej cos takiego: "Mozna miec do nich [Microsoftu] pretensje o brutalne praktyki marketingowe, ale tworza dobre oprogramowanie [chodzi tutaj glownie o Visual Studio .NET 2003]"
No w roku 2005 to rok po powstaniu fundacji Eclipse i otworzeniu kodu, a dopiero wtedy projekt nabrał rozpędu ;p 3 lata to szmat czasu.
btw nigdzie nie powiedział, że woli VS tylko że jest dobrym oprogramowaniem - a temu nikt nie zaprzecza ;p
Tytuł: Odp: OpenGL vs DirectX
Wiadomość wysłana przez: lardux w Maj 08, 2008, 15:46:18
To:Szatan Wcielony no wlasnie sie nie naczytalem - wlasnie o to sie rozchodzi ze chcialbym poznac zdanie osob bardziej zaznajomionych z tematem, a na nauke obu przyjdzie czas, poki co chcialbym zdecydowac od ktorego zaczac, tak na marginesie to napisalem ze interesuje mnie porownanie wydajnosci a nie mozliwosci
Tytuł: Odp: OpenGL vs DirectX
Wiadomość wysłana przez: dzemeuksis w Maj 08, 2008, 16:23:31
tak na marginesie to napisalem ze interesuje mnie porownanie wydajnosci a nie mozliwosci

Są tak samo wydajne (szybkość działania programu zależy od pewnego podzespołu komputera - karty graficznej).
Tytuł: Odp: OpenGL vs DirectX
Wiadomość wysłana przez: pejotr w Wrzesień 07, 2008, 02:35:23
hm, a czemu więcej gier na PC powstaje w DirectX ?
Tytuł: Odp: OpenGL vs DirectX
Wiadomość wysłana przez: maxest w Wrzesień 07, 2008, 02:54:43
Na podstawie swoich doswiadczen dochodze do wniosku, ze po prostu z dx'em jest mniej problemow. W moim przypadku najczesciej karty ATI nie chcialy wspolpracowac z moimi OGL'owy aplikacjami, podczas gdy z dx'em nie bylo takich problemow. Po czesci wynika to z niezbyt fajnych sterownikow ATI, ale po czesci takze z mojej niewiedzy bo pewnie cos po prostu robie zle w swoich OGL'owych aplikacjach :). Dlatego chcac miec pewnosc, ze trafie swoimi "produktami" do jak najwiekszej liczby odbiorcow postanowilem zawsze miec dwa renderery w swoim silniczku ;)
Tytuł: Odp: OpenGL vs DirectX
Wiadomość wysłana przez: chudzielec w Wrzesień 16, 2008, 19:42:09
hm, a czemu więcej gier na PC powstaje w DirectX ?

Bo OpenGL dało pupy, kiedy jego rozwój był najbardziej potrzebny. Pisząc gry pod DirectX ułatwiasz sobie jej ewentualne przeportowanie na Xboksa ;-)
Tytuł: Odp: OpenGL vs DirectX
Wiadomość wysłana przez: Dab w Wrzesień 16, 2008, 20:09:49
A w OGL na PS-a. Ale argument. :P
Tytuł: Odp: OpenGL vs DirectX
Wiadomość wysłana przez: maxest w Wrzesień 16, 2008, 21:24:04
Cytuj
Bo OpenGL dało pupy, kiedy jego rozwój był najbardziej potrzebny
Dalo co najwyzej TERAZ. Chociaz fakt, ze wiecej gier powstawalo na DX'ie niz OGL'u w czasach gdy OGL byl "wspolczesnym" API.
Tytuł: Odp: OpenGL vs DirectX
Wiadomość wysłana przez: Avaj w Wrzesień 17, 2008, 17:39:03
może i więcej gier powstaje w directx, ale zauważcie że "giganci rynku" i tak piszą openglowe renderery, na przykład Epic Megagames, Blizzard Entertainment albo ID Software
Tytuł: Odp: OpenGL vs DirectX
Wiadomość wysłana przez: maxest w Wrzesień 17, 2008, 17:58:47
Ano pisza, bo to jest potrzebne dla PS3 ;). A na PS3 nie ma cyrkow z niekombatybilnoscia. Jest jedna wersja OGL'a (ktorys zapewne OGL ES) i jedna konfiguracja. W takim ukladzie pisanie OGL'owego renderera to sama przyjemnosc :)
Tytuł: Odp: OpenGL vs DirectX
Wiadomość wysłana przez: yarpen w Wrzesień 17, 2008, 18:03:28
Polemizowalbym :) RSX to nie jest demon predkosci, mase rzeczy trzeba w softwarze robic.
Tytuł: Odp: OpenGL vs DirectX
Wiadomość wysłana przez: skoti w Wrzesień 17, 2008, 18:11:38
@maxest: tylko te firmy pisały i przed powstaniem ps3 ;p (teraz co najwyżej inne się przekonały typu Crytek)

@yarpen: rsx szybki nie jest (wydajność ~7900GTX) jednak i tak mniej zachodu niż w przystosowywaniu gry z pc na xbox, który ma jeszcze słabszą grafikę ;p
Tytuł: Odp: OpenGL vs DirectX
Wiadomość wysłana przez: Esidar w Wrzesień 17, 2008, 19:47:22
OGL na ps3 to raczej słaby argument. Widziałem kod źródłowy do 3-4 gier na PS3 i żadna nie używała OGL tylko jechały na niższej warstwie.

może i więcej gier powstaje w directx, ale zauważcie że "giganci rynku" i tak piszą openglowe renderery, na przykład Epic Megagames, Blizzard Entertainment albo ID Software

Po czym to wnioskujesz ? Praktycznie wszystkie gry na Unreal'u się odpalają w D3D. WoW jest w D3D (OGL na Apple). A jeden z szefów ID Software powiedział że kolejne wersje silnika będą na D3D na MS i w OGL na Apple.


Co do prędkości RSX to porównywalna fillrate i shade rate z 7900 ale za to nadgania brakiem narzutu na CPU (brak DX/OGL itp). To samo Xenos (Xbox360). Więc słabo radzi sobie z dużymi wielkimi powierzchniami, ale za to lepiej mu idzie z tysiącami małych obiektów (grafika bardzo szczegółowa) :)

Cytuj
z pc na xbox, który ma jeszcze słabszą grafikę
Polemizowałbym :) xbox (tak jak zresztą i rsx) ma featuresy spotykane dopiero od DX10 (np. reset index) lub nie spotykane na PC wcale (np. vertex fetch w vertex shaderze) :)

Po za tym mówiąc o grafice w xbox i ps3 trzeba porównywać je do kart z dx10 i to tych lepszych. Te low-endowe PC nawet im do pięt nie dorastają (ile się na kląłem przy przenoszeniu grafiki z xbox na low-endowe karty ATI to już nawet nie zliczę :) ).
Tytuł: Odp: OpenGL vs DirectX
Wiadomość wysłana przez: maxest w Wrzesień 18, 2008, 00:22:18
Cytuj
Widziałem kod źródłowy do 3-4 gier na PS3 i żadna nie używała OGL tylko jechały na niższej warstwie.
Z wygody, mozliwosci czy dla wydajnosci?
Mozesz przyblizyc do czego jest ta warstwa zblizona? Jakies hardkorowe funkcje z mnostwem alokacji/dealokacji pamieci czy moze jednak cos bardziej zblizonego do np. OGL'a/DX'a? :)
Tytuł: Odp: OpenGL vs DirectX
Wiadomość wysłana przez: Esidar w Wrzesień 18, 2008, 01:08:42
Z powodu wyjadności :) Przypomina to OGL/DX, są tam te same mechanizmy, SetTexture, SetPixelShaderConst itd. Przy czym operują one bezpośrednio na buforze przeznaczonym do odczytu przez RSX (command buffer). Zamiast: Device->SetTexture() lub glBindTexture(), jest tam
*cb++ = set_texture_command;
*cb++ = texture_address;
Trzeba jedynie samemu dbać o przechowywanie tekstur w pamięci czy vertex bufforów. Shadery najczęściej się tworzy w Cg.
Tytuł: Odp: OpenGL vs DirectX
Wiadomość wysłana przez: maxest w Wrzesień 18, 2008, 14:50:50
Czyli ostatecznie to w miare zjadliwe jest :). Duzo na wydajnosci mozna zyskac? Przypuszczam, ze skoro pisze sie bezposrednio po pamieci to chyba jednak zysk jest niczego sobie...
Tytuł: Odp: OpenGL vs DirectX
Wiadomość wysłana przez: Krzysiek K. w Wrzesień 18, 2008, 14:55:41
Cytuj
Duzo na wydajnosci mozna zyskac?
Pomijasz cały driver, więc niemało, biorąc pod uwagę zwłaszcza fakt, że pozwala ci to na tworzenie command bufferów fragmentami równolegle (klasyczny OpenGL nie za bardzo współdziała z wielowątkowością). W taki bezpośrednio sposób myślę, że można oddelegować tworzenie command bufferów nawet na SPU, a więc zysk niemały. :)
Tytuł: Odp: OpenGL vs DirectX
Wiadomość wysłana przez: pejotr w Wrzesień 26, 2008, 11:46:12
do platform OpenGL można jeszcze dołączyć iPhona i telefon Google jeśli ktoś nie wie :)
Tytuł: Odp: OpenGL vs DirectX
Wiadomość wysłana przez: Asmodeusz w Październik 06, 2008, 08:36:35
do platform OpenGL można jeszcze dołączyć iPhona i telefon Google jeśli ktoś nie wie :)
Tak, tylko że na iPhone piszesz w objective-C, a na Android w Javie, więc szlag trafia przenośność kodu :P
Tytuł: Odp: OpenGL vs DirectX
Wiadomość wysłana przez: xair w Luty 06, 2009, 22:15:03
OpenGL vs DirectX..... Zdecydowanie opengl.. Dlatego, że na linuxie itp jest wspierany.. DX to tylko dwie "platformy" Win i XBox.. OpenGL jest najlepszy, moim zdaniem. DirectX daje bardzo duże możliwości ale OGL mu dorównuje. Swojego czasu udowodniła to gra DOOM3. A niedługo udowodnia to "Piraci XXI wieku" zbudowane na OpenSceneGraph... DX daje użytkownikowi np. modele w formaci *.x i wczytywanie tektur z różnymi formatami, nie przejmując się praktycznie czy to BMP i TGA lub inne formaty.. Duża wygoda.. Ale ostatecznie moim zdaniem OGL jest najlepszy (np. w Irrlicht Engine OGL dział lepieja od DX3D9).. Polecam głównie dlatego, że jest to "cross platform". DX taki nie jest, moim zdaniem jest on przechwalony
Tytuł: Odp: OpenGL vs DirectX
Wiadomość wysłana przez: Jahara w Luty 26, 2009, 20:25:38
to nie ma sensu. tak czy siak do nieczgo to nie doprowadzi. Programista sam wie czy chce odwoływać się do metod czy funkcji. Tutaj chodzi o wygodę kodowania. Multiplatformowość też nie jest argumentem bo jeżeli ktoś wydaje gry to wydaje dla windowsa. Większość graczy nie słyszała o linuxie. I tak zostanie. Dodatkowo, microsoft jakby miał upaś to upadłby przed sądem(odsyłam do histrii(przeglądarka Netspace i te klimaty)), niż przed pingwinem. Bo większość zawaodowych koderów nie lubi Linuxa bo musi szukać bibliotek do niego. Dobrze by było jakby istniał nagłówek "#include <Linux.h>". Dystrybucje linux róźnią się między sobą, co też nie wróży nic dobrego. Więc największe atuty OpenGL szlag trafił. Podsumowanie:

Wszystko zależy od kodera
Tytuł: Odp: OpenGL vs DirectX
Wiadomość wysłana przez: skoti w Luty 26, 2009, 21:05:17
to nie ma sensu. tak czy siak do nieczgo to nie doprowadzi. Programista sam wie czy chce odwoływać się do metod czy funkcji. Tutaj chodzi o wygodę kodowania. Multiplatformowość też nie jest argumentem bo jeżeli ktoś wydaje gry to wydaje dla windowsa. Większość graczy nie słyszała o linuxie. I tak zostanie. Dodatkowo, microsoft jakby miał upaś to upadłby przed sądem(odsyłam do histrii(przeglądarka Netspace i te klimaty)), niż przed pingwinem. Bo większość zawaodowych koderów nie lubi Linuxa bo musi szukać bibliotek do niego. Dobrze by było jakby istniał nagłówek "#include <Linux.h>". Dystrybucje linux róźnią się między sobą, co też nie wróży nic dobrego. Więc największe atuty OpenGL szlag trafił. Podsumowanie:

Wszystko zależy od kodera
Wieloplatformowość jest argumentem, bo nie stwarza ona dużo problemów, a można zyskać na platformach gdzie gry są towarem deficytowym i jest większa świadomość legalności. Zgadza się, że Microsoft sam z siebie nie upadnie, ale może mieć to dużo wspólnego z linuksem i wojną patentową, która wisi nad rynkiem - microsoft posiada duży arsenał patentów, ale nie taki jak firmy promujące linuksa, czyli ibm, sun, redhat (lub osoby prywatne jak patent na drm jednego z najaktywniejszych programistów jądra).
Co do nagłówka "linux.h" to przecież masz linux api, Xlib... tylko używając ich szlak trafia całą wieloplatformowość, bo musisz pisać wiele wersji aplikacji stosując ifdef dla każdej platformy - lepiej użyć wieloplatformowych bibliotek do tego celu które robią to za nas dzięki czemu piszemy raz i działa wszędzie (patrz sdl, wx, qt, gtk).
Dystrybucje linuksa różnią się od siebie (często np tapeta i ikonkami + zestawem programów na starcie ;p), ale co z tego, jak są zgodne binarnie - niestety to, że się różnią zmusza Cie do zrobienia tego co w windowsie ;p - czyli dorzucenia bibliotek bo nie wiesz czy będzie je miał w systemie końcowy użytkownik ;p (to samo co z dll w windowie).
Tytuł: Odp: OpenGL vs DirectX
Wiadomość wysłana przez: Avaj w Luty 27, 2009, 15:02:54
to nie ma sensu. tak czy siak do nieczgo to nie doprowadzi. Programista sam wie czy chce odwoływać się do metod czy funkcji. Tutaj chodzi o wygodę kodowania. Multiplatformowość też nie jest argumentem bo jeżeli ktoś wydaje gry to wydaje dla windowsa.
A Mac, Playstation 3 i Wii? To też są duże rynki gier niewindowsowe (XBoxa pomiajam bo on jest jakotako z windowsem kompatybilny np poprzez XNA)
Tytuł: Odp: OpenGL vs DirectX
Wiadomość wysłana przez: Krzysiek K. w Luty 27, 2009, 18:03:54
Cytuj
A Mac, Playstation 3 i Wii? To też są duże rynki gier niewindowsowe (XBoxa pomiajam bo on jest jakotako z windowsem kompatybilny np poprzez XNA)
W praktyce na Playstation 3 nie używa się OpenGL (zwykle silniki budują command bufory samemu, bo tak szybciej), a XBox 360 ma Direct3D i architekturę na tyle różną od PC, że proste przeniesienie PC->XBox raczej w grę nie wchodzi. XNA pomijam, bo pod tym się pisze tylko dosyć małe gierki.
Tytuł: Odp: OpenGL vs DirectX
Wiadomość wysłana przez: counterClockWise w Kwiecień 22, 2009, 19:01:09
Może ustalmy
DirectX vs OpenGL - 1:1

i EOT? ;)
Tytuł: Odp: OpenGL vs DirectX
Wiadomość wysłana przez: skoti w Kwiecień 22, 2009, 19:07:44
Może ustalmy
DirectX vs OpenGL - 1:1

i EOT? ;)
To jest Never Ending Story... btw. ostatni post w tym temacie był 2 miesiące temu to po co go podbijasz jak chcesz go zakończyć?
Tytuł: Odp: OpenGL vs DirectX
Wiadomość wysłana przez: counterClockWise w Kwiecień 22, 2009, 19:29:03
To jest Never Ending Story... btw. ostatni post w tym temacie był 2 miesiące temu to po co go podbijasz jak chcesz go zakończyć?

Bo chcę mieć post na końcu ;) Żart, nie zwróciłem uwagi, że 2 miesiące temu, bo jest przyklejony i na 1 miejscu. Można by go odkleić nawet.
Tytuł: Odp: OpenGL vs DirectX
Wiadomość wysłana przez: Kos w Kwiecień 23, 2009, 10:37:17
To by powstało 5 następnych :) A teraz prawie każdy, kto chce rozpętać flamewara na nowo, znajdzie wśród 34 stron swój argument już przez kogoś wypowiedziany i przedyskutowany, więc problem się sam rozwiązuje. :D
Tytuł: Odp: OpenGL vs DirectX
Wiadomość wysłana przez: Krzysiek K. w Kwiecień 23, 2009, 12:58:15
Cytuj
i EOT?
Ten temat się nie skończy nigdy, bo zawsze się zjawi ktoś nowy, kto będzie propagował swoje tezy odnośnie wyższości jednego nad drugim i zgodnie z regulaminem, jak musi to może to zrobić w tym watku.


Potraktujcie ten wątek jak swego rodzaju śmietnik - każdy pisze co mu lezy na sercu, ale i tak nikt tego nie czyta. ;)
Tytuł: Odp: OpenGL vs DirectX
Wiadomość wysłana przez: BartMax w Kwiecień 23, 2009, 14:07:38
to tak jak w sejmie.
Tytuł: Odp: OpenGL vs DirectX
Wiadomość wysłana przez: janu w Maj 11, 2009, 07:44:38
directx oczywiscie
Tytuł: Odp: OpenGL vs DirectX
Wiadomość wysłana przez: rm-f w Maj 11, 2009, 08:09:05
directx oczywiscie
Argumentacja zwaliła mnie z nóg.
Tytuł: Odp: OpenGL vs DirectX
Wiadomość wysłana przez: Sabre w Czerwiec 10, 2009, 15:15:45
Przed DirectX 10 opowiadałem się  za OpenGL. Teraz zdecydowanie DX10! Jest tym, czym powienien byc od dawna, m.in. dostep do probek MSAA w pixel shaderze(custom resolve? prosze bardzo :-D).
Tytuł: Odp: OpenGL vs DirectX
Wiadomość wysłana przez: Avaj w Czerwiec 15, 2009, 09:20:26
m.in. dostep do probek MSAA w pixel shaderze(custom resolve? prosze bardzo :-D).
A do czego to można zastosować, że takie ważne?
Tytuł: Odp: OpenGL vs DirectX
Wiadomość wysłana przez: Krzysiek K. w Czerwiec 15, 2009, 09:24:14
A do czego to można zastosować, że takie ważne?
Zastosowań znajdzie się sporo (chociażby do usprawnienia miękkich cieni). Poza tym, czy to ważne jakie będą zastosowania? Póki co ważne jest, że API bezpośrednio udostępnia to, co udostępnia karta graficzna. :)
Tytuł: Odp: OpenGL vs DirectX
Wiadomość wysłana przez: Charibo w Czerwiec 15, 2009, 12:22:42
m.in. dostep do probek MSAA w pixel shaderze(custom resolve? prosze bardzo :-D).
A do czego to można zastosować, że takie ważne?
Antialiasing w Deferred Shadingu. :)
Tytuł: Odp: OpenGL vs DirectX
Wiadomość wysłana przez: Dab w Czerwiec 20, 2009, 22:10:11
Przed DirectX 10 opowiadałem się  za OpenGL. Teraz zdecydowanie DX10! Jest tym, czym powienien byc od dawna, m.in. dostep do probek MSAA w pixel shaderze(custom resolve? prosze bardzo :-D).
http://www.opengl.org/registry/specs/NV/explicit_multisample.txt
Proszę bardzo. :)
Tytuł: Odp: OpenGL vs DirectX
Wiadomość wysłana przez: Krzysiek K. w Czerwiec 21, 2009, 12:59:34
http://www.opengl.org/registry/specs/NV/explicit_multisample.txt
Proszę bardzo. :)
To może jeszcze jakaś wskazówka, jak to rozszerzenie odpalić na Radeonach? ;) Nie ma to jak stary, dobry i kochany system rozszerzeń OpenGL. ;)
Tytuł: Odp: OpenGL vs DirectX
Wiadomość wysłana przez: Dab w Czerwiec 21, 2009, 13:07:24
Nie wiem, ale ATI najczęściej po jakimś czasie implementuje rozszerzenia Nvidii (np. assemblerowe shadery). Trzeba tylko uzbroić się w trochę cierpliwości (jak kiedyś przy FBO ;) ).
Tytuł: Odp: OpenGL vs DirectX
Wiadomość wysłana przez: Krzysiek K. w Czerwiec 21, 2009, 13:45:49
Nie wiem, ale ATI najczęściej po jakimś czasie implementuje rozszerzenia Nvidii (np. assemblerowe shadery). Trzeba tylko uzbroić się w trochę cierpliwości (jak kiedyś przy FBO ;) ).
AMD nie zaimplementowało żadnych shaderów NVidii, tylko ARBowe. Podobnie zaimplementowane FBO nie było NVidii, tylko EXT. Najprawdopodobniej będzie trzeba poczekać, aż jakaś komisja zrobiła z tego rozszerzenia NVidii jakiegoś ARBa, czt EXTa, a potem znowu czekać aż to się pojawi w driverach AMD. Nie zdziwiłbym się jednak, jakby do tego czasu wyszło już DX11 i OpenGL byłby nadal epokę do tyłu.
Tytuł: Odp: OpenGL vs DirectX
Wiadomość wysłana przez: Dab w Czerwiec 21, 2009, 14:26:34
A co powiesz na to? http://www.opengl.org/registry/specs/EXT/gpu_shader4.txt
Nowe shadery NVidii są już "EXT".
Tytuł: Odp: OpenGL vs DirectX
Wiadomość wysłana przez: Krzysiek K. w Czerwiec 21, 2009, 16:22:41
A co powiesz na to? http://www.opengl.org/registry/specs/EXT/gpu_shader4.txt
Nowe shadery NVidii są już "EXT".
Jak to mówią: jedna jaskółka wiosny nie czyni. ;)
Tytuł: Odp: OpenGL vs DirectX
Wiadomość wysłana przez: skoti w Czerwiec 21, 2009, 20:23:39
Podobnie zaimplementowane FBO nie było NVidii, tylko EXT.
Nie powinno to dziwić, bo nazwy rozszezen maja nazwe tworcy, jesli jest to jedyna firma obslugujaca go, jak przynajmniej dwie firmy maja implementacje staje sie ext, a arb jest to zatwierdzony ext (czyli jak ati implementuje rozszezenie NV to od razu nazywa je EXT zgodnie z "wymogami").
Tytuł: Odp: OpenGL vs DirectX
Wiadomość wysłana przez: Krzysiek K. w Czerwiec 21, 2009, 22:48:08
Cytuj
jak przynajmniej dwie firmy maja implementacje staje sie ext
Gorzej jak dwie firmy zaimplementują to samo, tyle że po swojemu. ;)

Cytuj
arb jest to zatwierdzony ext (czyli jak ati implementuje rozszezenie NV to od razu nazywa je EXT zgodnie z "wymogami")
Gorzej jak po drodze coś zmienią tak, że rozszerzenie ARB stanie się niekompatybilne z innymi rozszerzeniami - w ten sposób NVidia nie ma na przykład ARB_texture_env_crossbar i pewnie nigdy mieć nie będzie, bo nie ma możliwości implementacji tego rozszerzenia łącznie z jednym z własnych rozszerzeń NV.
Tytuł: Odp: OpenGL vs DirectX
Wiadomość wysłana przez: Avaj w Sierpień 18, 2009, 21:39:33
Przed DirectX 10 opowiadałem się  za OpenGL. Teraz zdecydowanie DX10! Jest tym, czym powienien byc od dawna, m.in. dostep do probek MSAA w pixel shaderze(custom resolve? prosze bardzo :-D).
Ciekawe jak w raptem dwa miesiące sytuacja zmienia się diametralnie :) W OpenGLu dostęp do próbek MSAA w fragment shaderze jest i na NVIDII i na AMD :)
Tytuł: Odp: OpenGL vs DirectX
Wiadomość wysłana przez: Krzysiek K. w Sierpień 19, 2009, 01:03:34
Ciekawe jak w raptem dwa miesiące sytuacja zmienia się diametralnie :)
Diametralnie? OpenGL nadal goni za Direct3D i kolejnymi featurami. Jakie featury nowe dla DX11 są już w tej chwili OpenGL? :)
Tytuł: Odp: OpenGL vs DirectX
Wiadomość wysłana przez: skoti w Sierpień 19, 2009, 01:54:57
Ciekawe jak w raptem dwa miesiące sytuacja zmienia się diametralnie :)
Diametralnie? OpenGL nadal goni za Direct3D i kolejnymi featurami. Jakie featury nowe dla DX11 są już w tej chwili OpenGL? :)
No nie diametralnie - ot Oficjalnie dogonił dx10.1 i dodał kilka rzeczy ponad... dx11 jeszcze nie ma, ale jak już wyjdzie to znowu będzie miało chwilę przewagę (zapewne nVidia od razu da stosowne rozszerzenia, ale zależy od ati kiedy będzie ext i będzie można używać) - jednak nie ma co się martwić, bo jak wszystko pójdzie zgodnie z zamierzeniami (nie chcą zwalniać z wydawaniem nowych specyfikacji, a przez rok wydali 3x (od 11 sierpnia 2008 - OpenGL 3.0 - do 5 sierpnia - 3.2)) OpenGL 3.3 wyjdzie za pół roku na GDC.
Tytuł: Odp: OpenGL vs DirectX
Wiadomość wysłana przez: Krzysiek K. w Sierpień 19, 2009, 02:01:28
Cytuj
dx11 jeszcze nie ma
Wiadomo dokładnie, co w nim będzie, więc w praktyce już jest.
Tytuł: Odp: OpenGL vs DirectX
Wiadomość wysłana przez: Zombiak w Sierpień 19, 2009, 05:04:29
Zdaje się można używać wszystkiego z d3d11, nie ma tylko d3dx nowego (jest niekompletne). Zresztą odpowiednia dll'ka w win7 rtm jest bez przyrostka beta co sugeruje, że to już wersja finalna. Karty i pewnie WARP będą na jesieni.
Tytuł: Odp: OpenGL vs DirectX
Wiadomość wysłana przez: MadBonsai w Sierpień 19, 2009, 05:51:30
Zanim developerzy nauczą się wykorzystywać nowego DX, to dorównujący mu OpenGL już się pojawi. Dla bez większej różnicy, czy "dorównujący" OGL pojawi się teraz czy za pół roku - ile jest tutaj projektów, które potrafią naprawdę potrafią wykorzystać OGL 3.1? Czy tam 3.2? Pytam z ciekawości  ;)
Tytuł: Odp: OpenGL vs DirectX
Wiadomość wysłana przez: Avaj w Sierpień 19, 2009, 10:16:04
1) Trzeba gonić DX11 bo directx ma na razie pozycję dominującą i to on decyduje co się zmienia w kartach graficznych. MSowi zachciało się Hull i Domain shadera i teraz biedni twórcy kart graficznych muszą to implementować. A OpenGL sobie spokojnie może zaczekać i zobaczyć czy opyla się pędzić za tym, czy będzie leżało odłogiem jak geometry shader

2) Z tego co widziałem na forum OpenGLa, poziom DX11 to już nie będzie OpenGL 3.3, a OpenGL 4.0, żeby łatwiej dopasować wersję OpenGLa pod karty graficzne (OpenGL 3.0+ = karty DX10, OpenGL 4.0 = karty DX11).
Tytuł: Odp: OpenGL vs DirectX
Wiadomość wysłana przez: Esidar w Sierpień 19, 2009, 12:28:02
MSowi zachciało się Hull i Domain shadera
To jest wymysł ATI. Oni mieli już coś podobnego w poprzednich kartach. Zresztą ATI ostatnio często lobbuje swoje głupie pomysły w MS (patrz: DX10.1 przed którym NVidia się długo broniła a ATI to miało zanim jeszcze DX10.1 się pojawił).
Tytuł: Odp: OpenGL vs DirectX
Wiadomość wysłana przez: Krzysiek K. w Sierpień 19, 2009, 12:38:04
Cytuj
To jest wymysł ATI. Oni mieli już coś podobnego w poprzednich kartach. Zresztą ATI ostatnio często lobbuje swoje głupie pomysły w MS (patrz: DX10.1 przed którym NVidia się długo broniła a ATI to miało zanim jeszcze DX10.1 się pojawił).
To nie jest wcale takie głupie. Do czego głównie developerzy mieli chęć wykorzystać geometry shadery? Do tesselacji. No to teraz mają do tego dedykowaną funkcjonalność. :) Pomysły ATI nie są wcale tak głupie, jak się wydają - po prostu NVidia się broniła z powodów czysto marketingowych: w porównaniach z Radeonami mają teraz w jednym z wierszy niższy numerek.
Tytuł: Odp: OpenGL vs DirectX
Wiadomość wysłana przez: Avaj w Sierpień 21, 2009, 13:46:05
Tym lepiej, ATI przejęło pałeczkę lidera w promowaniu OpenGLa więc może SM 5.0 szybko zawita w OGLu
Tytuł: Odp: OpenGL vs DirectX
Wiadomość wysłana przez: Krzysiek K. w Sierpień 21, 2009, 16:00:47
Tym lepiej, ATI przejęło pałeczkę lidera w promowaniu OpenGLa więc może SM 5.0 szybko zawita w OGLu
Słowa "ATI", "lider" oraz "OpenGL" w jednym zdaniu to raczej nowość. ;)
Tytuł: Odp: OpenGL vs DirectX
Wiadomość wysłana przez: mosowski w Sierpień 21, 2009, 16:06:13
dx11 jeszcze nie ma

Jak dla mnie to jest :P
(http://img26.imageshack.us/img26/8987/dx11dik.jpg)
Tytuł: Odp: OpenGL vs DirectX
Wiadomość wysłana przez: skoti w Sierpień 21, 2009, 16:34:27
Tym lepiej, ATI przejęło pałeczkę lidera w promowaniu OpenGLa więc może SM 5.0 szybko zawita w OGLu
Możesz to wyjaśnić, bo nic mi o tym nie wiadomo. Czyżby były wybory nowego prezesa Khronos i wybrano kogoś z Ati czy coś podobnego co skłoniło Cię do takich śmiałych wniosków? Bo z pewnością nie ilość rozszerzeń tworzonych/implementowanych przez ati lub szybka implementacja nowych wersji - Ati właśnie dodało obsługę OpenGL 3.1 kiedy jest już 3.2, a nvidia udostępniła sterowniki dla win/lin/bsd/solaris.
Czy może Ati wypuściło jakąś kolejną informację, że biorą się do roboty za sterowniki OpenGL i OpenCL (rok temu też taką wydali, ale fakt że wiele nadrobili w przypadku OpenGL... poza tym, że są dalej pół roku w tył (a rzeczy które pojawiły się w standardzie pół roku temu u konkurencji są od ~3 lat)... w przypadku OpenCL dalej nie widać sterowników, i jeszcze jakiś czas ich pewnie nie zobaczymy)?
Tytuł: Odp: OpenGL vs DirectX
Wiadomość wysłana przez: MadBonsai w Sierpień 21, 2009, 16:56:30
@DJHappyHardCode
Siódemki nie ma jeszcze rynku, więc DX11 też nie ma  :P
Tytuł: Odp: OpenGL vs DirectX
Wiadomość wysłana przez: Avaj w Sierpień 21, 2009, 17:01:52
Tym lepiej, ATI przejęło pałeczkę lidera w promowaniu OpenGLa więc może SM 5.0 szybko zawita w OGLu
Możesz to wyjaśnić, bo nic mi o tym nie wiadomo. Czyżby były wybory nowego prezesa Khronos i wybrano kogoś z Ati czy coś podobnego co skłoniło Cię do takich śmiałych wniosków? Bo z pewnością nie ilość rozszerzeń tworzonych/implementowanych przez ati lub szybka implementacja nowych wersji - Ati właśnie dodało obsługę OpenGL 3.1 kiedy jest już 3.2, a nvidia udostępniła sterowniki dla win/lin/bsd/solaris.
Czy może Ati wypuściło jakąś kolejną informację, że biorą się do roboty za sterowniki OpenGL i OpenCL (rok temu też taką wydali, ale fakt że wiele nadrobili w przypadku OpenGL... poza tym, że są dalej pół roku w tył (a rzeczy które pojawiły się w standardzie pół roku temu u konkurencji są od ~3 lat)... w przypadku OpenCL dalej nie widać sterowników, i jeszcze jakiś czas ich pewnie nie zobaczymy)?
Już wyjaśniam:

1) Zazwyczaj było tak, że NVIDIA miała rozszerzenie NV_, a ATI od niechcenia je implementowało, w ostatnim czasie to ATI wymyśla rozszerzenia a NVIDIA w miarę możliwości próbuje implementować (teselacja)

2) Sterowniki ATI są bliższe standardowi, nie idą na rękę w żadnym wypadku (przy shaderach to wyłazi) i są bardziej stabilne (najnowsze stery ogl 3.2 wywalają się przy bindowaniu VAO na niektórych konfiguracjach)

3) Na OpenGL.org ktoś pisał, że NVIDII w sumie tak śpieszno do OGL 3.2 nie było ale ATI ich popchnęło do przodu.
Tytuł: Odp: OpenGL vs DirectX
Wiadomość wysłana przez: Charibo w Sierpień 21, 2009, 17:08:05
2) Sterowniki ATI są bliższe standardowi, nie idą na rękę w żadnym wypadku (przy shaderach to wyłazi) i są bardziej stabilne (najnowsze stery ogl 3.2 wywalają się przy bindowaniu VAO na niektórych konfiguracjach)
Toć to wada. Tak samo, jak Visual Studio nie jest do końca zgodny ze standardem, bo wprowadza własne rozszrzenia które wszystkim wychodzą na dobre. A już na pewno nie nazwałbym sterów ATI "stabilnymi" :D
Tytuł: Odp: OpenGL vs DirectX
Wiadomość wysłana przez: skoti w Sierpień 21, 2009, 17:45:17
Już wyjaśniam:

1) Zazwyczaj było tak, że NVIDIA miała rozszerzenie NV_, a ATI od niechcenia je implementowało, w ostatnim czasie to ATI wymyśla rozszerzenia a NVIDIA w miarę możliwości próbuje implementować (teselacja)

2) Sterowniki ATI są bliższe standardowi, nie idą na rękę w żadnym wypadku (przy shaderach to wyłazi) i są bardziej stabilne (najnowsze stery ogl 3.2 wywalają się przy bindowaniu VAO na niektórych konfiguracjach)

3) Na OpenGL.org ktoś pisał, że NVIDII w sumie tak śpieszno do OGL 3.2 nie było ale ATI ich popchnęło do przodu.
1) Ati też ma swoje rozszerzenia od zawsze - tylko za bardzo ich nie było widać, bo zanim ktoś je poznał były już rozszerzeniami EXT, bo nVidia je implementowała - wyjątkiem jest tesselacja, którą Ati dodała w kartach radeon 8500, bardzo dawno temu (a teraz zdaje się lekko zmodyfikowała i zmieniła nazwę z ATI_ na AMD_)... nVidia implementację tesselacji w OpenGL daje na swoich stronach w shaderach geometrii, ale zapewne wraz z wydaniem nowych kart rozszerzenie AMD stanie się EXT, bo karty będą musiały obsługiwać tesselację w Dx11.

2) Sterowniki Ati pozwalają na mniejszą swobodę - sterowniki nVidii są zgodne z OpenGL, ale pozwalają na margines błędu/nieścisłości - z jednej strony to źle, z drugiej dobrze... Najnowsze stery 3.2 to pierwsza beta, ale możesz przybliżyć na jakich konfiguracjach i w jakich sytuacjach? Mi na nowych sterach (linux) nie udało się wywalić sterów przy używaniu VAO.
Steróy ati nazwać stabilnymi to odważna teza - ja bym ich tak nie nazwał (bez względu czy windows czy linux).

3) Do OpenGL 3.2 to raczej się spieszył wiceprezes Nvidii (i prezes Khronos), który obiecał 3 wersję w ciągu roku i się wywiązał (a różnice w wersjach 3.1 vs 3.2 to w większości zmiany nVidii/przy współpracy nVidii). Choć poniekąd to racja, bo gdyby ati nie zaimplementowało 3.1 to szkoda byłoby wydawać 3.2, bo OpenGL umarłoby gdyby Ati go nie obsługiwało wcale.

Zdecydowanie nie nazwałbym to przejęciem pałeczki, a mniejszym przeszkadzaniem w rozwoju ;]
Tytuł: Odp: OpenGL vs DirectX
Wiadomość wysłana przez: Esidar w Sierpień 21, 2009, 19:02:32
w ostatnim czasie to ATI wymyśla rozszerzenia a NVIDIA w miarę możliwości próbuje implementować (teselacja)
No to fakt, lepiej późno niż wcale, skoro ATI w końcu dokłada do OGL rozszerzenie do feature'a który jest w kartach ATI już od serii HD (R600) :)
NVidia się z tym nie spieszy bo nie wypuściła jeszcze karty która by obsługiwała DX11 (mają być Q4 2009).

Zresztą teraz jest okres w którym nie ma mowy o rewolucji tylko zmianach kosmetycznych, więc zmiany w ATI nie są niczym szczególnym. Natomiast jeśli potwierdzą się plotki że GT300 ma mieć zmienioną architekturę (cGPU) co za pewne będzie można wykorzystać najpierw w OGL, to wtedy dopiero będzie można mówić o rewolucji i pokaże kto tak naprawdę jest do przodu :)
Tytuł: Odp: OpenGL vs DirectX
Wiadomość wysłana przez: Krzysiek K. w Sierpień 21, 2009, 19:51:14
Cytuj
No to fakt, lepiej późno niż wcale, skoro ATI w końcu dokłada do OGL rozszerzenie do feature'a który jest w kartach ATI już od serii HD (R600) :)
O ile dobrze pamiętam, po jakimś czasie się ze wspierania tesselacji wycofali (bo i tak mało co z gier z tego korzystało).
Tytuł: Odp: OpenGL vs DirectX
Wiadomość wysłana przez: amadeusz w Sierpień 22, 2009, 09:19:57
Z tego co wiem, DirectX ma szybszy rendering. Pobrałem Google Earth i ustawiłem na tryb OpenGL, bo na DirectX wywalało (musiałem stery zainstalować) i było dużo gorzej..
Tytuł: Odp: OpenGL vs DirectX
Wiadomość wysłana przez: skoti w Sierpień 22, 2009, 12:25:24
Z tego co wiem, DirectX ma szybszy rendering. Pobrałem Google Earth i ustawiłem na tryb OpenGL, bo na DirectX wywalało (musiałem stery zainstalować) i było dużo gorzej..
Nie ma ;]... no chyba, że masz ati bo ati nie ma osobnych sterów dla Ogl tylko tłumaczy wywołania OpenGL na Dx i wtedy używa sterów Dx.
Tytuł: Odp: OpenGL vs DirectX
Wiadomość wysłana przez: BadRay w Sierpień 22, 2009, 12:27:03
Z tego co wiem, DirectX ma szybszy rendering. Pobrałem Google Earth i ustawiłem na tryb OpenGL, bo na DirectX wywalało (musiałem stery zainstalować) i było dużo gorzej..

O.o, lol. Oczywiście jak się ma sterowniki do karty graficznej które emulują OpenGl-a przez Dx-a(te z windows Update) to tak.

edit: o już mnie ktoś uprzedził odpowiedzią do kolegi ;)
Tytuł: Odp: OpenGL vs DirectX
Wiadomość wysłana przez: Krzysiek K. w Sierpień 22, 2009, 16:39:26
Z tego co wiem, DirectX ma szybszy rendering. Pobrałem Google Earth i ustawiłem na tryb OpenGL, bo na DirectX wywalało (musiałem stery zainstalować) i było dużo gorzej..
Nie ma ;]... no chyba, że masz ati bo ati nie ma osobnych sterów dla Ogl tylko tłumaczy wywołania OpenGL na Dx i wtedy używa sterów Dx.
To zależy. Direct3D jest generalnie sporo bliżej hardware niż OpenGL (zwłaszcza od DX11 w górę), więc może mieć.
Tytuł: Odp: OpenGL vs DirectX
Wiadomość wysłana przez: Esidar w Sierpień 22, 2009, 22:49:38
W Vista DX i GL są tak samo "blisko" hardware. Mają ten sam pipeline przesyłania komunikatów i tak samo przechodzą przez WDDM. W XP OGL był nawet bliżej.
Nie mniej teraz GL jest jeszcze "bliżej" dzięki NVidia Bindless Graphics, a od tego to już krok do takiego zarządzania zasobami jak w konsolach.
Tytuł: Odp: OpenGL vs DirectX
Wiadomość wysłana przez: Krzysiek K. w Sierpień 23, 2009, 00:18:14
Cytuj
W Vista DX i GL są tak samo "blisko" hardware.
Nie chodzi mi o organizację sterownika, a o polecenia API. W DirectX 10 pojawiły się widoki, constant buffery i obiekty stanów na dokładnie każdy element potoku. Hardware odpowiednio zaprojektowany pod DX 10 będzie w stanie realizować praktycznie wszystkie wywołania API 1:1 bez dodatkowej pomocy ze strony sterownika, któremu pozostanie jedynie zarządzanie pamięcią, kompilacja shaderów (bardzo uproszczona, z uwagi, że runtime DX robi tu całą czarną robotę) i tłumaczenie cyferek. Bliżej hardware na PC od czasów 3DFX GLide nie było.

Cytuj
Nie mniej teraz GL jest jeszcze "bliżej" dzięki NVidia Bindless Graphics, a od tego to już krok do takiego zarządzania zasobami jak w konsolach.
Ciekawe posunięcie - coś w stylu tego, co wprowadzono w DX10, tyle że jeszcze o krok dalej. Niemniej nie powiedziałbym, że GL jest bliżej czegokolwiek, bo jest to niestandardowe rozszerzenie i nie jest częścią OpenGL jako takiego, a raczej wątpię, żeby stało się to ARB/EXT w krótkim czasie (jeżeli w ogóle).
Tytuł: Odp: OpenGL vs DirectX
Wiadomość wysłana przez: skoti w Sierpień 23, 2009, 01:14:22
Ciekawe posunięcie - coś w stylu tego, co wprowadzono w DX10, tyle że jeszcze o krok dalej. Niemniej nie powiedziałbym, że GL jest bliżej czegokolwiek, bo jest to niestandardowe rozszerzenie i nie jest częścią OpenGL jako takiego, a raczej wątpię, żeby stało się to ARB/EXT w krótkim czasie (jeżeli w ogóle).
Jeśli Ati będzie kontynuować wzrost zainteresowania openGL i rozwój sterowników to możliwe, że za pół roku na GDC ujrzymy OpenGL 3.3 i możliwe, że znajdzie się tam Bindless Graphics
Tytuł: Odp: OpenGL vs DirectX
Wiadomość wysłana przez: Krzysiek K. w Sierpień 23, 2009, 04:28:56
Cytuj
Jeśli Ati będzie kontynuować wzrost zainteresowania openGL i rozwój sterowników to możliwe, że za pół roku na GDC ujrzymy OpenGL 3.3 i możliwe, że znajdzie się tam Bindless Graphics
To, co proponuje NVidia brzmi bardzo "hardware specific", więc jest duża szansa, że AMD w to nie pójdzie, bo nie będzie się zgadzało z ich rozwiązaniami (wbrew pozorom wystarczą nawet niewielkie różnice sprzętowe w odpowiednich miejscach). Dodatkowo przerzucanie się adresami GPU brzmi dość ryzykownie (wątpię, by NVidia sprawdzała ich poprawność przed wysłaniem - w końcu chodzi tu o to, by takie manewry wyeliminować), więc mogą być problemy z przepchnięciem tego do core OpenGL. Jeżeli nawet, to byłbym bardzo zaskoczony, gdyby w ciągu pół roku to rozszerzenie zyskało status ARB/EXT - w to, że zdąży ono do core OpenGL 3.3 znając szybkość ewolucji OpenGL nie wierzę kompletnie. Raczej bym obstawiał, że core OpenGL 3.3 jest w tym momencie już zamknięte i podlega wyłącznie polerowaniu.
Tytuł: Odp: OpenGL vs DirectX
Wiadomość wysłana przez: amadeusz w Sierpień 23, 2009, 08:32:15
Kartę mam ATi - i to dość starą. Radeon x600 i Catalysty pod siódemkę.
Tytuł: Odp: OpenGL vs DirectX
Wiadomość wysłana przez: ConayR w Styczeń 29, 2010, 20:43:39
Dla zainteresowanych: świetny FUD.
http://blog.wolfire.com/2010/01/Why-you-should-use-OpenGL-and-not-DirectX
Tytuł: Odp: OpenGL vs DirectX
Wiadomość wysłana przez: Avaj w Styczeń 29, 2010, 21:33:45
Dla zainteresowanych: świetny FUD.
http://blog.wolfire.com/2010/01/Why-you-should-use-OpenGL-and-not-DirectX
Zaczepki szukasz? Kto chciał ten widział tego posta, nawet na wykopie był. Zresztą, chętnie posłucham gdzie dokładnie jest ten FUD i jak jest on lepszy od np tego:

http://www.youtube.com/watch?v=x7aPvedU7cI (http://www.youtube.com/watch?v=x7aPvedU7cI)
(http://www.8080.net/pics/20096/69938010.jpg)
Tytuł: Odp: OpenGL vs DirectX
Wiadomość wysłana przez: Esidar w Styczeń 29, 2010, 22:03:39
Nie przekonał mnie :) Argumenty "za" nie sprawdzają się w realu. Dla przykładu "w OpenGL mamy wcześniej dostęp do najnowszych featers'ów GPU". Mało komu zależy na "szybkim" dostępie do nowych rzeczy. Bardziej ważne jest mieć dostęp do rzeczy które ma jak największa liczba użytkowników. Pisanie kodu w 8 wersjach bo "ktoś może nie mieć czegoś" jest mało przyjemne.
Tytuł: Odp: OpenGL vs DirectX
Wiadomość wysłana przez: Wladekprogramista w Styczeń 29, 2010, 22:31:55
OpenGL jest wieloplatformowy , tylko to się liczy
Tytuł: Odp: OpenGL vs DirectX
Wiadomość wysłana przez: Dab w Styczeń 29, 2010, 23:10:11
(http://www.8080.net/pics/20096/69938010.jpg)
Znaczy się w DX10 można wyświetlać murzynów a w DX11 białych? To nie tylko FUD, to już jawny rasizm :D
Tytuł: Odp: OpenGL vs DirectX
Wiadomość wysłana przez: yarpen w Styczeń 29, 2010, 23:14:40
Prosze, nie powolujcie sie na Wolfire, kolo ewidentnie nie ma pojecia o czym pisze (niezle sie osmieszyl fantazjujac na temat OGL na PS3 na przyklad).
Tytuł: Odp: OpenGL vs DirectX
Wiadomość wysłana przez: yarpen w Styczeń 29, 2010, 23:15:23
OpenGL jest wieloplatformowy , tylko to się liczy
Tresciwa wypowiedz. Hint: DirectX tez.
Tytuł: Odp: OpenGL vs DirectX
Wiadomość wysłana przez: Wladekprogramista w Styczeń 29, 2010, 23:17:11
Tresciwa wypowiedz. Hint: DirectX tez.
Masz rację.
Xbox i Vista/7
Bo XP już 11 nie wspiera na pewno
http://www.ubucentrum.net/2010/01/dlaczego-powinienes-uzywac-opengl-nie.html (http://www.ubucentrum.net/2010/01/dlaczego-powinienes-uzywac-opengl-nie.html)
Tytuł: Odp: OpenGL vs DirectX
Wiadomość wysłana przez: yarpen w Styczeń 29, 2010, 23:21:11
Bo XP już 11 nie wspiera na pewno
MS DOS tez nie, ale komu to przeszkadza? No i na drugi raz czytaj artykuly, ktore linkujesz, bo podales tlumaczenie tego nieszczesnego belkotu ze strony Wolfire.
Tytuł: Odp: OpenGL vs DirectX
Wiadomość wysłana przez: bies w Styczeń 29, 2010, 23:23:54
Bo XP już 11 nie wspiera na pewno
MS DOS tez nie, ale komu to przeszkadza?
Zaraz, zaraz. Akurat to było poprawne w Wolfire. Xp to nadal jest duży rynek.
Tytuł: Odp: OpenGL vs DirectX
Wiadomość wysłana przez: Wladekprogramista w Styczeń 29, 2010, 23:34:48
MS DOS tez nie, ale komu to przeszkadza? No i na drugi raz czytaj artykuly, ktore linkujesz, bo podales tlumaczenie tego nieszczesnego belkotu ze strony Wolfire.
A propo DOS
To DOS wspiera OpenGL , a DirectX nie.
Tu nie ma co się kłócić , OpenGL jest wieloplatformowy i już
My raczej tego nie zmienimy.

Zresztą co mi radzisz?
Nie mam windowsa , to jak mam pisać w DirectX ?
I wiele osób porzuciło ten drogi złom.
Ja na lapku wyrzuciłem Viste , bo mi muluła tak , jak bym miał 166Mhz procesor
A moja gra chodziła 4 razy wolniej , niż na XP
Jedyne co mi po Viscie zostało , to nędzna naklejka licencyjna , którą nie chce mi się zdrapać

Dodane:
Pozycja   Systemy           Odsłony
1.           Windows XP   80.10 %
2.           Windows Vista   17.27 %
3.           Windows 7           0.64 %
4.           Windows 2000   0.50 %
5.           Linux                   0.44 %
W Polsce, za sierpień 2009 (http://technologie.gazeta.pl/technologie/1,96802,6917266,Najpopularniejsze_systemy_operacyjne_w_Polsce___zestawienie.html)
Tytuł: Odp: OpenGL vs DirectX
Wiadomość wysłana przez: yarpen w Styczeń 29, 2010, 23:37:20
Bo XP już 11 nie wspiera na pewno
MS DOS tez nie, ale komu to przeszkadza?
Zaraz, zaraz. Akurat to było poprawne w Wolfire. Xp to nadal jest duży rynek.
No to jak komus zalezy na tym duzym rynku, to moze pisac pod DX9.
Ja nie mam nic przeciwko OGL. Bawia mnie tylko argumenty o 'wieloplatformowosci' OGL. W przypadku duzych gier, OGL jest na 1 z 3 istotnych platform, DX na 2 z 3, koniec tematu.
Tytuł: Odp: OpenGL vs DirectX
Wiadomość wysłana przez: Avaj w Styczeń 29, 2010, 23:38:12
Bo XP już 11 nie wspiera na pewno
MS DOS tez nie, ale komu to przeszkadza?
Zaraz, zaraz. Akurat to było poprawne w Wolfire. Xp to nadal jest duży rynek.
No to jak komus zalezy na tym duzym rynku, to moze pisac pod DX9.
Ja nie mam nic przeciwko OGL. Bawia mnie tylko argumenty o 'wieloplatformowosci' OGL. W przypadku duzych gier, OGL jest na 1 z 3 istotnych platform, DX na 2 z 3, koniec tematu.
Na "dużych grach" świat się nie kończy.
Tytuł: Odp: OpenGL vs DirectX
Wiadomość wysłana przez: Dab w Styczeń 29, 2010, 23:38:46
No to jak komus zalezy na tym duzym rynku, to moze pisac pod DX9.
Ja nie mam nic przeciwko OGL. Bawia mnie tylko argumenty o 'wieloplatformowosci' OGL. W przypadku duzych gier, OGL jest na 1 z 3 istotnych platform, DX na 2 z 3, koniec tematu.

Zaraz, zaraz, OpenGL ES to chyba jednak działa na PS3? Może nie tak wydajnie jak libcgm ale jednak jest.
Tytuł: Odp: OpenGL vs DirectX
Wiadomość wysłana przez: yarpen w Styczeń 29, 2010, 23:39:36
No to jak komus zalezy na tym duzym rynku, to moze pisac pod DX9.
Ja nie mam nic przeciwko OGL. Bawia mnie tylko argumenty o 'wieloplatformowosci' OGL. W przypadku duzych gier, OGL jest na 1 z 3 istotnych platform, DX na 2 z 3, koniec tematu.
Zaraz, zaraz, OpenGL ES to chyba jednak działa na PS3? Może nie tak wydajnie jak libcgm ale jednak jest.
Tak, jest. Nikt (powazny) go nie uzywa.
Tytuł: Odp: OpenGL vs DirectX
Wiadomość wysłana przez: Dab w Styczeń 29, 2010, 23:42:24
No dobra, to inaczej. Pewnie się ośmieszę moim fantazjowaniem, ale podejrzewam że DX na X360 jest na tyle zmodyfikowany że żeby to przenieść z/na DX9/10/11 też trzeba sporo się namachać? Więc żeby mieć możliwie wysoką jakość/wydajność trzeba napisać dla jednej gry renderer pod DX X360/DX9 dla XP/DX10 dla V/7. Sporo tego portowania jak na przenośną bibliotekę.
Tytuł: Odp: OpenGL vs DirectX
Wiadomość wysłana przez: yarpen w Styczeń 29, 2010, 23:50:02
No dobra, to inaczej. Pewnie się ośmieszę moim fantazjowaniem, ale podejrzewam że DX na X360 jest na tyle zmodyfikowany że żeby to przenieść z/na DX9/10/11 też trzeba sporo się namachać?
Zalezy, z ktorej wersji. Z DX9 to wzglednie proste, przy DX11 juz troche wiecej klepania, ale malo gier chodzi jednoczesnie na DX11 na PC i DX9 na X360 (Bad Company2 chyba tylko). API jest wlasciwie identyczne (DX9), dochodzi troche f-kcji, nie ma FFP.
Tytuł: Odp: OpenGL vs DirectX
Wiadomość wysłana przez: Dab w Styczeń 30, 2010, 00:20:35
OK, ale w czym w zasadzie napisanie wersji w OGL na (Win XP && Win V/7) + DX na XBoxa jest gorsze niż dwie różne wersje DX?
Tytuł: Odp: OpenGL vs DirectX
Wiadomość wysłana przez: yarpen w Styczeń 30, 2010, 00:28:23
OK, ale w czym w zasadzie napisanie wersji w OGL na (Win XP && Win V/7) + DX na XBoxa jest gorsze niż dwie różne wersje DX?
Jest to duzo wiecej pracy. Roznice miedzy wersjami DX sa jednak nieco mniejsze niz miedzy OGL a DX.
(funny trivia: silnik Starbreezow chodzi w OGL pod Win :))
Tytuł: Odp: OpenGL vs DirectX
Wiadomość wysłana przez: Esidar w Styczeń 30, 2010, 00:28:37
No dobra, to inaczej. Pewnie się ośmieszę moim fantazjowaniem, ale podejrzewam że DX na X360 jest na tyle zmodyfikowany że żeby to przenieść z/na DX9/10/11 też trzeba sporo się namachać?
Samo API między DX9/PC a DX/Xbox360 się praktycznie nie różni. Ma może z 10 dodatkowych renderstate'ów i kilka rzeczy dostępnych dopiero w DX10 (reset primitive i DrawVertices). Więcej różnic wynika z samego sprzętu niż z API. Np. typową zmianą jaką musimy robić przy portowaniu gier, to zabawa z Render Targetami. W X360, RT może być podczepiony jednocześnie jako RT i jako Textura. Pod DX9/PC to już nie przechodzi więc trzeba robić dodatkowy RT. Praktycznie w każdej grze musimy też używać nieoficjalnych depth buffer'ów (INTZ/RAWZ) żeby uzyskać to samo co na X360. Reszta to drobiazgi.

Nie mniej, jeśli mamy do wyboru portować na PC z PS3 lub z X360 to wybieramy X360 :)
Tytuł: Odp: OpenGL vs DirectX
Wiadomość wysłana przez: Dab w Styczeń 30, 2010, 01:10:56
Dobra tam, czyny nie słowa -- wracam do kodowania mojego silniczka pod OpenGL a portowaniem na X-a będzie się martwił Esidar ;)
Tytuł: Odp: OpenGL vs DirectX
Wiadomość wysłana przez: ConayR w Styczeń 30, 2010, 04:35:27
Dla zainteresowanych: świetny FUD.
http://blog.wolfire.com/2010/01/Why-you-should-use-OpenGL-and-not-DirectX
Zaczepki szukasz? Kto chciał ten widział tego posta, nawet na wykopie był. Zresztą, chętnie posłucham gdzie dokładnie jest ten FUD
Przepraszam, jak ja śmiałem wkleić linka związanego z tym absurdalnym tematem!

A gdzie FUD? Proszę bardzo, oto przykład. Autor pisze o programowaniu, ale podaje kampanie marketingowe pokazujące różnice między DX9 a DX10 jako argument za większym adoption rate DX względem OGL. Przeciętny czytelnik nie zaszczyci tej bzdury głębszą myślą i zaakceptuje. A implikuje to, że deweloperzy wybierają API na podstawie kampanii promocyjnych pimpujących nowy OS, kampanii dla użytkowników a nie deweloperów. Czyli wszyscy deweloperzy to skończeni kretyni i jeden jedyny David przejrzał na wylot MS i wybrał świadomie. Reszta dała się nabrać na marketing dla pospólstwa.

Do tego piętnastoletnie argumenty o MS, które robi co tylko może, żeby wszystkich zgwałcić analnie, stare jak świat anegdoty o Carmacku (i ani słowa o tym, że jest w Microsoft Graphics Advisory Board), kłamstwa o tym, że na PS3 i Wii pisze się w OGL (na PS3 większość deweloperów używa libGCM a na Wii używa się GX-lib, które może i przypomina OGL, ale OGL nie jest), zero informacji o tym jak cholernie powolny jest proces standaryzacji w OGL i jak upierdliwe są rozszerzenia vendor-specific. Świadomie czy nie - FUD.

// edyta

I żeby było jasne - za każdym API jest masa argumentów. Przeciw też. Ale ten artykuł jest żenujący.

(funny trivia: silnik Starbreezow chodzi w OGL pod Win :))
Wiesz może czy ktoś poza Starbreeze i id Software utrzymuje jeszcze kod OGL pod Windę?
Tytuł: Odp: OpenGL vs DirectX
Wiadomość wysłana przez: Avaj w Styczeń 30, 2010, 10:40:13
Dla zainteresowanych: świetny FUD.
http://blog.wolfire.com/2010/01/Why-you-should-use-OpenGL-and-not-DirectX
Zaczepki szukasz? Kto chciał ten widział tego posta, nawet na wykopie był. Zresztą, chętnie posłucham gdzie dokładnie jest ten FUD
Przepraszam, jak ja śmiałem wkleić linka związanego z tym absurdalnym tematem!

A gdzie FUD? Proszę bardzo, oto przykład. Autor pisze o programowaniu, ale podaje kampanie marketingowe pokazujące różnice między DX9 a DX10 jako argument za większym adoption rate DX względem OGL. Przeciętny czytelnik nie zaszczyci tej bzdury głębszą myślą i zaakceptuje. A implikuje to, że deweloperzy wybierają API na podstawie kampanii promocyjnych pimpujących nowy OS, kampanii dla użytkowników a nie deweloperów. Czyli wszyscy deweloperzy to skończeni kretyni i jeden jedyny David przejrzał na wylot MS i wybrał świadomie. Reszta dała się nabrać na marketing dla pospólstwa.

Do tego piętnastoletnie argumenty o MS, które robi co tylko może, żeby wszystkich zgwałcić analnie, stare jak świat anegdoty o Carmacku (i ani słowa o tym, że jest w Microsoft Graphics Advisory Board), kłamstwa o tym, że na PS3 i Wii pisze się w OGL (na PS3 większość deweloperów używa libGCM a na Wii używa się GX-lib, które może i przypomina OGL, ale OGL nie jest), zero informacji o tym jak cholernie powolny jest proces standaryzacji w OGL i jak upierdliwe są rozszerzenia vendor-specific. Świadomie czy nie - FUD.

// edyta

I żeby było jasne - za każdym API jest masa argumentów. Przeciw też. Ale ten artykuł jest żenujący.

(funny trivia: silnik Starbreezow chodzi w OGL pod Win :))
Wiesz może czy ktoś poza Starbreeze i id Software utrzymuje jeszcze kod OGL pod Windę?
Blizzard.
Tytuł: Odp: OpenGL vs DirectX
Wiadomość wysłana przez: ShadowDancer w Styczeń 30, 2010, 12:31:19
Hmm, żeby pograć w starcrafta trzeba było zainstalować DirectX
Tytuł: Odp: OpenGL vs DirectX
Wiadomość wysłana przez: Mattrick w Styczeń 30, 2010, 12:35:06
Hmm, żeby pograć w starcrafta trzeba było zainstalować DirectX
Diablo II miało tryby DirectDraw i Direct3D, więc OpenGL tutaj też odpada. :P
Tytuł: Odp: OpenGL vs DirectX
Wiadomość wysłana przez: Avaj w Styczeń 30, 2010, 12:38:07
to były gry 2D używające DirectDraw a nie Direct3D (bo o to chodzi jeśli porównujemy DirectX z Direct3D). Zarówno Warcraft 3 jak i WoW mają renderery OpenGL pod Windowsem.
Tytuł: Odp: OpenGL vs DirectX
Wiadomość wysłana przez: ConayR w Styczeń 30, 2010, 13:35:58
Poza tym gra może wymagać DX dla sterowania a nie grafiki.
Tytuł: Odp: OpenGL vs DirectX
Wiadomość wysłana przez: ShadowDancer w Styczeń 30, 2010, 13:54:02
Zarówno Warcraft 3 jak i WoW mają renderery OpenGL pod Windowsem.

Zeszli na złą drogę... :)
Mówiliśmy o DirectX, ale niech ci świeci.
Tytuł: Odp: OpenGL vs DirectX
Wiadomość wysłana przez: novo w Styczeń 30, 2010, 14:53:52
Dzieki temu ze maja renderer na OGL, WoW bardzo dobrze dziala pod wine(trzeba mu jedynie podac argument zeby uzywal renderera oglowego). A  renderer OGL robia dla OSX, majac juz taki renderer dzialajacy na OSX nie problem sprawic zeby dziala tez pod winda. Generalnie czesto piszac o wieloplatformowosci OGL wspomina sie glownie o przenosnosci miedzy win a linux, a tak naprawde duzo wazniejszy jest support dla OSX. Apple mimo ze ma tylko ok 5% rynku, to jest to bardzo wartosciowe 5%(ten odsetek caly czas wzrasta). Apple powoli zdobywa juz na tyle duzy rynek, ze sporo firm zaczyna dostrzegac ich system jako platforme docelowa, a tam masz OpenGL, nie DirectX.

Pozdr.
novo.
Tytuł: Odp: OpenGL vs DirectX
Wiadomość wysłana przez: Dab w Styczeń 30, 2010, 15:04:56
Ta, tyle że na OSX masz do wyboru albo GeForce 9400 w kompach za 5000 zł albo GeForce GT 120 w kompach za 9000 zł :)
Tytuł: Odp: OpenGL vs DirectX
Wiadomość wysłana przez: novo w Styczeń 31, 2010, 03:26:48
Ja mam gf7600, nie placze :) Nie kazda gra musi miec super grafike, czego dobrym przykladem jest WoW a z nowszych to powstajacy wlasnie Heroes of Newerth(u mnie chodzi w miare plynnie, jak mialem przez chwile 8800 chodzilo mi plynnie w full detalach).
Tytuł: Odp: OpenGL vs DirectX
Wiadomość wysłana przez: Myslivius w Marzec 09, 2010, 18:47:46
Trochę ciężko się w tym wszystkim połapać, więc zadam kilka prostych pytań(proszę założyć znajomość w stopniu bardzo zaawansowanym i odnosić się do NAJNOWSZYCH wersji):
1.Która z bibliotek jest bardziej przyszłościowa?
2.Czy jest możliwość, że któraś z nich przestanie być rozwijana lub będzie rozwijać się wolniej?
3.Czy OpenGL jest wspierany przez jakieś znane firmy, które wiadomo, że nie porzucą go?
4.Czy do GIER directx jest lepszy od opengl, czy można osiągnąć to samo? I czy w przyszłości któreś z nich powinno wysunąć się na przód?
5.Czego i w jakiej kolejności powinienem się uczyć - przy directx'ie to c++>winapi>directx, a przy opengl c++>opengl ?

Ponownie zaznaczam, że najbardziej interesują mnie przewidywania na przyszłość np. następne 10 lat. I to jak to wygląda w najnowszych wersjach obu bibliotek. A także proszę wziąć pod uwagę znajomość w stopniu zaawansowanym i profesjonalnym, a nie odpowiedź w stylu, że na moim poziomie wiedzy to bez różnicy. Po prostu chcę nauczyć się czegoś, co ma pewną przyszłość i chcę w tym pisać głównie gry, ale także pewnie jakieś programy, jeżeli OpenGL niczym nie ustępuje Directx, to zdecyduję się na niego z uwagi na to, że chodzi nie tylko pod windowsem.
Tytuł: Odp: OpenGL vs DirectX
Wiadomość wysłana przez: Dab w Marzec 09, 2010, 18:55:21
Jak chcesz myśleć 10 lat wprzód to zainteresuj się OpenCL.
Tytuł: Odp: OpenGL vs DirectX
Wiadomość wysłana przez: Drraven w Marzec 09, 2010, 19:08:48
C++ -> (jakaś biblioteka do obsługi okna i zdarzeń np. SDL) -> OpenGL.
OpenGL działa pod każdym szanującym się systemem operacyjnym.
Myślę ze bardziej przyszłościowy jest jednak DX, gdyż Działa on na Windows'ie, a windows'a mają wszyscy którzy nie zajmują się programowaniem a tylko graniem. Zresztą teraz do wszystkiego dodawany jest windows.
Jednak jestem zwolennikiem OpenGL.
Tytuł: Odp: OpenGL vs DirectX
Wiadomość wysłana przez: Myslivius w Marzec 09, 2010, 19:33:16
Teraz po zainteresowaniu się OpenCl i Direct Compute to już w ogóle nic nie rozumiem xD
Ale z tego co zrozumiałem, to OpenCl zawiera wszystko - język, api biblioteki i połączenie mocy GPU i CPU?
Direct Compute to jakaś słaba odpowiedź Microsoftu na OpenCl tak?

Kiedy ma wyjść OpenCL, bo w tej chwili nie da się go uczyć tak?

I co lepiej się uczyć, aby później przerzucić się na OpenCl?

@Drraven
Ale mi chodzi co jest bardziej przyszłościwe nie w znaczeniu rynku zbytu, tylko pod względem funkcji i czy któraś z tych bibliotek może zostać pozostawiona w tyle przez inną lub projekt zostanie całkowicie wstrzymany?
Tytuł: Odp: OpenGL vs DirectX
Wiadomość wysłana przez: dannte w Marzec 09, 2010, 20:05:05
Kiedy ma wyjść OpenCL, bo w tej chwili nie da się go uczyć tak?
Uczyć się możesz, nikt nie zabrania: http://www.khronos.org/registry/cl/specs/opencl-1.0.48.pdf
Cytuj
I co lepiej się uczyć, aby później przerzucić się na OpenCl?
Przerzucić? Hmm, jedyne co mi przychodzi do głowy to OpenMP udostępniające funkcje zrównoleglające, ale nie nazwałbym tego przerzuceniem się. Do zrozumienia takich rzeczy przydałyby się podstawy teoretyczne, typu: co to procesor wektorowy, zrównoleglanie pętli, zależności międzyiteracyjne, SIMD, prawo Amdahla :D Trochę tam się z zajęć pamięta...

Pozdro.
Tytuł: Odp: OpenGL vs DirectX
Wiadomość wysłana przez: Myslivius w Marzec 09, 2010, 20:16:36
Dobra, poddaję się xD
Czyli jeżeli znam tylko podstawy c++ i będę chciał programować gry.
To powinienem uczyć się OpenCL od razu, czy jako osoba "zielony" powinienem zacząć od OpenGL, czy Directx?
Tytuł: Odp: OpenGL vs DirectX
Wiadomość wysłana przez: Charibo w Marzec 09, 2010, 20:25:03
OpenGL/DirectX. Tak naprawdę nie ma znaczenia które wybierzesz, oba API mają wady i zalety (wymieniane na poprzednich stronach), oba API są wygodne po przyzwyczajeniu się i oba oferują zasadniczo takie same możliwości.

Co więcej, nie musisz od razu poznawać najnowszych technologii (DirectX 11), bo stają się one co raz bardziej skomplikowane. Oczywiście dzięki temu pozwalają na co raz więcej, ale do nauki podstaw najzupełniej starczy technologia sprzed trzech, czterech, czy nawet pięciu lat.
Tytuł: Odp: OpenGL vs DirectX
Wiadomość wysłana przez: Krzysiek K. w Marzec 09, 2010, 20:53:09
Cytuj
1.Która z bibliotek jest bardziej przyszłościowa?
2.Czy jest możliwość, że któraś z nich przestanie być rozwijana lub będzie rozwijać się wolniej?
3.Czy OpenGL jest wspierany przez jakieś znane firmy, które wiadomo, że nie porzucą go?
4.Czy do GIER directx jest lepszy od opengl, czy można osiągnąć to samo? I czy w przyszłości któreś z nich powinno wysunąć się na przód?
5.Czego i w jakiej kolejności powinienem się uczyć - przy directx'ie to c++>winapi>directx, a przy opengl c++>opengl ?
1. Ciężko stwierdzić.
2. Zawsze jest taka możliwość. Póki co z rozwojem większe problemy miał ostatnio OpenGL.
3. Nie zapowiada się.
4. Można osiągnąć to samo, ale popularniejszy jest DirectX. Jeżeli myślisz poważnie o pracy gamedevie, inwestuj w DirectX. Od jakiegoś czasu na przód wysunął się DirectX i w tej chwili to on dyktuje trendy rozwoju akceleratorów graficznych.
5. WinAPI się nie uczy, tylko poznaje zgodnie z potrzebą, zarówno w przypadku DiractX, jak i OpenGL.

Cytuj
Ale z tego co zrozumiałem, to OpenCl zawiera wszystko - język, api biblioteki i połączenie mocy GPU i CPU?
Nie wszystko. Jeżeli coś możesz zrobić w zwykłym Direct3D/OpenGL, to będzie działało znacznie wydajniej, niż próby robienia tego w OpenCL/Compute Shaderach.

Cytuj
Direct Compute to jakaś słaba odpowiedź Microsoftu na OpenCl tak?
Oba pojawiły się mniej więcej w tym samym czasie i mają podobne możliwości.

Cytuj
zyli jeżeli znam tylko podstawy c++ i będę chciał programować gry.
To powinienem uczyć się OpenCL od razu, czy jako osoba "zielony" powinienem zacząć od OpenGL, czy Directx?
Jeżeli chcesz robić gry, a znasz C++, to o OpenCLu na razie zapomnij. OpenCL przyda się dopiero, jak byś chciał pisać od podstaw własny silnik fizyczny pokroju Havoka, czy jakieś zwariowane AI ogrywające Kasparova w szachy do zera.

Cytuj
do nauki podstaw najzupełniej starczy technologia sprzed trzech, czterech, czy nawet pięciu lat
Dokładniej to sprzed kilkunastu co najmniej. ;)
Tytuł: Odp: OpenGL vs DirectX
Wiadomość wysłana przez: Myslivius w Marzec 09, 2010, 21:00:37
No nareszcie odpowiedź jakiej oczekiwałem.
Bardzo dziękuję, biorę się za Directx'a ;D
Tytuł: Odp: OpenGL vs DirectX
Wiadomość wysłana przez: Avaj w Marzec 09, 2010, 21:03:48
Btw:

Source Engine zostaje portowany do OpenGLa, prawdopodobnie nowe gry Valve (Portal 2?) będą też już na OpenGL. Źródło:

"The inclusion of WebKit into Steam, and of OpenGL into Source gives us a lot of flexibility in how we move these technologies forward."
http://www.valvesoftware.com/news.php
Tytuł: Odp: OpenGL vs DirectX
Wiadomość wysłana przez: Krzysiek K. w Marzec 09, 2010, 21:17:58
Cytuj
Source Engine zostaje portowany do OpenGLa, prawdopodobnie nowe gry Valve (Portal 2?) będą też już na OpenGL.
Raczej pod Windowsem zostanie Direct3D - mniej problemów ze sterownikami = mniej jęków ze strony użytkowników.
Tytuł: Odp: OpenGL vs DirectX
Wiadomość wysłana przez: Avaj w Marzec 09, 2010, 21:42:23
Cytuj
Source Engine zostaje portowany do OpenGLa, prawdopodobnie nowe gry Valve (Portal 2?) będą też już na OpenGL.
Raczej pod Windowsem zostanie Direct3D - mniej problemów ze sterownikami = mniej jęków ze strony użytkowników.
Oczywiście, ale co im szkodzi dodać OpenGL pod windą też. przy okazji problem z Linuxem się rozwiąże. Zresztą, CS 1.6 ma renderer OpenGL i nikomu to nie przeszkadza. A ważną zaletą tego faktu jest to, że wreszcie będą jakieś gry AAA na OpenGLu jako dowód, że można.
Tytuł: Odp: OpenGL vs DirectX
Wiadomość wysłana przez: ConayR w Marzec 09, 2010, 21:51:42
Oczywiście, ale co im szkodzi dodać OpenGL pod windą też. przy okazji problem z Linuxem się rozwiąże. Zresztą, CS 1.6 ma renderer OpenGL i nikomu to nie przeszkadza. A ważną zaletą tego faktu jest to, że wreszcie będą jakieś gry AAA na OpenGLu jako dowód, że można.
Source już dawno nie jest silnikiem zdolnym do pociągnięcia gier AAA. :)
Tytuł: Odp: OpenGL vs DirectX
Wiadomość wysłana przez: skoti w Marzec 09, 2010, 22:05:41
1.Która z bibliotek jest bardziej przyszłościowa?
2.Czy jest możliwość, że któraś z nich przestanie być rozwijana lub będzie rozwijać się wolniej?
3.Czy OpenGL jest wspierany przez jakieś znane firmy, które wiadomo, że nie porzucą go?
4.Czy do GIER directx jest lepszy od opengl, czy można osiągnąć to samo? I czy w przyszłości któreś z nich powinno wysunąć się na przód?
5.Czego i w jakiej kolejności powinienem się uczyć - przy directx'ie to c++>winapi>directx, a przy opengl c++>opengl ?
1. Ciężko stwierdzić - jeśli myślisz, że Windows może zmniejszyć znacznie udziały w rynku (co roku się zmniejszają ale nie znacznie) to OpenGL, jak nie to ciężko stwierdzić.
2. Jest taka możliwość, ale raczej się tak nie stanie (MS póki co ma się dobrze, a Khronos Group od powstania ma się świetnie (czyli od przekształcenia z ARB i odkąd nie ma już tam Microsoft ;p)).
3. NVidia (najwięcej robi i prezesem Khronos Group jest wiceprezes nVidii), Apple, AMD, Intel i wiele innych (Khronos Group to grupa zrzeszająca firmy z branży, która pracuje nad standardami)... NVidia jest tu pewnym punktem i jest pewne, że nie porzuci (sterowniki wydaje w dzień wydania specyfikacji... szybkich kart z np. dx10.1 nie wydała (mimo że możliwości te same mają karty od 8k w OpenGL3.2), a karty dx11 też jeszcze nie wydała)... Amd ostatnio też wydała oświadczenie lepszego wspierania otwartych standardów i faktycznie się poprawiła.
4. Oba są równie dobre - dx11 teraz "prowadzi", ale możliwe na trwającym przez kilka kolejnych dni GDC Khronos przedstawi nową wersję OpenGL doganiającą dx11 lub wyprzedzającą (jeszcze przed premierą karty dx11 od nVidii).
5. W zależności od tego co będziesz chciał zrobić ucz się tego (nie ma sensu uczyć się całego winapi, skoro potrzebujesz tylko utworzyć okienko).
Tytuł: Odp: OpenGL vs DirectX
Wiadomość wysłana przez: Myslivius w Marzec 09, 2010, 22:16:00
A co ty byś wybrał, bo znowu się zastanawiam nad OpenGL?
Tytuł: Odp: OpenGL vs DirectX
Wiadomość wysłana przez: dannte w Marzec 09, 2010, 22:34:36
To nie zastanawiaj się, tylko poznaj podstawy obu i sam zdecyduj (po rozpatrzeniu za i przeciw - koledzy pięknie streścili odpowiedzi na twoje pytania) w czym lepiej TOBIE się będzie pisać. Nie pytaj co wybrałby kto inny (tymbardziej, gdy jest to ktoś, kto zna więcej niż - nie tak jak TY napisałeś o sobie - tylko podstawy c++).
OpenGL i DirectX nie walczą o twoje uznanie - to TY powinieneś się starać i nauczyć się walczyć przy ich boku (to chyba te wino tak działa na mnie poetycznie :P)

Pozdro.
Tytuł: Odp: OpenGL vs DirectX
Wiadomość wysłana przez: skoti w Marzec 09, 2010, 22:46:16
A co ty byś wybrał, bo znowu się zastanawiam nad OpenGL?
Ja poznałem podstawy Dx i wybrałem OpenGL (który działa świetnie pod systemem pod którym piszę czyli Linux (i kompiluje na Windowsa crosskompilatorem)). Krzysiek K. pisał przez lata w OpenGL i go wolał, ale po zastoju w OpenGL przeszedł na DX i też jest zadowolony (zaraz po tym w OpenGL się znowu ruszyło i nowe wersje pojawiają się co pół roku ;p).
Po prostu poznaj i się dowiedz - każdy z tych wyborów jest dobry, ale zarazem każdy ma wady, więc kwestia co wybrać, należy tylko do Ciebie i co Ci przypasuje... nikt Ci nie powie co będzie dla Ciebie lepsze i co będzie lepsze za rok dla osoby radzącej.
Tytuł: Odp: OpenGL vs DirectX
Wiadomość wysłana przez: Avaj w Marzec 09, 2010, 22:49:46
Oczywiście, ale co im szkodzi dodać OpenGL pod windą też. przy okazji problem z Linuxem się rozwiąże. Zresztą, CS 1.6 ma renderer OpenGL i nikomu to nie przeszkadza. A ważną zaletą tego faktu jest to, że wreszcie będą jakieś gry AAA na OpenGLu jako dowód, że można.
Source już dawno nie jest silnikiem zdolnym do pociągnięcia gier AAA. :)
masz jakąś oficjalną definicję gier AAA?
Tytuł: Odp: OpenGL vs DirectX
Wiadomość wysłana przez: Myslivius w Marzec 09, 2010, 22:53:35
Skoro obojętne od czego zacznę, to zaczynam od OpenGL'a, bo w tym pisany jest silnik świetnej gry którą ostatnio na gamedevie znalazłem: http://www.warsztat.gd/projects.php?x=view&id=467 .

EDIT:
Polecicie coś jeszcze oprócz tego kursu : http://aklimx.sppieniezno.pl/nehepl/display.php ?
Tytuł: Odp: OpenGL vs DirectX
Wiadomość wysłana przez: Esidar w Marzec 10, 2010, 01:43:12
Nieco spóźnione, ale: dla osoby która już się zna na obydwu API, to faktycznie wszystko jedno :) ale skoro jesteś początkujący to zacznij od DX. Dostaniesz automatycznie D3DX czyli biblioteki do wczytywania tekstur (a nawet całych obiektów 3D) i operacji matematycznych na vectorach i macierzach. Nauczysz się też dobrych nawyków dotyczących organizacji danych w silniku gdyż DX jest obiektowy i ma z góry narzucone rozwiązania.
Gdy już się nauczysz, to przejście na OGL (jeśli będziesz potrzebował) zajmie ci bardzo nie wiele czasu.
Tytuł: Odp: OpenGL vs DirectX
Wiadomość wysłana przez: gunstar w Marzec 10, 2010, 03:23:36
Mam takie same zdanie co Esidar. Niestety na dzien dzisiejszy nie moglbym zadnemu poczatkujacemu polecic OGLa (a chcialbym, multiplatformowosc = win). Straszny tam poprostu burdel. :) W DX masz wszystko co potrzebujesz na start. Najlepiej chyba zaczac od wersji 9Ex, 10 lub 11 aby uniknac zabaw z 'utrata urzadzenia'.
Tytuł: Odp: OpenGL vs DirectX
Wiadomość wysłana przez: skoti w Marzec 10, 2010, 08:54:06
Nieco spóźnione, ale: dla osoby która już się zna na obydwu API, to faktycznie wszystko jedno :) ale skoro jesteś początkujący to zacznij od DX. Dostaniesz automatycznie D3DX czyli biblioteki do wczytywania tekstur (a nawet całych obiektów 3D) i operacji matematycznych na vectorach i macierzach. Nauczysz się też dobrych nawyków dotyczących organizacji danych w silniku gdyż DX jest obiektowy i ma z góry narzucone rozwiązania.
Gdy już się nauczysz, to przejście na OGL (jeśli będziesz potrzebował) zajmie ci bardzo nie wiele czasu.
IMO te biblioteki Dx są zaletą, ale nie taką która miała by przeważyć ponieważ może użyć jakiś gotowych bibliotek z OpenGL (DevIL/freeimage do tekstur, CML/GLM do macierzy, wektorów, kwaternionów i ogólnie całej matmy). Myślę, że programować obiektowo potrafi, oraz jak trzymać dane więc oba IMO są tak samo dobrym wyborem.

Mam takie same zdanie co Esidar. Niestety na dzien dzisiejszy nie moglbym zadnemu poczatkujacemu polecic OGLa (a chcialbym, multiplatformowosc = win). Straszny tam poprostu burdel. :) W DX masz wszystko co potrzebujesz na start. Najlepiej chyba zaczac od wersji 9Ex, 10 lub 11 aby uniknac zabaw z 'utrata urzadzenia'.
Możesz uściślić bo ja go nie widzę.
Tytuł: Odp: OpenGL vs DirectX
Wiadomość wysłana przez: rm-f w Marzec 10, 2010, 09:51:23
Mam takie same zdanie co Esidar. Niestety na dzien dzisiejszy nie moglbym zadnemu poczatkujacemu polecic OGLa (a chcialbym, multiplatformowosc = win). Straszny tam poprostu burdel. :)
Od 3.2 nigdzie nie widać go ;(
Tytuł: Odp: OpenGL vs DirectX
Wiadomość wysłana przez: Myslivius w Marzec 10, 2010, 11:01:00
Jednak rzeczywiście chyba zacznę od Directx'a, bo 404 linijki kodu do stworzenia okienka w kursie nehe mnie trochę hmm... zdezorientowały. A gdybym później miał uczyć się z kursu NEHE, to ja mam "wkuwać" ten kod z pierwszej lekcji  :o, czy tylko zrozumieć i przejść do następnych lekcji i korzystać z tego szablonu, a później dopiero ten kod stanie się bardziej istotny?

PS Czemu w innych kursach OpenGL z tego co patrzyłem, to kod był zdecydowanie krótszy?
Tytuł: Odp: OpenGL vs DirectX
Wiadomość wysłana przez: Dab w Marzec 10, 2010, 11:45:47
Olej WinAPI. Na tym etapie nie jest ci do niczego potrzebne. Weź SDL, tam całe tworzenie okna masz w 3 linijkach.
Tytuł: Odp: OpenGL vs DirectX
Wiadomość wysłana przez: Frondeus w Marzec 10, 2010, 11:46:22
Bo nehe chyba używa WinApi. A inne mogą używać SDL.
Up: nie zdąrzyłem ;)
Tytuł: Odp: OpenGL vs DirectX
Wiadomość wysłana przez: Myslivius w Marzec 10, 2010, 14:05:38
Czyli mogę używać okienka z innych kursów, ale czy w takim wypadku będę mógł z powodzeniem używać kodu z kolejnych lekcji tego kursu? Bo to podobno najlepszy kurs w sieci i nie wiem z czego jeszcze mógłbym uczyć się opengl?
Tytuł: Odp: OpenGL vs DirectX
Wiadomość wysłana przez: Kos w Marzec 10, 2010, 14:27:19
Nehe najlepszy w sieci? Jesli masz na mysli jego wartosc historyczna, to tak, bez watpienia :)
Tytuł: Odp: OpenGL vs DirectX
Wiadomość wysłana przez: dannte w Marzec 10, 2010, 15:18:18
Czyli mogę używać okienka z innych kursów, ale czy w takim wypadku będę mógł z powodzeniem używać kodu z kolejnych lekcji tego kursu?

Na końcu każdej lekcji masz kody na różne platformy/języki/środowiska. Znajdujesz taką, która jest najbardziej zbliżona (dajmy na to Linux/SDL).

Pozdro.
Tytuł: Odp: OpenGL vs DirectX
Wiadomość wysłana przez: rm-f w Marzec 10, 2010, 15:34:13
primo nehe jest stare
Secundo stworzenie okna to 4 linijki w glfw
po ostatnie 400linijek to nic
Tytuł: Odp: OpenGL vs DirectX
Wiadomość wysłana przez: Myslivius w Marzec 10, 2010, 15:53:17
 ???
Dobra to inaczej.

Chcę się nauczyć programować grafike 3D.
Polećcie mi jak najlepszą książkę, opisującą najnowsze wersje tych bibliotek, obojętne do czego, czy to directx, czy opengl, ale tak abym po przerobieniu tych materiałów znał nowoczesne techniki programowania 3d.

Podajcie książki/tutki do nauki, które pomogą mi od osoby początkującej nauczyć się dobrze programować gry 3d wykorzystując nowe techniki i biblioteki, żebym nie uczył się przestarzałych rzeczy.
Najlepiej prosiłbym o podanie jakie książki i kursy powinienem przeczytać i w jakiej kolejności powinienem przeczytać.\
Prosiłbym o połączenie tego z jakimiś książkami do c++ i książkami mówiącymi o technikach programowania gier 3d w tym języku.

EDIT:
Do tego jakieś książki o matematyce, fizyce i te macierze, bo ja tego w szkole jeszcze nie mam. Jak co to jestem w I klasie LO.

Może też być coś o elektronice, jak działą procesor, tranzystory, ja w ogóle zapisywane są dane itp. wraz z fizycznym i chemicznym wyjaśnieniem.

Po prostu po kolei co powinienem wiedzieć w tych dziedzinach.
Tytuł: Odp: OpenGL vs DirectX
Wiadomość wysłana przez: Dab w Marzec 10, 2010, 16:09:51
http://wiki.warsztat.gd/Z_czego_si%C4%99_uczy%C4%87
Tytuł: Odp: OpenGL vs DirectX
Wiadomość wysłana przez: skoti w Marzec 10, 2010, 16:10:13
???
Dobra to inaczej.

Chcę się nauczyć programować grafike 3D.
Polećcie mi jak najlepszą książkę, opisującą najnowsze wersje tych bibliotek, obojętne do czego, czy to directx, czy opengl, ale tak abym po przerobieniu tych materiałów znał nowoczesne techniki programowania 3d.

Podajcie książki/tutki do nauki, które pomogą mi od osoby początkującej nauczyć się dobrze programować gry 3d wykorzystując nowe techniki i biblioteki, żebym nie uczył się przestarzałych rzeczy.
Najlepiej prosiłbym o podanie jakie książki i kursy powinienem przeczytać i w jakiej kolejności powinienem przeczytać.\
Prosiłbym o połączenie tego z jakimiś książkami do c++ i książkami mówiącymi o technikach programowania gier 3d w tym języku.
Do nowych wersji bibliotek nie ma żadnej dobrej książki. Do nowych wersji nauki polecam dokumentację. Do starszych wersji możesz szukać książek, lub w sieci, ale nie wiem czy jest sens uczyć się teraz starszych wersji, bo będzie to nauka bez sensowna (zanim będziesz gotowy użyć wiedzę w jakimś projekcie te stare wersje będą już archaiczne).
Tytuł: Odp: OpenGL vs DirectX
Wiadomość wysłana przez: Myslivius w Marzec 10, 2010, 16:37:42
Ale z dokumentacji nie dowiem się jak coś programować (jakieś techniki itp.), tylko co najwyżej poznam funkcje odpowiedzialne za jakieś rzeczy, więc skąd wziąść te podstawy?
Tytuł: Odp: OpenGL vs DirectX
Wiadomość wysłana przez: Kos w Marzec 10, 2010, 16:44:26
http://januszg.hg.pl/
Tytuł: Odp: OpenGL vs DirectX
Wiadomość wysłana przez: skoti w Marzec 10, 2010, 16:54:32
Ale z dokumentacji nie dowiem się jak coś programować (jakieś techniki itp.), tylko co najwyżej poznam funkcje odpowiedzialne za jakieś rzeczy, więc skąd wziąść te podstawy?
To temat na wiele książek (często nie związanych nawet z programowaniem gier czy dx/ogl) - co więcej każdy uważa, że powinno się pisać inaczej ;p. Co do samych technik programowania grafiki to np. papierki nVidii (w tym książki dostępne za darmo na ich stronach czyli Cg Tutorial i seria GPU Gems (3 książki)), amd, siggraph czy nawet osób prywatnych i ze stron uniwersytetów (lub nawet firm takich jak Disney Pixar)... materiałów jest sporo i jak będziesz coś chciał zrobić to Google naprowadzi Cię na to co chcesz (nie ma żadnego centralnego miejsca ze wszystkim).
Tytuł: Odp: OpenGL vs DirectX
Wiadomość wysłana przez: Netrix w Marzec 10, 2010, 17:40:49
Możesz uściślić bo ja go nie widzę.

Ja myślę, że to może być właśnie to:
IMO te biblioteki Dx są zaletą, ale nie taką która miała by przeważyć ponieważ może użyć jakiś gotowych bibliotek z OpenGL (DevIL/freeimage do tekstur, CML/GLM do macierzy, wektorów, kwaternionów i ogólnie całej matmy). Myślę, że programować obiektowo potrafi, oraz jak trzymać dane więc oba IMO są tak samo dobrym wyborem.

Tytuł: Odp: OpenGL vs DirectX
Wiadomość wysłana przez: Esidar w Marzec 10, 2010, 18:41:00
IMO te biblioteki Dx są zaletą, ale nie taką która miała by przeważyć
Gdy zainstalujesz DX SDK masz dokumentację i większość potrzebnych bibliotek w jednym miejscu. Ja wiem że "wygoda" to pojęcie względne (szczgólnie dla linuxowca :) ) ale jeśli po wciśnięciu jednego "Instaluj DX SDK" masz tyle co po wciśnięciu 15x ściągnij + 10x instaluj + 5x skonfiguruj i zanalizuj 10x różnych API i złóż to wszystko do kupy, to chyba nie ma co porównywać ? :) Nie twierdzę że nie uzyskasz tego samego efektu tylko że początkujący łatwiej go osiągnie.

I równie ważna jest też w przypadku nauki, organizacja kodu którą narzuca DX. Nie uczy złych nawyków (takich jak np. korzystanie z glBegin) i lepiej wyjaśnia działanie karty graficznej (jedna metoda SetRenderState zamiast 40 funkcji z czego połowa jest w ARB/EXT/NV/ATI", jak również jedno VertexDeclaration zamiast kolejnego zestawu funkcji). (czuje że tutaj dolałem oliwy do ognia). Kiedy ostatnio przesiadłem się na OGL to pierwsze co zrobiłem to owrapowałem tworzenie VB i pogrupowałem state'y bo w praktyce jest to najwygodniejsze w użyciu.
Tytuł: Odp: OpenGL vs DirectX
Wiadomość wysłana przez: spax w Marzec 10, 2010, 18:54:07
IMO te biblioteki Dx są zaletą, ale nie taką która miała by przeważyć
Gdy zainstalujesz DX SDK masz dokumentację i większość potrzebnych bibliotek w jednym miejscu.

Słysze ten śmieszny argument od 7 lat. O jakich bibliotekach piszesz? DirectPlay? DirectInput? DirectDraw? Music, Sound, Show, Setup... ? Tych bibliotek już nie ma (nie wspierane), teraz pisząc DirectX ma się zwykle na myśli tylko grafike 3D.

PS. Nie opowiadam się po żadnej ze stron (używam tego i tego ;p)
Tytuł: Odp: OpenGL vs DirectX
Wiadomość wysłana przez: Dab w Marzec 10, 2010, 19:01:50
Immediate mode (glBegin) jest w wersji 3.x wycofane.
Co do SetRenderState to się zgodzę, sam w swojej "nakładce" na OGL mam dokładnie taką funkcję ;)
Natomiast Vertex Declaration to już kwestia gustu czy nawyków, dla mnie mechanizm DX-owy wydaje się dziwny w porównaniu do strumieni OGL.
Tytuł: Odp: OpenGL vs DirectX
Wiadomość wysłana przez: skoti w Marzec 10, 2010, 19:44:36
Gdy zainstalujesz DX SDK masz dokumentację i większość potrzebnych bibliotek w jednym miejscu. Ja wiem że "wygoda" to pojęcie względne (szczgólnie dla linuxowca :) ) ale jeśli po wciśnięciu jednego "Instaluj DX SDK" masz tyle co po wciśnięciu 15x ściągnij + 10x instaluj + 5x skonfiguruj i zanalizuj 10x różnych API i złóż to wszystko do kupy, to chyba nie ma co porównywać ? :) Nie twierdzę że nie uzyskasz tego samego efektu tylko że początkujący łatwiej go osiągnie.
Sciągniesz kilka PDF i też masz dokumentację w jednym miejscu. Dx w tej chwili to tylko grafika 3d (+ dodatki do niej jak właśnie matma czy tekstury), ale jak chcesz np. dźwięk i skorzystać ze sprzętowych dobrodziejstw musisz użyć OpenAL (ze składnią opartą na OpenGL), bo Dx sound nie nadaje się już do tego... z tymi innymi bibliotekami jest przeważnie jeszcze gorzej, więc ściągasz kolosalne SDK i masz tylko bibliotekę do obsługi grafiki, ewentualnie do obsługi wejścia, a do innych rzeczy i tak ściągasz n bibliotek, którym przeważnie dużo bliżej do OpenGL niż Dx. Ale tak jak mówisz wygoda to rzecz względna (kilka mb pdfów do kilku bibliotek, czy pół giga w większości rzeczy bezużytecznych i kilka mega pdfów dodatkowych bibliotek których i tak potrzebujesz ;p).

I równie ważna jest też w przypadku nauki, organizacja kodu którą narzuca DX. Nie uczy złych nawyków (takich jak np. korzystanie z glBegin) i lepiej wyjaśnia działanie karty graficznej (jedna metoda SetRenderState zamiast 40 funkcji z czego połowa jest w ARB/EXT/NV/ATI", jak również jedno VertexDeclaration zamiast kolejnego zestawu funkcji). (czuje że tutaj dolałem oliwy do ognia). Kiedy ostatnio przesiadłem się na OGL to pierwsze co zrobiłem to owrapowałem tworzenie VB i pogrupowałem state'y bo w praktyce jest to najwygodniejsze w użyciu.
W OpenGL 3.2 praktycznie jesteś zmuszony do korzystania z VBO... tak samo nie musisz się martwić o rozszerzenia w ARB/EXT/NV/ATI, bo w 3.2 wszystko jest w Core. Co do reszty to odpowiedział Dab.


Możesz uściślić bo ja go nie widzę.
Ja myślę, że to może być właśnie to:
IMO te biblioteki Dx są zaletą, ale nie taką która miała by przeważyć ponieważ może użyć jakiś gotowych bibliotek z OpenGL (DevIL/freeimage do tekstur, CML/GLM do macierzy, wektorów, kwaternionów i ogólnie całej matmy). Myślę, że programować obiektowo potrafi, oraz jak trzymać dane więc oba IMO są tak samo dobrym wyborem.
no nie wiem czy to jest coś co można nazwać burdelem - Biblioteki takie jak DevIL (dawniej OpenIL),  czy GLM mają składnię opartą na OpenGL (DevIL przedrostki ma il zamiast gl, a GLM używa składni języka shaderów GLSL - tu nawet gorzej jest w Dx, bo tam inaczej wygląda to w HLSL niż w C++).
Tytuł: Odp: OpenGL vs DirectX
Wiadomość wysłana przez: Asmodeusz w Marzec 10, 2010, 21:55:34
IMO te biblioteki Dx są zaletą, ale nie taką która miała by przeważyć
Gdy zainstalujesz DX SDK masz dokumentację i większość potrzebnych bibliotek w jednym miejscu.

Słysze ten śmieszny argument od 7 lat. O jakich bibliotekach piszesz? DirectPlay? DirectInput? DirectDraw? Music, Sound, Show, Setup... ? Tych bibliotek już nie ma (nie wspierane), teraz pisząc DirectX ma się zwykle na myśli tylko grafike 3D.

PS. Nie opowiadam się po żadnej ze stron (używam tego i tego ;p)
D3DX, DXGI, XInput, XAudio - to wszystko jest aktualne i rozwijane. Choć fakt, MS ostatnio wydzielił dokumentację D3D, D3DX i DXGI w osobnego CHMa (tylko dla Windows), reszta została gdzie była (dokumentacja wspólna Windows/X360).
Tytuł: Odp: OpenGL vs DirectX
Wiadomość wysłana przez: Nazar w Marzec 10, 2010, 22:08:09
3. NVidia (najwięcej robi i prezesem Khronos Group jest wiceprezes nVidii), Apple, AMD, Intel i wiele innych (Khronos Group to grupa zrzeszająca firmy z branży, która pracuje nad standardami)... NVidia jest tu pewnym punktem i jest pewne, że nie porzuci (sterowniki wydaje w dzień wydania specyfikacji... szybkich kart z np. dx10.1 nie wydała (mimo że możliwości te same mają karty od 8k w OpenGL3.2), a karty dx11 też jeszcze nie wydała)... Amd ostatnio też wydała oświadczenie lepszego wspierania otwartych standardów i faktycznie się poprawiła.
4. Oba są równie dobre - dx11 teraz "prowadzi", ale możliwe na trwającym przez kilka kolejnych dni GDC Khronos przedstawi nową wersję OpenGL doganiającą dx11 lub wyprzedzającą (jeszcze przed premierą karty dx11 od nVidii).
Raczej nie ma zbyt dużych szans na nową wersję OpenGL w ciągu ~ 2 tygodni. 26-ego marca będzie premiera GTX470 i 480 od NV, czyli DX11 :)
Tytuł: Odp: OpenGL vs DirectX
Wiadomość wysłana przez: Esidar w Marzec 10, 2010, 22:17:06
bo Dx sound nie nadaje się już do tego...
Do dźwięku teraz się powinno używać XAudio (to tak na marginesie). Dostęp do sprzętu audio jest akurat słaby bo jego możliwości się zatrzymały na poziomie DOS'a. Do dzisiejszego dnia karty dźwiękowe (oraz API) nie doczekały się programowalnego pipeline jak jest to w przypadku GPU. Dodatkowo audio nie ma żadnego standardu sprzętowego (jak np. SM3.0, 16 tekstur, kompresja DDS, itd itp) więc nie masz szans użyć jakiegoś efektu (chociażby najbardziej podstawowego czyli LowPass) bo u każdego będzie brzmiał zupełnie inaczej. To tak jakby "tolerować" że u jednego woda jest niebieska a u kogoś zielona "bo jego karta tak ma".

Argument że "musisz użyć OpenAL" jest mało przekonujący :) Bo a) nie musisz b) częściej, nie chcesz. Jeżeli chcesz coś uzyskać więcej niż sprzętowe odtwarzanie PCM i to tak żeby u wszystkich działało podobnie, to "musisz" jechać w sofcie. Równie dobrze mógłbyś pisać gry na fixed, bez shader'ów "bo niektórzy nie mają" i też zatrzymać się w czasach DOSa. No ale nie o audio tu :)

z tymi innymi bibliotekami jest przeważnie jeszcze gorzej
Fajny argument :) Ani go potwierdzić, ani obalić. Moja odpowiedź "a w OGL to już zupełna porażka". Discuss.

więc ściągasz kolosalne SDK i masz tylko bibliotekę do obsługi grafiki, ewentualnie do obsługi wejścia,
Jest tego "trochę więcej": do matematyki (macierze, quaterniony, vectory), do wczytywania tekstur (DDS,JPG,PNG), do wczytywania/kompilacji shader'ów, do wczytywania dźwięków (PCM,ADPCM,xWMA).

Przecież to nie jest rocket science. Ale chętnie powtórzę : dla osoby początkującej, która ma wszystko co potrzebuje do zrobienia gry, po kliknięciu w jeden link, DX jest najprostszy w obsłudze. Zamknięte API i narzucone rozwiązania, będą też dobrą lekcją.

a do innych rzeczy i tak ściągasz n bibliotek
Tak. To prawda. Ściągam masę bibliotek. Sam dużo różnego kodu dopisuję. Ale ja się na tym znam :) Sam piszę już mniej więcej od 2 lat w OGL. DX'a ruszam tylko w firmie. Ale to że sam używam OGL, to jest ŻADEN argument i KAŻDEMU początkującemu będę polecał DX'a.

PS. Dziesiątki bibliotek w sieci które trzeba a) wiedzieć gdzie są b) wiedzieć po co są c) wybrać wersję d) umieć podłączyć... się nijak przekłada na wielkość pliku SDK z DXem, który ma WSZYSTKO co jest potrzebne do zrobienia gry przez początkującego.

Tytuł: Odp: OpenGL vs DirectX
Wiadomość wysłana przez: Vipa w Marzec 10, 2010, 22:22:50
OGL ma brzydsze logo. Padł już ten argument? Bo nie pamiętam...
Tytuł: Odp: OpenGL vs DirectX
Wiadomość wysłana przez: skoti w Marzec 10, 2010, 22:59:21
Do dźwięku teraz się powinno używać XAudio (to tak na marginesie). Dostęp do sprzętu audio jest akurat słaby bo jego możliwości się zatrzymały na poziomie DOS'a. Do dzisiejszego dnia karty dźwiękowe (oraz API) nie doczekały się programowalnego pipeline jak jest to w przypadku GPU. Dodatkowo audio nie ma żadnego standardu sprzętowego (jak np. SM3.0, 16 tekstur, kompresja DDS, itd itp) więc nie masz szans użyć jakiegoś efektu (chociażby najbardziej podstawowego czyli LowPass) bo u każdego będzie brzmiał zupełnie inaczej. To tak jakby "tolerować" że u jednego woda jest niebieska a u kogoś zielona "bo jego karta tak ma".

Argument że "musisz użyć OpenAL" jest mało przekonujący :) Bo a) nie musisz b) częściej, nie chcesz. Jeżeli chcesz coś uzyskać więcej niż sprzętowe odtwarzanie PCM i to tak żeby u wszystkich działało podobnie, to "musisz" jechać w sofcie. Równie dobrze mógłbyś pisać gry na fixed, bez shader'ów "bo niektórzy nie mają" i też zatrzymać się w czasach DOSa. No ale nie o audio tu :)
Tak, ale XAudio nie wiele zmienia - nie obsługuje sprzętowego DSP czy EAX (lub innych standardów). Co do standardów grafiki to tu jest tak samo - na jednej karcie AA działa zupełnie inaczej niż na drugiej, tekstury wyglądają inaczej (inaczej działa filtr anizotropowy...).

a) nie musisz (możesz przecież użyć nawet dźwięku stereo, z jakiejkolwiek biblioteki ;p), ale przeważnie chcesz (i gry AAA też chcą ;p) - i musisz w sytuacji o której napisałem.
b) częściej chcesz, bo chcesz wyciągnąć max ze sprzętu, a nie ograniczać się do tego co potrafią najsłabsze karty (jak karta ma EAX to chcesz go użyć, a nie olewasz, że ma (tak jak zrobiłbyś np. właśnie ograniczając się do fixed pipeline, bo nie wszystko ma shadery)).

Jest tego "trochę więcej": do matematyki (macierze, quaterniony, vectory), do wczytywania tekstur (DDS,JPG,PNG), do wczytywania/kompilacji shader'ów, do wczytywania dźwięków (PCM,ADPCM,xWMA).
Do grafiki zaliczyłem macierze, tekstury i shadery (to co potrzebne przy wyświetlaniu grafiki).

PS. Dziesiątki bibliotek w sieci które trzeba a) wiedzieć gdzie są b) wiedzieć po co są c) wybrać wersję d) umieć podłączyć... się nijak przekłada na wielkość pliku SDK z DXem, który ma WSZYSTKO co jest potrzebne do zrobienia gry przez początkującego.
Nie trzeba wiedzieć - Google wie ;], a umiejętność szukania i podłączenia biblioteki, i inne umiejętności i tak są niezbędne (jakoś trzeba podłączyć fizykę, język skryptowy... ;]).

PS. SDL też ma wszystko, żeby napisać grę ;p - dźwięk, wczytywanie tekstur, obsługa 3d (opengl), sieć, input i masz WSZYSTKO (no poza biblioteką matmy, co jednak nie jest wielkim problemem) co potrzebne w kilku/kilkunastu mega... tylko tak jak z Dx warto kilka rzeczy wymienić (nie mówię, że DX jest złym wyborem - wręcz przeciwnie, jednak nie uważam, że samo to, że jest jedną wielką paczką daje mu jakiegokolwiek plusa - ot takie moje zdanie, i chyba się nie dogadamy, bo to opinie względne).
Tytuł: Odp: OpenGL vs DirectX
Wiadomość wysłana przez: Krzysiek K. w Marzec 11, 2010, 01:48:58
Cytuj
Co do standardów grafiki to tu jest tak samo - na jednej karcie AA działa zupełnie inaczej niż na drugiej
"Zupełnie inaczej" jest tu pojęciem zupełnie nieadekwatnym. Jedyne, co w kwestii AA może się różnić pomiędzy kartami to sampling pattern, ale to z punktu widzenia użytkownika nie zmienia prawie nic. Od DX10.1 lub DX11 sampling pattern jest już ustandaryzowany, więc tutaj nie będzie nawet najmniejszych różnic.

Cytuj
tekstury wyglądają inaczej (inaczej działa filtr anizotropowy...)
Trochę tak, ale mimo wszystko to nadal jest rzecz relatywnie mało zauważalna w porównaniu z różnymi implementacjami lowpassa w przypadku audio.

Cytuj
a) nie musisz (możesz przecież użyć nawet dźwięku stereo, z jakiejkolwiek biblioteki ;p), ale przeważnie chcesz (i gry AAA też chcą ;p) - i musisz w sytuacji o której napisałem.
b) częściej chcesz, bo chcesz wyciągnąć max ze sprzętu, a nie ograniczać się do tego co potrafią najsłabsze karty (jak karta ma EAX to chcesz go użyć, a nie olewasz, że ma (tak jak zrobiłbyś np. właśnie ograniczając się do fixed pipeline, bo nie wszystko ma shadery)).
a) Gry AAA chcą jedynie ze względu na ewentualne ładne logo na pudełku bądź lobbying ze strony Creative (bądź tak jak to było w przypadku Doom 3 - szantaż.
b) Jest podstawowa różnica: gra z 30 FPS przy rozdzielczości 1024x768 musi przetworzyć ponad 23 miliony pikseli na sekundę. Dowolny efekt audio przetwarza 88-96 tysięcy próbek na sekundę. To jest różnica trzech rzędów wielkości i po przerzuceniu obliczeń dźwięku na CPU procesor nawet tego nie poczuje.

Cytuj
SDL też ma wszystko, żeby napisać grę ;p
Podobnie możesz napisać, że Internet też ma wszystko, żeby napisać grę, więc jest najlepszą biblioteką. ;) SDL to wspólny szyld dla całego zestawu bibliotek, z których połowy nie idzie łatwo wygooglać w wersji skompilowanej pod Visuala (z tego powodu na prowadzonych przeze mnie laboratoriach na uczelni do nauki podstaw grafiki i OpenGL używam Allegro).
Tytuł: Odp: OpenGL vs DirectX
Wiadomość wysłana przez: Dab w Marzec 11, 2010, 02:21:35
Cytuj
b) Jest podstawowa różnica: gra z 30 FPS przy rozdzielczości 1024x768 musi przetworzyć ponad 23 miliony pikseli na sekundę. Dowolny efekt audio przetwarza 88-96 tysięcy próbek na sekundę. To jest różnica trzech rzędów wielkości i po przerzuceniu obliczeń dźwięku na CPU procesor nawet tego nie poczuje.
To chyba nowa granica w byciu fanbojem MS. :) Bo po co używać sprzętowych układów skoro można to zrobić na CPU? :D
Problem w tym że obrazów na klatkę generujesz co najwyżej kilka (łącznie z cieniami, postprocesem itd). Dźwięków odtwarzanych naraz możesz mieć setki. A wolne cykle CPU da się zagospodarować.
Tytuł: Odp: OpenGL vs DirectX
Wiadomość wysłana przez: Krzysiek K. w Marzec 11, 2010, 09:43:07
Cytuj
Problem w tym że obrazów na klatkę generujesz co najwyżej kilka (łącznie z cieniami, postprocesem itd). Dźwięków odtwarzanych naraz możesz mieć setki. A wolne cykle CPU da się zagospodarować.
Setki mieć nie możesz, bo zrobi się jedna wielka zamuła (poza tym miksowanie dźwięków to zwykłe mnożenie i dodawanie). Poza tym mowa była o efektach, a efekty nakładasz nie na każdy dźwięk z osobna, tylko na sumę.
Tytuł: Odp: OpenGL vs DirectX
Wiadomość wysłana przez: skoti w Marzec 11, 2010, 09:44:50
"Zupełnie inaczej" jest tu pojęciem zupełnie nieadekwatnym. Jedyne, co w kwestii AA może się różnić pomiędzy kartami to sampling pattern, ale to z punktu widzenia użytkownika nie zmienia prawie nic. Od DX10.1 lub DX11 sampling pattern jest już ustandaryzowany, więc tutaj nie będzie nawet najmniejszych różnic.
Jest różnica np. taka, że 16x AA na AMD i 16x AA na Nvidii (16xCSAA, zamiast MSAA czyli 8x AA + 8x sampli) działają inaczej ;].

Podobnie możesz napisać, że Internet też ma wszystko, żeby napisać grę, więc jest najlepszą biblioteką. ;)
I przyznasz Ciężko byłoby się z tym nie zgodzić ;p.

Cytuj
Problem w tym że obrazów na klatkę generujesz co najwyżej kilka (łącznie z cieniami, postprocesem itd). Dźwięków odtwarzanych naraz możesz mieć setki. A wolne cykle CPU da się zagospodarować.
Setki mieć nie możesz, bo zrobi się jedna wielka zamuła (poza tym miksowanie dźwięków to zwykłe mnożenie i dodawanie). Poza tym mowa była o efektach, a efekty nakładasz nie na każdy dźwięk z osobna, tylko na sumę.
Nie nakłada się takiego samego efektu na dźwięk wydobywający się z pod wody za murem, co na dźwięk kogoś z przodu bez żadnych przeszkód po drodze - nakładasz to na każdą próbkę z osobna przed miksowaniem.
Tytuł: Odp: OpenGL vs DirectX
Wiadomość wysłana przez: Krzysiek K. w Marzec 11, 2010, 09:46:44
Cytuj
(16xCSAA, zamiast MSAA czyli 8x AA + 8x sampli)
CSAA musisz świadomie włączyć, o ile dobrze pamiętam.
Tytuł: Odp: OpenGL vs DirectX
Wiadomość wysłana przez: Esidar w Marzec 11, 2010, 12:51:10
Bo po co używać sprzętowych układów skoro można to zrobić na CPU? :D
Bo ich nie ma ? (tych układów sprzętowych). Znakomita większość graczy ma zintegrowany dźwięk. Softwarowy. Konsole też nie mają programowalnych układów. Też jest tylko soft. A gry się pisze pod sprzęt najbardziej popularny.

Używanie sprzętowego audio jest równie szalone jak pisanie pod dedykowaną kartę do fizyki. A jak komuś cykle są potrzebne to może "pyknąć" całe audio na DirectCompute albo Cuda :)


Tak, ale XAudio nie wiele zmienia - nie obsługuje sprzętowego DSP czy EAX (lub innych standardów).
I to jest jego największa zaleta :) Jak już pisałem, nie ma czegoś takiego jak "standard" audio. Ciężko EAX uznać za standard skoro graczy z tym "standardem" jest z 5%. Takim samym "standardem" była Aegeia PhysX i wtedy też można by się kłucić "po co liczyć fizykę w CPU skoro mamy Aegeia !". A robienie gry jednocześnie pod wersję "z akceleracją" i "bez akceleracji" jest jak pisanie gry żeby działała tak samo na GT8800 oraz w softwarowym rendererze.


Co do samej wydajności przetwarzania Audio. Taki układ audio obsługujący EAX to zwykły DSP. Jego moc obliczeniowa jest na poziomie pierwszych Pentium (ile on tam ma ? 200MHz ?) :) On sobie radzi a Core2 ma sobie nie dać rady ? :) To ja już w czasach Pentium II robiłem gry z odtwarzaniem 5-6 kanałów OGG.
Tytuł: Odp: OpenGL vs DirectX
Wiadomość wysłana przez: skoti w Marzec 11, 2010, 13:13:12
Bo ich nie ma ? (tych układów sprzętowych). Znakomita większość graczy ma zintegrowany dźwięk. Softwarowy. Konsole też nie mają programowalnych układów. Też jest tylko soft. A gry się pisze pod sprzęt najbardziej popularny.
Znakomita większość graczy też ma zintegrowane układy graficzne intela? I co to zmienia ;].

Używanie sprzętowego audio jest równie szalone jak pisanie pod dedykowaną kartę do fizyki. A jak komuś cykle są potrzebne to może "pyknąć" całe audio na DirectCompute albo Cuda :)
Taa nie używać kart dzwiękowych, a obciążać (i tak już mające co robić) karty graficzne, tym bardziej, że graczy z obsługą dx Compute praktycznie nie ma  ::)

I to jest jego największa zaleta :) Jak już pisałem, nie ma czegoś takiego jak "standard" audio. Ciężko EAX uznać za standard skoro graczy z tym "standardem" jest z 5%. Takim samym "standardem" była Aegeia PhysX i wtedy też można by się kłucić "po co liczyć fizykę w CPU skoro mamy Aegeia !". A robienie gry jednocześnie pod wersję "z akceleracją" i "bez akceleracji" jest jak pisanie gry żeby działała tak samo na GT8800 oraz w softwarowym rendererze.
Jest zupełnie innym standardem - na zintegrowanych układach jak Realtek jest emulowany, a jeśli karta obsługuje (Creative, Asus Xonar) to korzysta ze sprzętu więc można uznać, że działa na praktycznie każdym sprzęcie (jak sprzęt jest słaby to zrobi to za niego CPU).
BTW. nie ma to jak przeobrażać wady w zalety ;p (jakby obsługiwał, to pewnie połowa forumowiczów pisałaby, jaka to zaleta, że daje takie możliwości (nie musisz z tego skorzystać, ale możesz), ale jak nie daje takiej możliwości to już się staje największą zaletą - bo po co możliwości wyboru, i sprzętu, skoro można emulować i jakoś to będzie działać).

Co do samej wydajności przetwarzania Audio. Taki układ audio obsługujący EAX to zwykły DSP. Jego moc obliczeniowa jest na poziomie pierwszych Pentium (ile on tam ma ? 200MHz ?) :) On sobie radzi a Core2 ma sobie nie dać rady ? :) To ja już w czasach Pentium II robiłem gry z odtwarzaniem 5-6 kanałów OGG.
Cpu sobie poradzi, ale ma wiele innych rzeczy do roboty (jak chociażby Fizyka), więc niech procek się zajmie swoimi sprawami, a karty dzwiękowe swoimi.
W czasach P2 Ogg/vorbis nie było jeszcze - dopiero na przełomie P3/4.
Tytuł: Odp: OpenGL vs DirectX
Wiadomość wysłana przez: Esidar w Marzec 11, 2010, 14:02:42
Jeśli napiszę grę z shaderami to zlewam fixed i gra chodzi i wygląda tak samo na 95% kompach, nawet na Intelach. Jeśli użyję EAX to gra działa dobrze i brzmi tak samo na 5% kompach. Right ? W Sofcie mogę napisać co mi się podoba i co potrzebuję (a potrzebuję sporo i gry z którymi mam "styczność" też potrzebują sporo). Jeżeli użyję EAX to tak jakbym się wrócił do czasów fixed w GPU bo jego możliwości są żadne.

W czasach P2 Ogg/vorbis nie było jeszcze - dopiero na przełomie P3/4.
Uhm, to czasy P2 się skończyły z nastaniem P3 ? :) Nie zmieni to faktu że gra z użyciem ogg powstawała na P2 który sobie z tym doskonale radził :)
Tytuł: Odp: OpenGL vs DirectX
Wiadomość wysłana przez: Krzysiek K. w Marzec 11, 2010, 14:08:54
Cytuj
Znakomita większość graczy też ma zintegrowane układy graficzne intela? I co to zmienia ;].
Porównanie nietrafione, bo układy graficzne Intela są zgodne z ogólnie panującym standardem i mają wyższą wydajnośc niż takie same operacje na CPU.

Cytuj
Cpu sobie poradzi, ale ma wiele innych rzeczy do roboty (jak chociażby Fizyka), więc niech procek się zajmie swoimi sprawami, a karty dzwiękowe swoimi.
Taak... obsługa dźwięku na CPU tak zamuli procesor, że zamiast 1000 symulowanych ciał będziesz mógł mieć jedynie 999, co jest sprawą całkowicie nieakceptowalną. ;) Cała nagonka na EAX i przetwarzanie dźwięku na kartach to jedynie rozpaczliwe marketingowe próby Creative utrzymania jego segmentu rynku, który znika. To tak jakby ktoś chciał wmówić, że do obsługi odczytu klawiatury jest potrzebny dedykowany akcelerator, żeby procesora nie zamulać obsługą zdarzeń.
Tytuł: Odp: OpenGL vs DirectX
Wiadomość wysłana przez: Dab w Marzec 11, 2010, 14:29:07
Ale skąd założenie że ma brzmieć tak samo na wszystkich konfiguracjach? Chyba w tym jest sens lepszego i gorszego sprzętu, żeby można było skalować jakość i wydajność. Crysis pójdzie i na 2xGTX 295 i na integrze Intela, ale czy będzie wyglądał tak samo? Nie, więc czemu ma brzmieć tak samo na integrze i na karcie za 100+$? Zwłaszcza że nowe układy dźwiękowe poza coraz szybszymi prockami mają też własną pamięć (EAX-RAM).

Cytuj
jakby obsługiwał, to pewnie połowa forumowiczów pisałaby, jaka to zaleta, że daje takie możliwości (nie musisz z tego skorzystać, ale możesz), ale jak nie daje takiej możliwości to już się staje największą zaletą - bo po co możliwości wyboru, i sprzętu, skoro można emulować i jakoś to będzie działać).

Dokładnie. Jak trzeba to mamy plusy typu "bycie blisko sprzętu", ale gdy jest to nam akurat nie na rękę to "sprzęt jest za słaby". Podobnie zresztą z obsługą SM4.0, przecież to jest "zupełnie nieprzydatne" i nie ma się co przejmować brakiem obsługi tego pod DX9. :D Cóż, bycie fanbojem to trudna droga. :)

[edit]
Link odnośnie obciążania CPU przez dźwięk:
http://pclab.pl/art17707-11.html
Tytuł: Odp: OpenGL vs DirectX
Wiadomość wysłana przez: Krzysiek K. w Marzec 11, 2010, 15:46:31
Cytuj
czemu ma brzmieć tak samo na integrze i na karcie za 100+$?
Bo karta 100+$ dodaje 1-2% mocy obliczeniowej do całego systemu. O ile w przypadku grafiki dorzucenie hi-endowej karty graficznej dodaje do systemu gigantyczne pokłady mocy obliczeniowej przystosowanej do zadań grafiki, to karta dźwiękowa z DSP dodaje jedynie ułamek procenta w porównaniu z mocą procesora, a w dodatku nie ma żadnej dedykowanej formy (SSE czuje się idealnie w tego typu obliczeniach DSP).
Tytuł: Odp: OpenGL vs DirectX
Wiadomość wysłana przez: Esidar w Marzec 11, 2010, 15:52:59
Podobnie zresztą z obsługą SM4.0, przecież to jest "zupełnie nieprzydatne" i nie ma się co przejmować brakiem obsługi tego pod DX9. :D
Ale masz przynajmniej jakiś kompromis. Pod DX9 "coś masz" i możesz "coś z tym zrobić". EAX jest na poziomie GeForce 256.

Cóż, bycie fanbojem to trudna droga. :)
To nim nie bądź :) Bądź "pro-user" a nie "pro-platforma". Możesz zrobić grę która działa dobrze tylko na DX11, EAX i Aegeia... ale what's the point ?


Widziałem kiedyś ten art. Wyraźnie pisany przez anty-MS z zabawnymi zwrotami w stylu "Microsoft manipuluje rynkiem gier za pomocą DirectX 10" (dokładny cytat). A ten wykres który podałeś pokazuje spadek wydajności po włączeniu "specjalnego feater'a w karcie Creative" (CMSS-3D Xpand). Więc jeśli wykres miał udowodnić że mają kiepskie sterowniki lub feature który działa wolno, to mission accomplished :)


Zresztą, dalsza dyskusja jest bez sensu. OpenAL+EAX jest używane w produktach liczonych na palcach jednej ręki. Albo wszyscy developerzy to furiaci i "fanboye MS" albo jest to podyktowane zdrowym rozsądkiem. Ktoś chce być na siłę "oryginalny" bez racjonalnego powodu, niech mu wyjdzie na zdrowie :)
Tytuł: Odp: OpenGL vs DirectX
Wiadomość wysłana przez: bies w Marzec 11, 2010, 18:43:43
Odczepcie się od muzyki, o tym: http://www.opengl.org/discussion_boards/ubbthreads.php?ubb=showflat&Number=273669 (http://www.opengl.org/discussion_boards/ubbthreads.php?ubb=showflat&Number=273669) dyskutować! ;D
Tytuł: Odp: OpenGL vs DirectX
Wiadomość wysłana przez: Dab w Marzec 11, 2010, 19:08:20
Bardzo się cieszę że dotychczasowe tempo (wersja na pół roku) zostało utrzymane, ale 4.0 to niestety mocne słowo jak na te samo API. Liczyłem jednak na wciągnięcie Direct State Access do core.
Tytuł: Odp: OpenGL vs DirectX
Wiadomość wysłana przez: Krzysiek K. w Marzec 11, 2010, 19:10:13
Odczepcie się od muzyki, o tym: http://www.opengl.org/discussion_boards/ubbthreads.php?ubb=showflat&Number=273669 (http://www.opengl.org/discussion_boards/ubbthreads.php?ubb=showflat&Number=273669) dyskutować! ;D
O czym tu dyskutować? Większość featurów wziętych z DX11, trochę z DX10 i trochę z DX9 (np. separacja tekstury i samplera). Innowacyjnych featurów: zero. ;)
Tytuł: Odp: OpenGL vs DirectX
Wiadomość wysłana przez: Dab w Marzec 11, 2010, 19:18:42
Tak? Jakie wsparcie ma DX9/10/11 dla OpenCL? Dla doubli w shaderach? Programowalnego blendingu?
Czy w DX9 można robić tablicę cubemap? Przecież mamy pisać "pro-user", a nie "pro-platforma", więc wersje DX wymagające >XP przecież odpadają. :)
Tytuł: Odp: OpenGL vs DirectX
Wiadomość wysłana przez: Krzysiek K. w Marzec 11, 2010, 19:40:44
Cytuj
Jakie wsparcie ma DX9/10/11 dla OpenCL?
Po co komu OpenCL, jak ma Compute Shader robiący dokładnie to samo w pakiecie.

Cytuj
Dla doubli w shaderach?
DX11 ma pełne wsparcie (jeżeli tylko GPU wspiera double, co z punktu widzenia GPU jest opcjonalne).

Cytuj
Programowalnego blendingu?
Zerknąłem do specyfikacji OpenGL 4.0 - dokładnie tą samą funkcjonalność oferuje DirectX 10.1.

Cytuj
wersje DX wymagające >XP przecież odpadają
Przejście 99% graczy z XP na Win7 to kwestia maksymalnie 3-4 lat.
Tytuł: Odp: OpenGL vs DirectX
Wiadomość wysłana przez: skoti w Marzec 11, 2010, 20:09:44
Po co komu OpenCL, jak ma Compute Shader robiący dokładnie to samo w pakiecie.
Z tego co czytałem wywiady z pracownikami nVidii i Amd to mają zdanie o Compute shader, jako trochę upośledzonego kuzyna, który przez swoje ograniczenia jest wolniejszy niż OpenCL czy Cuda - sam zdania nie mam, bo Dx Compute się za bardzo nie przyglądałem.

Przejście 99% graczy z XP na Win7 to kwestia maksymalnie 3-4 lat.
Pewnie tak tylko wtedy będzie Dx14 i od Dx13 trzeba mieć Windows 8 ;p

O czym tu dyskutować? Większość featurów wziętych z DX11, trochę z DX10 i trochę z DX9 (np. separacja tekstury i samplera). Innowacyjnych featurów: zero. ;)
Tak na szybko jak zobaczyłem to uważam, że masz rację (czyli zgodnie z papierkami nVidii z jakiejś tam konferencji, że kolejna wersja będzie to umożliwienie bezproblemowego przejścia z Dx do GL (m.in. obsługa dziwnego sposobu zapisu koloru (BGRA), oddzielonych shaderów, ProvokingVertex i innych rzeczy), aby ułatwić przechodzenie silników z Dx na OpenGL). Nowinki penie pojawią się za pół roku - teraz plan wykonany, czyli niedługo po Dx11 mieć taką samą funkcjonalność i stworzyć sposób banalnego przechodzenia na to Api... Dx12 nie prędko się pojawi, a nowe rzeczy w OpenGL zapewne niebawem.
Tytuł: Odp: OpenGL vs DirectX
Wiadomość wysłana przez: htmlowiecii w Marzec 11, 2010, 20:24:35
Czy nie zauważyliście, że Khronos Group może przynajmniej teoretycznie wstrzymać rozwój DX.
W końcu w Khronos Group są wszyscy najbardziej liczący się producenci kart graficznych ATI i NVIDIA.
Przecież mogą podjąć uchwałę o niewspieraniu nowszych wersji DX niż wersja n, gdzie wersja n by królowała wtedy na rynku (aby zachować zgodność wsteczną i nie tracić rynku). Wtedy byłby ten sam problem z DX na kartach graficznych co z OGL pod windowsem.Oczywiście problem na poziomie softwarowym łatwiej rozwiązać niż problem na poziomie hardwarowym.
Tytuł: Odp: OpenGL vs DirectX
Wiadomość wysłana przez: Krzysiek K. w Marzec 11, 2010, 20:44:51
Cytuj
Przecież mogą podjąć uchwałę o niewspieraniu nowszych wersji DX niż wersja n
Raz, że sami też biorą udział w ustalaniu specyfikacji DX (przecież kolejne specyfikacje nie powstają wyłącznie na podstawie widzimisię MS).
Dwa, że na taką umowę znalazło by się na bank jakieś prawo antymonopolowe.
Trzy, jak mówi stare powiedzenie, nie zadzieraj z silniejszym od siebie (a Microsoft jest 15x większą firmą niz AMD i NVidia razem wzięte).

Cytuj
Wtedy byłby ten sam problem z DX na kartach graficznych co z OGL pod windowsem.
Czyli by sobie sami problem zrobili. ;)
Tytuł: Odp: OpenGL vs DirectX
Wiadomość wysłana przez: skoti w Marzec 11, 2010, 21:06:43
Raz, że sami też biorą udział w ustalaniu specyfikacji DX (przecież kolejne specyfikacje nie powstają wyłącznie na podstawie widzimisię MS).
Tak, ale bywa, że nie są zadowoleni z tej współpracy i uśmiercają standard - np. Dx10.1 umarł śmiercią naturalną, bo nVidia go nie wspierała (i jawnie mówiła, że wspierać nie będzie, żeby nie dawać przyzwolenia Microsoftowi na mini aktualizacje), DX11 do tej pory to tylko ciekawostka, bo póki co nie ma jeszcze kart nVidii (która ma większość rynku wydajnych kart graficznych).
Tytuł: Odp: OpenGL vs DirectX
Wiadomość wysłana przez: Avaj w Marzec 11, 2010, 22:28:00
Odczepcie się od muzyki, o tym: http://www.opengl.org/discussion_boards/ubbthreads.php?ubb=showflat&Number=273669 (http://www.opengl.org/discussion_boards/ubbthreads.php?ubb=showflat&Number=273669) dyskutować! ;D
O czym tu dyskutować? Większość featurów wziętych z DX11, trochę z DX10 i trochę z DX9 (np. separacja tekstury i samplera). Innowacyjnych featurów: zero. ;)
Trudno walczyć o innowacyjność w tej sytuacji. Jakby nie patrzeć, DX jest zdecydowanym liderem na rynku obecnie (czy zasłużenie to mamy dziesiątki stron tego tematu, ale nie ważne dla mojego posta) i to on ustala co wchodzi w skład kart graficznych. Skoro karty graficzne mają tego domain i hull shadera, to OpenGL musi go zaimplementować, nie może brać shaderów z księżyca...

pomijając fakt, że gdyby np tych shaderów nie dodali to podnieślibyście głosy, że OpenGL jest do tyłu bo nie ma teselacji na tych shaderach (której jeszcze nikt nie używa ale sam fakt).
Tytuł: Odp: OpenGL vs DirectX
Wiadomość wysłana przez: skoti w Marzec 11, 2010, 22:43:23
(której jeszcze nikt nie używa ale sam fakt).
Np. Dirt 2 (ale fakt tylko dlatego, że AMD zainwestowała w tą grę kasę, żeby wspierała Dx11 ;p).
Tytuł: Odp: OpenGL vs DirectX
Wiadomość wysłana przez: Krzysiek K. w Marzec 11, 2010, 23:41:15
Cytuj
Dx10.1 umarł śmiercią naturalną, bo nVidia go nie wspierała (i jawnie mówiła, że wspierać nie będzie, żeby nie dawać przyzwolenia Microsoftowi na mini aktualizacje)
I sami przez to myślę sporo stracili, bo dali konkurencji pole do działania, a zaimplementować funkcjonalność i tak musieli, bo co w DX10.1, to i w DX11.

Poza tym współpraca z zespołem od OpenGL też nie układa się często różowo: jak myślisz, dlaczego NVidia nie wspiera rozszerzenia ARB_texture_env_crossbar, które powstało z własnego rozszerzenia Nvidii NV_texture_env_crossbar?


Cytuj
DX11 do tej pory to tylko ciekawostka
Ciekawostka dla nas, chleb powszedni dla developerów technologii i silników pod gry, które wejdą za 2-3 lata.
Tytuł: Odp: OpenGL vs DirectX
Wiadomość wysłana przez: skoti w Marzec 12, 2010, 00:01:55
I sami przez to myślę sporo stracili, bo dali konkurencji pole do działania, a zaimplementować funkcjonalność i tak musieli, bo co w DX10.1, to i w DX11.
Z tego co pokazały wyniki sprzedaży kart nie stracili.

Poza tym współpraca z zespołem od OpenGL też nie układa się często różowo: jak myślisz, dlaczego NVidia nie wspiera rozszerzenia ARB_texture_env_crossbar, które powstało z własnego rozszerzenia Nvidii NV_texture_env_crossbar?
Nie widzę takiego rozszerzenia jak NV_texture_env_crossbar, ani w rejestrze rozszerzeń OpenGL, ani na stronach nVidii dotyczących rozszerzeń - za to widzę w ARB_texture_env_crossbar, że nad nim pracowali ludzie z Intela, Sun'a i AMD, ale z nVidii tam nie widzę nikogo... ale rozszerzenie jest wspierane przez nVidie:
glxinfo |grep ARB_texture_env_crossbar # to polecenie pokazuje to:
GL_ARB_texture_env_combine, GL_ARB_texture_env_crossbar,
Tytuł: Odp: OpenGL vs DirectX
Wiadomość wysłana przez: Esidar w Marzec 12, 2010, 00:25:28
powstało z własnego rozszerzenia Nvidii NV_texture_env_crossbar?
Tego to chyba nawet Nvidia nie supportuje :) Bo nie widzę u siebie.


Dodanie Hull/Domain shader to IMO raczej krok w tył niż innowacja. I chodzi zarówno o DX11 jak i OGL. A już miałoby tak pięknie :) Już geometria miała być generowana softwarowo zupełnie dowolnie, nawet z powierzchni beziera. Jakoś nie chce mi się wierzyć że nie dałoby się tak zoptymalizować Geometry Shadera żeby potrafił wygenerować ten minimum 1 trójkąt na każdy cykl GPU. Po co specjalnie dokładać tesselator ? Wydaje mi się że maczało w tym palce ATI, które kilka lat forsowało ten swój tesselator aż w końcu przeforsowali. Co dalej ? Dodadzą kolejne shadery do generowania 3DMax Duck ? Torus shader ?


Compute Shader jest zdaje się na poziomie CUDA 1.0 (więc kart GT8800). Rewelacji nie ma, ale już są jakieś ciekawe przykłady użycia (np. prezentacja nowego silnika do Battlefielda - Frostbite 2). OpenCL w sumie nie wiele się różni. Konstrukcja ta sama i tylko w kilku miejscach zamiast 2-3 sztywno wpisanych limitów, są vendor-defined.
Jedyne interesujące teraz API to nowe Cuda z obsługą GF100 Fermi. Pamięć liniowa 64bit, dynamiczne new/delete obiektów C++, możliwość jednoczesnego uruchomienia do 16 różnych kerneli... To już pozwala bardziej rozwinąć skrzydła :)

Jedyna rzecz wyróżniająca DX11 od OGL (lub ja o czymś nie wiem :) ) to możliwość tworzenia kilku command buffer'ów na kilku wątkach. DX do tej pory kulał wydajnościowo jeśli chodzi o wywoływanie funkcji z API. Ten feature może mu mocno pomóc. W OGL4.0 nic takiego chyba nie dołożyli, a szkoda.
Tytuł: Odp: OpenGL vs DirectX
Wiadomość wysłana przez: Krzysiek K. w Marzec 12, 2010, 00:39:08
Cytuj
Nie widzę takiego rozszerzenia jak NV_texture_env_crossbar
OK, słaba pamięć - te funkcjonalność jest fragmentem NV_texture_env_combine4.

Cytuj
za to widzę w ARB_texture_env_crossbar, że nad nim pracowali ludzie z Intela, Sun'a i AMD, ale z nVidii tam nie widzę nikogo...
To by co nieco wyjaśniało. Fakt faktem, że to rozszerzenie czerpie pełnymi garściami z NV_texture_env_combine4.

Cytuj
rozszerzenie jest wspierane przez nVidie
Zabawne... widocznie zmienili politykę, zaczęli olewać detale specyfikacji. Faktycznie, widzę też u siebie jednocześnie ARB_texture_env_crossbar i NV_texture_env_combine4, pomimo, że te specyfikacje są ze sobą dla pewnych warunków sprzeczne (jedna wymaga jednego zachowania, druga innego).

Cytuj
Dodanie Hull/Domain shader to IMO raczej krok w tył niż innowacja. I chodzi zarówno o DX11 jak i OGL. A już miałoby tak pięknie :) Już geometria miała być generowana softwarowo zupełnie dowolnie, nawet z powierzchni beziera.
Nadal może. Jedynym elementem fixed function tutaj jest tesselator, którego zadaniem jest krojenie trójkątów na mniejsze kawałki. Co z tym zrobisz, to już Twoja sprawa.

Cytuj
Jakoś nie chce mi się wierzyć że nie dałoby się tak zoptymalizować Geometry Shadera żeby potrafił wygenerować ten minimum 1 trójkąt na każdy cykl GPU.
Nie dało by się, bo geometry shader się tak łatwo nie zrównolegla - nie możesz zacząć przetwarzać trójkątów kolejnej instancji geometry shadera, zanim nie przetworzysz wszystkich z poprzedniego. Możesz odpalać wiele instancji, ale wyniki wszystkich poza pierwszą musisz gdzieś buforować, a że GPU ma bardzo ograniczone ilości wbudowanego ramu, to dużej ilości trójkątów wypluwanych z geometry shadera po prostu nie pociągnie.

Cytuj
Po co specjalnie dokładać tesselator ?
Żeby wydzielić z geometry shadera część, która się nie zrównolegla, a pozostałe fragmenty rozbić na zadania, które już się zrównoleglają. Hull Shader robi obliczenia per-patch i per-control point, Domain Shader robi obliczenia dla każdego wierzchołka po tesselacji, więc nikt nikomu w drogę nie wchodzi i GPU nie ma na czym wisieć.

Cytuj
Compute Shader jest zdaje się na poziomie CUDA 1.0 (więc kart GT8800).
Kluczowe jest tu słowo "zdaje się". Compute Shader ma sporo featurów, o których GT8800 może tylko pomarzyć. Poza tym niektóre z featurów Compute Shadera w DX11 przeniknęły do Pixel Shaderów, przez co można będzie wykonać masę ciekawych manewrów (np. order-independent transparency operte na dynamicznych listach per-pixel).
Tytuł: Odp: OpenGL vs DirectX
Wiadomość wysłana przez: Esidar w Marzec 12, 2010, 00:52:42
Kluczowe jest tu słowo "zdaje się". Compute Shader ma sporo featurów, o których GT8800 może tylko pomarzyć.
No chyba nie do końca :) Compute Shader ma działać na wszystkich kartach obsługujących 10.x  http://msdn.microsoft.com/en-us/library/ee422083%28v=VS.85%29.aspx Są pewne ograniczenia na tych kartach, ale różnice to jakieś "pierdoły" w stylu maksymalnie 768 wątków, zamiast 1024.

W sumie "downlevel hardware" to też jest dobry feature (szkoda że go nie było wcześniej w DX10). Pozwoli na pisanie pod nowym API pod karty z SM3.0. I może więcej osób przekona do W7 64bit :)
Tytuł: Odp: OpenGL vs DirectX
Wiadomość wysłana przez: Krzysiek K. w Marzec 12, 2010, 01:09:10
Cytuj
Są pewne ograniczenia na tych kartach, ale różnice to jakieś "pierdoły" w stylu maksymalnie 768 wątków, zamiast 1024.
Nieco jaśniejsza lista kilku z owych "pierdół": ;)
- brak wsparcia dla operacji scatter (czyli de facto tego, czego najbardziej brakuje),
- brak operacji atomowych,
- brak zasobów typu append/consume

W praktyce CS został tak przycięty, że każdy program spełniający te ograniczenia można w dość prosty sposób przerobić na Pixel Shader. Jedyna różnica to taka, że zamiast rendertargetów w pamięci graficznej na potrzeby danych tymczasowych operujemy wyłącznie na samym cache.

Cytuj
Pozwoli na pisanie pod nowym API pod karty z SM3.0.
Karty SM3.0 nie wspierają DX10. ;)
Tytuł: Odp: OpenGL vs DirectX
Wiadomość wysłana przez: Esidar w Marzec 12, 2010, 01:17:14
Karty SM3.0 nie wspierają DX10. ;)
I temu właśnie służy tryb "downgrade" :) To tryb w którym używasz API DX10-11 pod kartami DX9 (z oczywiście przyciętymi możliwościami). Chodzi wyłącznie o to żeby zachęcić do pisania pod nowym API również jeśli chce się tylko używać SM3.0.
Tytuł: Odp: OpenGL vs DirectX
Wiadomość wysłana przez: Dab w Marzec 12, 2010, 12:31:55
Cytuj
Programowalnego blendingu?
Zerknąłem do specyfikacji OpenGL 4.0 - dokładnie tą samą funkcjonalność oferuje DirectX 10.1.
To zerknij jeszcze do NV_texture_barrier. :)
Tytuł: Odp: OpenGL vs DirectX
Wiadomość wysłana przez: Krzysiek K. w Marzec 12, 2010, 12:55:05
To zerknij jeszcze do NV_texture_barrier. :)
Na co mam zerknąć? To jest "NV" i bardzo hardware-specific, więc watpię, żeby przeszło do core/ARB/EXT. Prawdopodobnie szło by to zrobić na kartach innych firm, ale gwarancji nie ma - texture barrier to po prostu cache flush, a budowa i sposób działania cache to detal bardzo implementacyjny.
Tytuł: Odp: OpenGL vs DirectX
Wiadomość wysłana przez: Dab w Marzec 12, 2010, 13:20:04
No i co z tego? To samo można powiedzieć o DX11, przez długi czas był vendor-specific (ATI Radeon 5xxxx), karty NV go wspierające mają wyjść w większej ilości dopiero w czerwcu (o ile).
Nie mówię nawet o bindless graphics od NV, które wydajnością zjada wszystkie 11 wersji DX na śniadanie. :)
Tytuł: Odp: OpenGL vs DirectX
Wiadomość wysłana przez: Krzysiek K. w Marzec 12, 2010, 13:27:01
Cytuj
To samo można powiedzieć o DX11, przez długi czas był vendor-specific (ATI Radeon 5xxxx), karty NV go wspierające mają wyjść w większej ilości dopiero w czerwcu (o ile).
A co ma fakt wyjścia kart na rynek do określenia "vendor-specific"? Liczy się intencja, czy dany producent ma zamiar daną rzecz wspierać, czy nie.

Cytuj
Nie mówię nawet o bindless graphics od NV, które wydajnością zjada wszystkie 11 wersji DX na śniadanie.
A przy okazji jest ekstremalnie hardware-specific (masz jak w banku, że z czasem NVidia sama przestanie wspierać bindless graphics) i do tego zagraża stabilności systemu (watpię, żeby hardware sprawdzał poprawność przekazywanych bezpośrednio danych).
Tytuł: Odp: OpenGL vs DirectX
Wiadomość wysłana przez: Dab w Marzec 12, 2010, 13:34:23
Cytuj
A co ma fakt wyjścia kart na rynek do określenia "vendor-specific"? Liczy się intencja, czy dany producent ma zamiar daną rzecz wspierać, czy nie.
No więc intencja jest. OpenGL to otwarty standard. Rozszerzenia mają to do siebie że ewoluują VENDOR->EXT->ARB->core. To że rozszerzenie jest dostępne jako NV_* wynika głównie z chęci jak najszybszego wprowadzania nowości. Nie zabrania to innym producentom implementować jego obsługi (np. NV_explicit_multisample które szybciutko zostało podchwycone przez ATI).

Cytuj
A przy okazji jest ekstremalnie hardware-specific (masz jak w banku, że z czasem NVidia sama przestanie wspierać bindless graphics) i do tego zagraża stabilności systemu (watpię, żeby hardware sprawdzał poprawność przekazywanych bezpośrednio danych).
BG operuje na wirtualnej 64-bitowej przestrzeni adresowej. Co może się stać? Reset drivera? O to i bez BG nietrudno. :)
Tytuł: Odp: OpenGL vs DirectX
Wiadomość wysłana przez: Krzysiek K. w Marzec 12, 2010, 13:39:27
Cytuj
No więc intencja jest. OpenGL to otwarty standard. Rozszerzenia mają to do siebie że ewoluują VENDOR->EXT->ARB->core. To że rozszerzenie jest dostępne jako NV_* wynika głównie z chęci jak najszybszego wprowadzania nowości. Nie zabrania to innym producentom implementować jego obsługi (np. NV_explicit_multisample które szybciutko zostało podchwycone przez ATI).
Zaczynasz słowami "intencja jest", a kończysz na "nie zabrania". Trochę w tym sprzeczności. ;) Gwoli wyjaśnienia: chodziło mi o to, żeby była intencja innych firm, poza NVidią, do zaimplementowania tego rozszerzenia. Jeżeli implementacją tego rozszerzenia będzie zainteresowana tylko NVidia, rozszerzenie nigdzie dalej nie przejdzie.

Cytuj
BG operuje na wirtualnej 64-bitowej przestrzeni adresowej. Co może się stać? Reset drivera? O to i bez BG nietrudno.
Reset drivera to tylko pod Vistą, jak już - pod XP cały driver jest w kernel mode i takie zabawy kończą się zwisem, rebootem lub bluescreenem. W tym przypadku chodziło mi jednak o zwis hardware (który pod XP też się dobrze nie kończy).
Tytuł: Odp: OpenGL vs DirectX
Wiadomość wysłana przez: Esidar w Marzec 12, 2010, 14:09:46
Nie mówię nawet o bindless graphics od NV, które wydajnością zjada wszystkie 11 wersji DX na śniadanie. :)
Uhm, a masz link do testu ? :) Jakiegokolwiek ? Bo może się mylę, ale obydwa rozwiązania są jeszcze jakoś nie za bardzo wykorzystywane :)

No i jak już wspomniałem, w DX11 masz tworzenie command buffera na osobnych wątkach, czyli coś czego w OGL brakuje. A przygotowywanie command buffera na 1 wątku, choćby nie wiem jak zoptymalizowane nie przeskoczy rozwiązania działającego na N wątkach.

BG operuje na wirtualnej 64-bitowej przestrzeni adresowej. Co może się stać? Reset drivera? O to i bez BG nietrudno. :)
Pod vista się może zdarzyć (i zdarza) reset User Drivera.. ale to nie jest groźne. Nie wiem czy BG działa pod starszymi kartami, ale smarowanie po pamięci karty już jest dość ryzykowne :) Rozwiązaniem może być WDDM2.0 czyli pamięć wirtualna na karcie. Jak program (shader/Cuda) wyjedzie po za blok pamięci to jest rzucony wyjątek do managera pamięci. Nie wiele mówią o Fermi, ale może tam już coś takiego zaimplementowali (skoro się chwalą że Cuda ma liniowy dostęp do pamięci).
Tytuł: Odp: OpenGL vs DirectX
Wiadomość wysłana przez: Dab w Marzec 12, 2010, 14:39:07
No i jak już wspomniałem, w DX11 masz tworzenie command buffera na osobnych wątkach, czyli coś czego w OGL brakuje. A przygotowywanie command buffera na 1 wątku, choćby nie wiem jak zoptymalizowane nie przeskoczy rozwiązania działającego na N wątkach.
Co do wydajności BG: http://www.opengl.org/discussion_boards/ubbthreads.php?ubb=showflat&Number=271436#Post271436
I owszem, BG działa na kartach DX10 (G80+)

Zgodzę się w pełni że brak wsparcia dla wielowątkowości w OpenGL boli. Ale trudno żeby w wątku w którym miłośnicy MS nie widzą oczywistych wad DX-a, zwolennicy OGL wytykali jego minusy :)

Tytuł: Odp: OpenGL vs DirectX
Wiadomość wysłana przez: Krzysiek K. w Marzec 12, 2010, 14:47:05
Co do wydajności BG: http://www.opengl.org/discussion_boards/ubbthreads.php?ubb=showflat&Number=271436#Post271436
Cytując z podanego linka: "With 65025 VBOs in the scene (and from 600K to 10M triangles), the speed gain was from 50% to 70%."

Jak ktoś zamuli driver taką ilością zasobów, to nie dziwne, że jest tu sporo miejsca na poprawę (co zresztą autor sam dalej pośrednio stwierdza).
Tytuł: Odp: OpenGL vs DirectX
Wiadomość wysłana przez: Esidar w Marzec 12, 2010, 15:18:00
Ten test, jest raczej oczywisty (że z BG i bez BG będzie różnica :) ) ale wolałbym żeby się odniósł do tego że "BG jest szybsze niż DX11" :) Przecież nie chodzi o jakiś dziwny flamewar tylko o faktyczny dowód na to że warto używać a lub b. Ja sam używam OGL głównie ze względu na szybsze wykonywanie poleceń API czyli mniejszy narzut CPU (o czym nawet pisałem - że "DX mocno kuleje na tym polu"). Więc bardzo chętnie zobaczę porównanie wydajności np. BG z DX11 wykonywanym na 4-6 rdzeniach.

Zgodzę się w pełni że brak wsparcia dla wielowątkowości w OpenGL boli. Ale trudno żeby w wątku w którym miłośnicy MS nie widzą oczywistych wad DX-a, zwolennicy OGL wytykali jego minusy :)
Jakoś nie czuję się "miłośnikiem MS" gdy sam używam OGL :) I przede wszystkim staram się unikać stwierdzeń "a DX jest lepszy niż wszystkie GL'e razem wzięte" :) No chyba że nie chodziło ci o mnie, to wtedy mógłbyś dać "\r" między tymi dwoma stwierdzeniami ;p

Jak ktoś zamuli driver taką ilością zasobów, to nie dziwne, że jest tu sporo miejsca na poprawę (co zresztą autor sam dalej pośrednio stwierdza).
Akurat DX'a można zamulić dużo mniejszą ilością :) Przy jednej z poprzednich gierek, mieliśmy jakieś 40tyś wywołań DX'a (z czego ok. 5-6tyś to były DP) i zużycie CPU w samym DX było na poziomie 30%. Jak na mój gust ciut za dużo :) Nie chciało mi się jednak przerabiać gry na OGL chociaż ciekawy byłem co by z tego wyszło.
Tytuł: Odp: OpenGL vs DirectX
Wiadomość wysłana przez: Dab w Marzec 12, 2010, 15:28:33
Faktycznie brakuje tam "\n" :P

A test BG vs DX11 MT faktycznie byłby ciekawy. Może ustalimy jakąś formułę i sami taki test przeprowadzimy? Ja z chęcią mogę napisać wersję OpenGL-ową.
Tytuł: Odp: OpenGL vs DirectX
Wiadomość wysłana przez: skoti w Marzec 12, 2010, 15:49:14
A test BG vs DX11 MT faktycznie byłby ciekawy. Może ustalimy jakąś formułę i sami taki test przeprowadzimy? Ja z chęcią mogę napisać wersję OpenGL-ową.
Ja osobiście dopóki BG nie będzie co najmniej EXT nie mam zamiaru się zajmować. Za to ciekawi mnie test Dx11 MT i tesselacja vs OpenGL 4.0 z mniejszym narzutem i tesselacją... jednak jestem pewien, że taki test ujrzymy za miesiąc czyli jak już wyjdzie fermi i pojawią się sterowniki i już Unigine popracuje nad przeniesieniem głównego benchmarka dx11 (Heaven Benchmark) do OpenGL 4.0.
Tytuł: Odp: OpenGL vs DirectX
Wiadomość wysłana przez: _OskaR w Marzec 13, 2010, 14:48:41
Cytuj
drawing of data generated by OpenGL, or external APIs such as OpenCL, without CPU intervention;
Co takiego robi procek, jeśli korzystamy z VBO modyfikowanego przez CUDA?  ???
Tytuł: Odp: OpenGL vs DirectX
Wiadomość wysłana przez: Dab w Marzec 13, 2010, 17:31:52
http://www.opengl.org/registry/specs/ARB/draw_indirect.txt

To jest bardzo ciekawe rozszerzenie. W gruncie rzeczy dzięki niemu można tworzyć coś w rodzaju command bufferów (ograniczonych do DIPów) nie tylko na CPU ale i na GPU. Szkoda że nie ma wersji przyjmującej N struktur.
Tytuł: Odp: OpenGL vs DirectX
Wiadomość wysłana przez: Dab w Marzec 18, 2010, 22:10:33
http://www.eurogamer.net/articles/digitalfoundry-directx-360-performance-blog-entry

Trochę stary kotlet, ale daje do myślenia.
Tytuł: Odp: OpenGL vs DirectX
Wiadomość wysłana przez: Esidar w Marzec 18, 2010, 23:12:07
Właściwie to udowadnia jedynie tezę że nie należy wierzyć we wszystko co ktoś sobie napisze. koleś palnie kilka bzdur a potem się ludzie nakręcają. Poleciłbym mu zapoznać się z metodami w DirectX takimi jak Begin/EndCommandBuffer oraz RunCommandBuffer :) No i zacząć od przeczytania dokumentacji :)
Tytuł: Odp: OpenGL vs DirectX
Wiadomość wysłana przez: yarpen w Marzec 19, 2010, 01:48:18
W ogole Digital Foundry trzeba czytac z przymruzeniem oka, bo to pisza dziennikarze, nie developerzy.
Tytuł: Odp: OpenGL vs DirectX
Wiadomość wysłana przez: Dab w Marzec 19, 2010, 01:56:47
Tym razem nie wyszło.

Swoją drogą: NVidia wypuściła drivery OpenGL 3.3. Drivery 4.0 mają wyjść razem z Fermi.
Tytuł: Odp: OpenGL vs DirectX
Wiadomość wysłana przez: ConayR w Marzec 19, 2010, 02:28:08
W ogole Digital Foundry trzeba czytac z przymruzeniem oka, bo to pisza dziennikarze, nie developerzy.
Ani to, ani to. To pisze koleś, który jest autorem sprzętu/softu do zrzucania i analizy obrazu w HD.
Tytuł: Odp: OpenGL vs DirectX
Wiadomość wysłana przez: Esidar w Marzec 19, 2010, 17:36:24
Co gorsza, temat się wziął z bloga jakiegoś kolesia z EA który robi gry i który też najwyraźniej nie umie czytać dokumentacji :) Przy czym oryginalnie, ten koleś z EA narzekał na swoim blogu że DX generuje zbyt duży command buffer (za dużo śmieci tam wkłada). Oczywiście popełnił co najmniej 2 błędy. Wielkość CB sprawdzał PIX'em który dokłada do każdego wywołania DX'a swoje dane do CB. Po drugie za pewne nie używa specjalnych funkcji które pozwalają na bardziej samodzielne zarządzanie co do CB trafia. Potem na twitterze ten koleś z EA napisał że stworzył (zupełnie nie potrzebnie) własny kod do tworzenia CB a ten "dziennikarz" sobie wyextrapolował to do tego że X360 w ogóle nie ma zarządzania CB :) W sumie podobne historyjki krążą o PS3 :)

Wracając do głównego tematu: w sumie to też trochę zabawne, że przy jeszcze bodajże DX5.0 było coś takiego jak command buffer, potem został usunięty, a teraz przy DX11 znowu CB powraca.
Tytuł: Odp: OpenGL vs DirectX
Wiadomość wysłana przez: Dab w Marzec 19, 2010, 17:55:49
OpenGL też miał od zawsze CB (display listy) i dopiero niedawno zostały one zarzucone. :)
Tytuł: Odp: OpenGL vs DirectX
Wiadomość wysłana przez: Krzysiek K. w Marzec 19, 2010, 18:51:26
Cytuj
OpenGL też miał od zawsze CB (display listy)
Display lista != Command buffer. Display lista pozwala zapisywać wywołania API, a command buffer zapisuje polecenia GPU. W przypadku OpenGL display listy nigdy nie mogły być kompilowane do command buforów, bo w momencie kompilowania listy driver nie ma pojęcia jak poustawiane będą stany OpenGL w momencie użycia listy.
Tytuł: Odp: OpenGL vs DirectX
Wiadomość wysłana przez: Vipa w Marzec 19, 2010, 21:49:40
Cytuj
OpenGL też miał od zawsze CB (display listy)
Display lista != Command buffer. Display lista pozwala zapisywać wywołania API, a command buffer zapisuje polecenia GPU. W przypadku OpenGL display listy nigdy nie mogły być kompilowane do command buforów, bo w momencie kompilowania listy driver nie ma pojęcia jak poustawiane będą stany OpenGL w momencie użycia listy.

A w momencie użycia VBO ma?
Można w sumie zastąpić listy VBO, nie wiem tylko jaka jest możliwość automatyzacji tego.
Tytuł: Odp: OpenGL vs DirectX
Wiadomość wysłana przez: rm-f w Marzec 19, 2010, 21:54:59
A w momencie użycia VBO ma?
Można w sumie zastąpić listy VBO, nie wiem tylko jaka jest możliwość automatyzacji tego.
VBO ma się nijak do DisplayList i Command Buforów ;)
Tytuł: Odp: OpenGL vs DirectX
Wiadomość wysłana przez: Vipa w Marzec 19, 2010, 21:59:42
Niby tak, ale ja ostatnio zamieniam wszystkie listy na VBO :). Rezultaty są odczuwalne.
Tytuł: Odp: OpenGL vs DirectX
Wiadomość wysłana przez: rm-f w Marzec 19, 2010, 22:04:19
Niby tak, ale ja ostatnio zamieniam wszystkie listy na VBO :). Rezultaty są odczuwalne.
No fajnie... ale i tak to pojęcia kompletnie inne :)

VBO to zwykły pojemnik na dane.
CB to po prostu FIFO z poleceniami dla karty (a także i danymi).
Tytuł: Odp: OpenGL vs DirectX
Wiadomość wysłana przez: Vipa w Marzec 19, 2010, 22:06:12
Możliwe, nie jestem ostatnio na bieżąco. Ale czy taka automatyczna zmiana jest możliwa? Mam masę danych z listami :).
Tytuł: Odp: OpenGL vs DirectX
Wiadomość wysłana przez: bies w Marzec 19, 2010, 22:06:28
Cytuj
OpenGL też miał od zawsze CB (display listy)
Display lista != Command buffer. Display lista pozwala zapisywać wywołania API, a command buffer zapisuje polecenia GPU. W przypadku OpenGL display listy nigdy nie mogły być kompilowane do command buforów, bo w momencie kompilowania listy driver nie ma pojęcia jak poustawiane będą stany OpenGL w momencie użycia listy.
A dlaczego? Nic nie stoi na przeszkodzie aby utworzyć CB z DL a następnie, przy ustawieniu stanu wysłać polecenie do GPU. A przy wywołaniu DL posłać wcześniej utworzony CB.
Tytuł: Odp: OpenGL vs DirectX
Wiadomość wysłana przez: Krzysiek K. w Marzec 20, 2010, 01:02:51
Cytuj
A w momencie użycia VBO ma?
VBO to tylko dane. Command buffer to polecenia rysowania, czyli kompletne "narysuj ten VBO z takimi shaderami, teksturami i parametrami shaderów".

Cytuj
CB to po prostu FIFO z poleceniami dla karty (a także i danymi).
W CB jest tylko tyle danych, co w uniformach do shaderów. Wszystkie tekstury i VBO lecą po staremu i nie wgrasz ich do CB jako takiego.

Cytuj
Nic nie stoi na przeszkodzie aby utworzyć CB z DL a następnie, przy ustawieniu stanu wysłać polecenie do GPU. A przy wywołaniu DL posłać wcześniej utworzony CB.
Właśnie stoi. Stany OpenGL mają się nijak do tego, jak pracują obecne karty graficzne. Przykładowo na podstawie DL nie jesteś w stanie skonstruować definicji input assemblera (czyli strukturki mówiącej o tym, skąd są zaciągane które elementy dancyh wierzchołków), bo przed rysowaniem DL możesz podpiąć jakiś dodatkowy texcoord i po ptakach. Jeszcze gorzej jest w przypadku fixed function, bo tutaj zawsze znajdzie się coś, czego DL nie ustawia i nie jesteśmy w stanie wygenerować shadera (a identyfikator shadera musimy mieć żeby wgrać go do CB).

Dopiero DX10 z obiektami stanów trochę to wszystko uporządkował i doprowadził API do formy, którą da się sensownie przenieść na hardware (tworzenie obiektów stanu i ich podpinanie, bez żadnych wiszących stanów).
Tytuł: Odp: OpenGL vs DirectX
Wiadomość wysłana przez: rm-f w Marzec 20, 2010, 01:17:30
Cytuj
CB to po prostu FIFO z poleceniami dla karty (a także i danymi).
W CB jest tylko tyle danych, co w uniformach do shaderów. Wszystkie tekstury i VBO lecą po staremu i nie wgrasz ich do CB jako takiego.
To wiem, ale ktędy lecą dane z ramu, typu VertexArray? Karta robi przerwę i bierze dane z SysMem?
Tytuł: Odp: OpenGL vs DirectX
Wiadomość wysłana przez: Krzysiek K. w Marzec 20, 2010, 01:36:31
Cytuj
To wiem, ale ktędy lecą dane z ramu, typu VertexArray?
W momencie odpalenia glVertexPointer.

Cytuj
Karta robi przerwę i bierze dane z SysMem?
Karta nie ma dostępu do pamięci systemowej, ale system może mieć dostęp do pamięci karty graficznej. Wystarczy zrekonfigurować mostek i tabele stron i już masz kawałek pamięci graficznej w swojej przestrzeni adresowej. :)
Tytuł: Odp: OpenGL vs DirectX
Wiadomość wysłana przez: rm-f w Marzec 20, 2010, 02:21:36
Cytuj
Karta robi przerwę i bierze dane z SysMem?
Karta nie ma dostępu do pamięci systemowej, ale system może mieć dostęp do pamięci karty graficznej. Wystarczy zrekonfigurować mostek i tabele stron i już masz kawałek pamięci graficznej w swojej przestrzeni adresowej. :)
Pokracznie, wychodzi na to samo co dynamiczne VBO + zmapowanie go... :)
Tytuł: Odp: OpenGL vs DirectX
Wiadomość wysłana przez: skoti w Marzec 25, 2010, 22:12:42
AMD zaskoczyła chyba wszystkich - opublikowali sterowniki OpenGL 3.3 i 4.0 (4.0 niespodziewanie przed nVidią - tych spodziewać możemy się jutro po wydaniu Fermi ;p).
http://support.amd.com/us/kbarticles/Pages/Catalyst-OpenGL-preview-driver.aspx
Tytuł: Odp: OpenGL vs DirectX
Wiadomość wysłana przez: Nazar w Marzec 25, 2010, 23:59:21
A tam, zaskoczyli, już jakiś czas temu pisali o nich więcej, niż NV. AMD skutecznie wykorzystuje przewagę, jaką im dała seria HD5. To tylko dla nas lepiej :)
Tytuł: Odp: OpenGL vs DirectX
Wiadomość wysłana przez: Dab w Marzec 26, 2010, 00:01:31
O, świetna wiadomość. A jest DSA?
Tytuł: Odp: OpenGL vs DirectX
Wiadomość wysłana przez: skoti w Marzec 26, 2010, 00:46:05
A tam, zaskoczyli, już jakiś czas temu pisali o nich więcej, niż NV. AMD skutecznie wykorzystuje przewagę, jaką im dała seria HD5. To tylko dla nas lepiej :)
Jest to zaskoczenie, bo AMD do tej pory wydawała sterowniki pół roku po specyfikacji (teraz 2 tygodnie) - trzy miesiące temu wydali dopiero stery z OpenGL 3.2. Co do przewagi z serią 5k to zyskali w oczach programistów dx11 (bo nie mieli wyjścia ;p), oraz trochę zyskali rynku (chociaż dalej sporo mniej sprzedają nowych kart niż nVidia). Przewagi u graczy wielkiej nie mają, bo gier z Dx11 wielu nie ma, a Fermi wychodzi jutro.

PS. Co ma wspólnego "pisali o nich więcej" z tym co Amd zrobiło i czy zaskoczyło?

O, świetna wiadomość. A jest DSA?
Nie wiem czy ma DSA.
Tytuł: Odp: OpenGL vs DirectX
Wiadomość wysłana przez: Dab w Marzec 26, 2010, 11:20:28
O 23:00 naszego czasu ma być premiera Fermiego. :)

A tymczasem warto poczytać:
http://www.g-truc.net/post-0269.html
http://www.g-truc.net/post-0267.html
Tytuł: Odp: OpenGL vs DirectX
Wiadomość wysłana przez: Nazar w Marzec 26, 2010, 14:00:45
(...)
Kto był zaskoczony, ten był. Ja obstawiałem 2 terminy - okolice wydania nowej specyfikacji lub premiera Fermi. Jak widać, trafiłem. Powiedziałbym, że nawet zdziwiłem się, czemu dopiero teraz, skoro specyfikacja ujrzała światło dzienne przed premierą. AMD już od jakiegoś czasu rozpisuje się, jaki to nowy OGL nie jest bajerancki i że oni będą mieli go wcześniej.

Publikacja sterów wspierających nową wersję OGL jest ukoronowaniem medialnego szumu ze strony AMD przed premierą Fermi. AMD doskonale zdaje sobie sprawę z tego, że GTX480 będzie (a raczej jest) najwydajniejszą 1-rdzeniową kartą na rynku, więc robią wszystko, by odwrócić uwagę od tego faktu. To samo robiła Nvidia pół roku temu, gdy to AMD odebrała im ten tytuł przy pomocy HD5870 i to samo przy okazji premiery HD5970, najwydajniejszej karty 2-rdzeniowej. Tylko czekać na premierę 2-rdzeniowego Fermi, choć może to być utrudnione ze względu na jego konstrukcję i wynikający z niej ogromny pobór mocy. TDP GTX480 zostało ustalone na wyższy od HD5970. Także albo wykorzystają słabszy model albo poczekają na 28nm. Zobaczysz, że wtedy AMD będzie intensywnie publikowało różne stery i "piorunujące" informacje.

OpenGL na rynku gier na PC to ułamek monopolu DX (od razu mówię, że nie próbuję tu nikomu powiedzieć, że OGL jest gorszy - sam go używam). AMD nie ma tyle kasy, co NV, więc wspierają głównie to, co jest najpopularniejsze - Windowsa i DX. NV większość kasy czerpie z kart profesjonalnych, gdzie ma praktycznie monopol, więc mogą sobie pozwolić na bardziej stabilne wsparcie dla innych technologii.

Publikacja tych sterów to w 99% marketingowa zagrywka.
Tytuł: Odp: OpenGL vs DirectX
Wiadomość wysłana przez: Dab w Marzec 26, 2010, 14:16:41
Cytuj
Publikacja tych sterów to w 99% marketingowa zagrywka.
Owszem, zważając na to, że jest to nawet nie alpha czy beta, tylko "preview" :) Tymczasem Nvidia na 99,99% ma już stabilne sterowniki 4.0 (tak samo jak 3.3) tyle że nie było sensu ich publikacji przed premierą GTX 480. Ale dzięki temu AMD na dzień przed premierą Fermi zdobyło trochę szumu :)
Tytuł: Odp: OpenGL vs DirectX
Wiadomość wysłana przez: skoti w Marzec 26, 2010, 21:08:48
@Dab: Te sterowniki nie mają DSA... pewnie trzeba będzie czekać do Siggraph i kolejnej wersji OpenGL, która wreszcie zmusi ich (http://www.geeks3d.com/20100326/ati-catalyst-10-3-opengl-4-0-driver-20-new-opengl-extensions/?utm_source=feedburner&utm_medium=feed&utm_campaign=Feed%3A+TheGeeksOf3d+%28The+Geeks+Of+3D%29).

Kto był zaskoczony, ten był. Ja obstawiałem 2 terminy - okolice wydania nowej specyfikacji lub premiera Fermi. Jak widać, trafiłem. Powiedziałbym, że nawet zdziwiłem się, czemu dopiero teraz, skoro specyfikacja ujrzała światło dzienne przed premierą. AMD już od jakiegoś czasu rozpisuje się, jaki to nowy OGL nie jest bajerancki i że oni będą mieli go wcześniej.
Tak samo rozpływali się nad 3.0, 3.1, 3.2, a jaki tego efekt pewnie wiesz... dlatego też nie było żadnych przesłanek, że wydadzą teraz sterownik (AMD od zawsze gada sporo, tak jak np. o OpenCL gdzie mówiła, że będzie szybko wspierać je i dalej co chwile chwali się, że np. Bullet chce zrobić wersję na OpenCL (ofc bez wsparcia ze strony AMD), a póki co minął już rok z dużym haczykiem, a sterowników dla zwykłych userów (więc też sens wydawania programów jest znikomy) dalej nie ma... sterowniki dla programistów z SDK pojawiły się niedawno, ale są bardzo mało stabilne i wywalają program przy byle okazji (bardzo długo po wydaniu sterowników nVidii dla zarejestrowanych, długo po otwartym wydaniu dla wszystkich programistów i jakiś czas po wydaniu dla użytkowników w oficjalnych sterach)).

OpenGL na rynku gier na PC to ułamek monopolu DX (od razu mówię, że nie próbuję tu nikomu powiedzieć, że OGL jest gorszy - sam go używam). AMD nie ma tyle kasy, co NV, więc wspierają głównie to, co jest najpopularniejsze - Windowsa i DX. NV większość kasy czerpie z kart profesjonalnych, gdzie ma praktycznie monopol, więc mogą sobie pozwolić na bardziej stabilne wsparcie dla innych technologii.
Tak jednak na szczęście wersje 3.3 i 4.0 są tak ukierunkowane dla programistów Dx, że popularność może się odrodzić.

Publikacja tych sterów to w 99% marketingowa zagrywka.
Dokładnie tak - jednak jest to i tak precedens w wykonaniu AMD.
Tytuł: Odp: OpenGL vs DirectX
Wiadomość wysłana przez: bies w Marzec 26, 2010, 22:29:50
Karta nie ma dostępu do pamięci systemowej, ale system może mieć dostęp do pamięci karty graficznej. Wystarczy zrekonfigurować mostek i tabele stron i już masz kawałek pamięci graficznej w swojej przestrzeni adresowej. :)
Skądże. Ustawiasz tablicę GART i karta jedzie po pamięci systemowej.
Tytuł: Odp: OpenGL vs DirectX
Wiadomość wysłana przez: Nazar w Marzec 27, 2010, 00:25:04
(...)
Patrzysz na sprawę w zbyt wąskim zakresie :) Czym innym jest paplanie dla samego paplania, a czym innym paplanie dla odwrócenia uwagi. Przyspieszone prace nad kolejną wersją sterów tylko potwierdzają zasłonę dymną ze strony AMD.
Tytuł: Odp: OpenGL vs DirectX
Wiadomość wysłana przez: Dab w Marzec 27, 2010, 00:26:14
A tymczasem fani NV szaleja na PAX :)
Tytuł: Odp: OpenGL vs DirectX
Wiadomość wysłana przez: Nazar w Marzec 27, 2010, 00:36:35
Zdjęcie z przygotowań:
http://www.facebook.com/photo.php?pid=3698461&id=8409118252
To jest COŚ! :D
Tytuł: Odp: OpenGL vs DirectX
Wiadomość wysłana przez: Yuko w Wrzesień 28, 2010, 21:12:33
Moim zdaniem DirectX ma lepsza przyszlosc oraz wiecej mozliwosci
Tytuł: Odp: OpenGL vs DirectX
Wiadomość wysłana przez: rm-f w Wrzesień 28, 2010, 21:20:52
Moim zdaniem DirectX ma lepsza przyszlosc oraz wiecej mozliwosci
Cytat: Julia Pitera
Będę przeciwnikiem narkotyków, ponieważ tak mówię.
Tytuł: Odp: OpenGL vs DirectX
Wiadomość wysłana przez: Avaj w Wrzesień 28, 2010, 21:33:24
Moim zdaniem DirectX ma lepsza przyszlosc oraz wiecej mozliwosci
Moim zdaniem nie masz racji.
Tytuł: Odp: OpenGL vs DirectX
Wiadomość wysłana przez: K'Aviash w Wrzesień 28, 2010, 21:47:55
Moim zdaniem DirectX ma lepsza przyszlosc oraz wiecej mozliwosci
Chcesz bić pianę  ? :D
Jedni wolą DX inni OGL :) And let them be :)

EDIT: Choć dobry flame nie jest zły ::)
Tytuł: Odp: OpenGL vs DirectX
Wiadomość wysłana przez: _OskaR w Wrzesień 28, 2010, 21:55:50
Moim zdaniem DirectX ma lepsza przyszlosc oraz wiecej mozliwosci
A co to za możliwości? Może się przerzucę. (http://www.tut.multimo.pl/forum/images/smiles/hyhy.gif)
Tytuł: Odp: OpenGL vs DirectX
Wiadomość wysłana przez: 0DFh w Wrzesień 29, 2010, 04:35:14
Ja używam DirectX, bo:
Cytuj
/googlefight
DirectX: Około 29,700,000 wyników
OpenGL: Około 9,630,000 wyników


A tak na prawdę to jak umiesz programować grafikę - API nie stanowi przeszkody. Tak samo jak ktoś zna assembler jednego procesora, żaden problem dla niego poznać inny, mechanizmy są podobne.
Tytuł: Odp: OpenGL vs DirectX
Wiadomość wysłana przez: skoti w Wrzesień 29, 2010, 10:37:05
DirectX: Około 29,700,000 wyników
OpenGL: Około 9,630,000 wyników
W tym wyników o programowaniu jest porównywalnie, a więcej śmieci takich jak na portalach z grami czy forach z grami, że wyszedł nowy dx i jest zajefajnie oraz stronach o sprzęcie i większości sklepów internetowych które piszą którą wersję dx sprzęt obsługuje, a nie piszą o OpenGL (przez co google dodaje takie rzeczy do wyniku).
Tytuł: Odp: OpenGL vs DirectX
Wiadomość wysłana przez: Dab w Wrzesień 29, 2010, 12:40:23
Ja używam DirectX, bo:
Cytuj
/googlefight
DirectX: Około 29,700,000 wyników
OpenGL: Około 9,630,000 wyników


Cytat: googlefight.com
DirectX
7,930,000 results
    Justin Bieber
30,800,000 results

Jesteś pewien że chcesz używać DirectX? :D
Tytuł: Odp: OpenGL vs DirectX
Wiadomość wysłana przez: _OskaR w Wrzesień 29, 2010, 12:55:13
Nowsza technologia nie zawsze jest lepsza - http://www.googlefight.com/index.php?lang=en_GB&word1=DirectX+7&word2=DirectX+11  :P
Tytuł: Odp: OpenGL vs DirectX
Wiadomość wysłana przez: Zielony w Wrzesień 29, 2010, 13:04:05
Cytat: googlefight.com
DirectX
7,930,000 results
    Justin Bieber
30,800,000 results

Jesteś pewien że chcesz używać DirectX? :D

Cytat: googlefight.com
DirectX
7,930,000 results
    Justin Bieber +3D
128,000 results
Po co komu Justin Bieber, jak on jest tylko do 2D :D
Tytuł: Odp: OpenGL vs DirectX
Wiadomość wysłana przez: .:NOXY:. w Październik 10, 2010, 19:34:39
Uff udalo mi sie caly ten watek ogarnac i w koncu moge moje 3grosze dorzucic :)

Prawda jest taka ze... Z ktorym api przyjdzie ci pracowac jako pierwszym tym wieksza szansa ze przy nim zostaniesz ;)
Ja programuje w OpenGL bo... Jego pierwszego wziolem do reki i po prostu nie chce mi sie wszyskiego pisac na nowo w DX choc
stycznosc z nim mam mialem i miec bede. Jak juz wiele osob tu napisalo To wszystko kwestia gustu a jak wiadomo

O gustach sie nie dyskutuje :>

I choc drazni mnie to ze trzeba pilnowac rozszerzen, ze tutaj lepiej dzialaja listy tutaj vbo ze laptopy zdychaja z ogl... i trzeba
sie czasmi glowkowac dlaczego porawnie napisany shader na innej karcie sie nie odpala :) to jednak jest mi z nim dobrze :)
I czesto owe problemy to jakies nie dopatrzenie i ew wlasna glupota :]
Tytuł: Odp: OpenGL vs DirectX
Wiadomość wysłana przez: skoti w Październik 10, 2010, 23:36:02
...i trzeba
sie czasmi glowkowac dlaczego porawnie napisany shader na innej karcie sie nie odpala :) to jednak jest mi z nim dobrze :)
Nie trzeba - trzeba po prostu pisać zgodnie ze specyfikacją, używać nowych sterowników (nowe nVidii nie przepuszczają rzeczy, które nie przejdą u Ati) lub po prostu sprawdzić w AMD GPU ShaderAnalyzer (mając kartę nVidii i tak wypisze błędy takie jak pojawiłyby się na karcie AMD).
Tytuł: Odp: OpenGL vs DirectX
Wiadomość wysłana przez: Shelim w Październik 19, 2010, 01:24:52
Ja tak ostatnio doszedłem do wniosku że artykuł na naszym Wiki pisał wyraźnie zwolennik OpenGL:

http://wiki.warsztat.gd/DirectX_vs_OpenGL

Zalety DXa są wymienione jako wady:
Cytuj
Programowanie wymaga pobrania ze strony Microsoftu darmowego pakietu DirectX SDK o wielkości ponad 300 MB. Nowy SDK wychodzi obecnie co dwa miesiące.
To sugeruje że MS utrudnia programistom życie zwiększając ich wydatki na transfer. Ani słowa o tym, że to jest 300 mega sampli, tutoriali, dokumentacji, narzędzi i innego użytecznego stuffa którego ze świecą (i Googlami!) szukać do OpenGla :)

Jako pierwszą zaletę OpenGla jest wymieniona jego ŚWIĘTOŚĆ: JEST PORTABLE!
Cytuj
Jest przenośna na wiele platform, w tym Windows, Linux, Mac OS X, Playstation (2 i 3), jak i bardziej egzotyczne, takie jak BSD, Solaris czy GP2X.
Słowo honoru, Linux, BSD czy Solaris to bardzo ambitne rynki zbytu dla naszych gier. I piractwo znikome, wszak Linuksowcy z natury chętnie kupują legalne, komercyjne oprogramowanie :)

Cytuj
Jest dostępny standardowo w systemie - programy nie wymagają od użytkownika instalowania żadnej biblioteki.
Bulshit. Wymagają instalacji driverów karty graficznej, które to drivery (np. na wspomnianym wcześniej Linuksie) zdarzają się mocno zabugowane (Yay, ATI :) ). Drivery trzeba oczywiście regularnie updateować, co sprowadza OpenGla do rangi równorzędnej DXowi - jego też trzeba updateować w podobny sposób. Inna sprawa, że łatwiej znaleźć update do DXa (jest dołączony do każdej gry) niż update do driverów karty graficznej Intel 666 na Debiana wypuszczonej w marcu 2002 roku który rozwiąże problem artefaktów w grze z OpenGl :)

Cytuj
API jest udokumentowane m.in. w MSDN Library.
vs
Cytuj
API jest udokumentowane w pakiecie SDK i na stronie MSDN.
Oba API są dokumentowane w różnych miejscach, nie wiem czemu w przypadku DXa wymieniamy tylko SDK i MSDN, a w przypadku OpenGla sugerujemy że dokumentacji jest więcej :)

Cytuj
Niektórzy mówią, że jest prostszy do nauczenia dla początkujących. Inni, że uczy złych nawyków.
Wiki przylepiłaby tutaj łatkę: "Stwierdzenie zwodnicze". Kto tak twierdzi? Paru facetów przy piwie? Dlaczego jest prostszy do nauczenia? Jakie to są te złe nawyki? :)

Cytuj
Dostępne jest w Sieci chyba więcej edukacyjnych przykładów programów, niż dla DirectX.
Więcej tak. Inna sprawa jakości (jakoś nie słyszę dużo pochwał na temat NeHe :) ). Uwaga taktyczna: statystyka wśród liczby książek układa się raczej na odwrót, co oznacza że wydawcy chętniej inwestują pieniądze w podręczniki ze stajni MSa = zakładają więc że jest na nie lepszy rynek zbytu, bo wydawnictwa nie są organizacjami charytatywnymi :)

Cytuj
Istnieje wiele bibliotek uzupełniających OpenGL w programowaniu gier, np. OpenAL do dźwięku czy DevIL do obsługi formatów graficznych.
Dlaczego to samo nie jest wymienione przy DirectXie? DirectX też ma mnóstwo fajnych dodatkowych bibliotek dostępnych w sieci, które realizują średniopoziomowe taski (od VFS, do liczenia Heightmap :) )

Cytuj
Używał go John Carmack w swoich grach - Quake i Doom.
Używał też czystego C. Na kiego komuś polimorfizm? :D
Tytuł: Odp: OpenGL vs DirectX
Wiadomość wysłana przez: skoti w Październik 19, 2010, 04:42:22
Zalety DXa są wymienione jako wady:
Cytuj
Programowanie wymaga pobrania ze strony Microsoftu darmowego pakietu DirectX SDK o wielkości ponad 300 MB. Nowy SDK wychodzi obecnie co dwa miesiące.
To sugeruje że MS utrudnia programistom życie zwiększając ich wydatki na transfer. Ani słowa o tym, że to jest 300 mega sampli, tutoriali, dokumentacji, narzędzi i innego użytecznego stuffa którego ze świecą (i Googlami!) szukać do OpenGla :)
To jest jak najbardziej wada. Może to być zaleta jak się uczysz i pierwszy raz widzisz api na oczy, ale później to, że jest to wszystko razem staje się dużą wadą (zaletą byłoby jakby było to w osobnym pliku jako opcja do ściagnięcia). Co do szukania ze świecą to wystarczy na stronie opengl.org/khronos.org poszukać (jest masa tutoriali, przukładów, tooli, dokumentacji i narzędzi... a w newsach co chwilę reklamują się jakieś strony z zestawami sampli nowych rzeczy z najnowszych wersji OpenGL) - więc nie do końca trzeba ze świecą szukać bo się same pchają i ja nie szukając co chwilę dostaje informacje na rss ;p.

Jako pierwszą zaletę OpenGla jest wymieniona jego ŚWIĘTOŚĆ: JEST PORTABLE!
Cytuj
Jest przenośna na wiele platform, w tym Windows, Linux, Mac OS X, Playstation (2 i 3), jak i bardziej egzotyczne, takie jak BSD, Solaris czy GP2X.
Słowo honoru, Linux, BSD czy Solaris to bardzo ambitne rynki zbytu dla naszych gier. I piractwo znikome, wszak Linuksowcy z natury chętnie kupują legalne, komercyjne oprogramowanie :)
Ten zarzut w stronę linuksa jest zupełnie nietrafiony, bo linuksa w dużej mierze używają osoby chcące być legalne (ja używam z wygody, ale również brzydzę się piractwem i np. licencje na Windowsa w którym testuje swoje oprogramowanie, raz na dłuższy okres czasu (bo buduje też na linuksie windowsowe wersje), też mam legalny, jak również kilka gier). Co więcej ostatnio zostały opublikowane wyniki sprzedaży gier causalowych/indie (czyli takich jakie w większości tu powstają - np. Penumbra) oraz kwoty jakie byli skłonni zapłacić użytkownicy danego systemu (gracz sam podawał cenę za jaką chciał kupić grę) i wbrew stereotypom o których mówisz to właśnie użytkownicy Linuksa najwięcej byli skłonni zapłacić za gry (prawie 2x więcej niż na windowsie, a macos uplasował się pomiędzy), a zyski z platformy dorównywały tym z MacOS, a były 2x mniejsze od Windowsa (MacOS + Linux dawały w sumie tyle samo zysku co Windows, mimo dużo większej popularności i targetu). Jeśli uważasz, że jesteś skłonny do zrezygnowania z połowy zysków pisząc w Dx (bo koszty portu jak już piszesz w OpenGL z myślą o wielu platformach są bliskie 0$), i jeszcze większych zysków jeśli chcesz grę udostępniać na platformy mobilne (telefony i tablety z Androidem/iPhone i iPad), które ostatnio są bardzo łakomym kąskiem, a jest to po prostu OpenGL 4.1 bez kilku rzeczy (OpenGL ES 2.0), to spoko, jednak nie mów, że nie są to platformy warte zainteresowania (a ich użytkowników nie nazywaj piratami, bo sobie tak ubzdurałeś mimo, że na tych platformach piractwo to znikomy problem, tym bardziej w porównaniu z Windowsem).

Bulshit. Wymagają instalacji driverów karty graficznej, które to drivery (np. na wspomnianym wcześniej Linuksie) zdarzają się mocno zabugowane (Yay, ATI :) ). Drivery trzeba oczywiście regularnie updateować, co sprowadza OpenGla do rangi równorzędnej DXowi - jego też trzeba updateować w podobny sposób. Inna sprawa, że łatwiej znaleźć update do DXa (jest dołączony do każdej gry) niż update do driverów karty graficznej Intel 666 na Debiana wypuszczonej w marcu 2002 roku który rozwiąże problem artefaktów w grze z OpenGl :)
Tylko, że sterowniki same się aktualizują (windows update/aktualizacje macos/aktualizacje dystrybucji linuksa), sterowniki ATI dawniej były mocno zbuggowane - teraz zamknięte sterowniki są już bardzo dobre i jest niewiele rzeczy na które można narzekać (razem z prędkością wprowadzania nowych wersji OpenGL i ich jakości) - nie jest może jeszcze to co u nVidii, ale na prawdę nie ma na co narzekać (chyba ze lubisz się czepiać) już od jakiegoś czasu, a co do wspomnianych przez Ciebie kart Intela to one akurat w samym jądrze linuksa, i przy każdej jego aktualizacji aktualizuje się też sterownik... ale jakbyś już chciał szukać to nie musisz daleko, bo intel poza rozwojem sterowników na licencji pozwalającej dołączyć je do jądra, otworzył stronę z której możesz pobrać poza źródłami stabilnymi i rozwojowymi wersje wydawane (stabilne) od 2008 roku: http://intellinuxgraphics.org/download.html (http://intellinuxgraphics.org/download.html) - prędzej już mógłbyś mówić o intelu na Windowsie, bo tam obsługuje tylko OpenGL 2.1 (na linuksie współpracują z Gallium3d i obsługują 3.1 oraz napisali kompilator kodu glsl dla gallium3d (ciekawostką z projektu Gallium3d jest chęć implementacji Dx11 natywnie na linuksie (nie jak dotąd z dx przez wine)))

Cytuj
API jest udokumentowane m.in. w MSDN Library.
vs
Cytuj
API jest udokumentowane w pakiecie SDK i na stronie MSDN.
Oba API są dokumentowane w różnych miejscach, nie wiem czemu w przypadku DXa wymieniamy tylko SDK i MSDN, a w przypadku OpenGla sugerujemy że dokumentacji jest więcej :)
Też się dziwie, że dokumentacja OpenGL jest podana, że na MSDN, a nie na Khronos.org/OpenGL.org gdzie są aktualne dokumentacje do nowych wersji.
Tytuł: Odp: OpenGL vs DirectX
Wiadomość wysłana przez: Reg w Październik 19, 2010, 21:34:52
Korialtrash: Ja pisałem ten tekst na naszej Wiki (potem modyfikowali go też inni) i zaskoczę Cię - jestem zdecydowanym zwolennikiem DirectX :P Starałem się napisać go bezstronnie, ale skoro są co do tego wątpliwości...

Cytuj
Cytuj
    Programowanie wymaga pobrania ze strony Microsoftu darmowego pakietu DirectX SDK o wielkości ponad 300 MB. Nowy SDK wychodzi obecnie co dwa miesiące.
To sugeruje że MS utrudnia programistom życie zwiększając ich wydatki na transfer. Ani słowa o tym, że to jest 300 mega sampli, tutoriali, dokumentacji, narzędzi i innego użytecznego stuffa którego ze świecą (i Googlami!) szukać do OpenGla :)
To jest kwestia stubiektywna. Częste aktualizowanie SDK to może być wada - tak jak to odebrałeś, ale i zaleta - tak jak to też sam opisałeś. Nie wymieniłem ani wad ani zalet tego stanu rzeczy, żeby tekst pozostał krótki. Skoro to "300 MB" robi złe wrażenie, to usuwam.

Cytuj
Cytuj
    Jest przenośna na wiele platform, w tym Windows, Linux, Mac OS X, Playstation (2 i 3), jak i bardziej egzotyczne, takie jak BSD, Solaris czy GP2X.
Słowo honoru, Linux, BSD czy Solaris to bardzo ambitne rynki zbytu dla naszych gier. I piractwo znikome, wszak Linuksowcy z natury chętnie kupują legalne, komercyjne oprogramowanie :)
Tu znowu dodajesz emocje, podczas gdy tekst na Wiki jest całkiem neutralny i bezstronny - po prostu stwierdza fakt i nawet uczciwie wymienia te platformy o których piszesz jako "egzotyczne".

Cytuj
Cytuj
    Jest dostępny standardowo w systemie - programy nie wymagają od użytkownika instalowania żadnej biblioteki.

Bulshit. Wymagają instalacji driverów karty graficznej, które to drivery (np. na wspomnianym wcześniej Linuksie) zdarzają się mocno zabugowane (Yay, ATI :) ). Drivery trzeba oczywiście regularnie updateować, co sprowadza OpenGla do rangi równorzędnej DXowi - jego też trzeba updateować w podobny sposób. Inna sprawa, że łatwiej znaleźć update do DXa (jest dołączony do każdej gry) niż update do driverów karty graficznej Intel 666 na Debiana wypuszczonej w marcu 2002 roku który rozwiąże problem artefaktów w grze z OpenGl :)
Sterowniki do karty graficznej trzeba instalować i warto aktualizować obojętnie, czy używamy DirectX czy OpenGL. A faktem jest, że OpenGL nie wymaga żadnej "biblioteki" - takie słowa używa Wiki - a DirectX owszem, wymaga zainstalowania pakietu Redistributable. Ale OK, dopisałem do tego punktu, że jest dostarczany przez sterownik karty graficznej.

Cytuj
Cytuj
    API jest udokumentowane m.in. w MSDN Library.

vs
Cytuj

Cytuj
    API jest udokumentowane w pakiecie SDK i na stronie MSDN.

Oba API są dokumentowane w różnych miejscach, nie wiem czemu w przypadku DXa wymieniamy tylko SDK i MSDN, a w przypadku OpenGla sugerujemy że dokumentacji jest więcej :)
OK, tu masz rację, te punkty były bez sensu. Główną dokumentację dostarcza producent każdej biblioteki - ta do DirectX jest zawarta w SDK, a ta do OpenGL jest udostępniona do pobrania przez Khronos. Usunąłem z Wiki te punkty o dokumentacji.

Cytuj
Cytuj
    Niektórzy mówią, że jest prostszy do nauczenia dla początkujących. Inni, że uczy złych nawyków.

Wiki przylepiłaby tutaj łatkę: "Stwierdzenie zwodnicze". Kto tak twierdzi? Paru facetów przy piwie? Dlaczego jest prostszy do nauczenia? Jakie to są te złe nawyki? :)
Ja nadal uważam, że to stwierdzenie jest prawdziwe. Ale faktycznie nie brzmi dość "encyklopedycznie", dlatego uzupełniełem je o przykłady.

Cytuj
Cytuj
    Dostępne jest w Sieci chyba więcej edukacyjnych przykładów programów, niż dla DirectX.

Więcej tak. Inna sprawa jakości (jakoś nie słyszę dużo pochwał na temat NeHe :) ). Uwaga taktyczna: statystyka wśród liczby książek układa się raczej na odwrót, co oznacza że wydawcy chętniej inwestują pieniądze w podręczniki ze stajni MSa = zakładają więc że jest na nie lepszy rynek zbytu, bo wydawnictwa nie są organizacjami charytatywnymi :)
Jakość to sprawa bardziej subiektywna niż ilość i nie ma o niej mowy w tym punkcie. A co do ilości książek - ufam że masz rację i dopisuję informację o tym do Wiki.

Cytuj
Cytuj
    Istnieje wiele bibliotek uzupełniających OpenGL w programowaniu gier, np. OpenAL do dźwięku czy DevIL do obsługi formatów graficznych.

Dlaczego to samo nie jest wymienione przy DirectXie? DirectX też ma mnóstwo fajnych dodatkowych bibliotek dostępnych w sieci, które realizują średniopoziomowe taski (od VFS, do liczenia Heightmap :) )
Tu masz absolutną rację. Chodzi mi w tym punkcie bardziej o biblioteki, które mają API inspirowane stylem OpenGL. Ale faktycznie to był punkt bez sensu. Już go usunąłem.

Cytuj
Cytuj
Używał go John Carmack w swoich grach - Quake i Doom.

Używał też czystego C. Na kiego komuś polimorfizm? :D
Racja, to też nie jest mocny argument. Szczególnie, że już się nawrócił na jedyne słuszne API graficzne :D (Nie wiem, czy używa też już C++ i programowania obiektowego :))

Podsumowując: Czepiasz się :P Ale dzięki za uwagi, które pomogły ulepszyć ten tekst.
Tytuł: Odp: OpenGL vs DirectX
Wiadomość wysłana przez: yarpen w Październik 19, 2010, 22:10:07

Racja, to też nie jest mocny argument. Szczególnie, że już się nawrócił na jedyne słuszne API graficzne :D (Nie wiem, czy używa też już C++ i programowania obiektowego :))
Uzywa, wystarczy obejrzec kod do Dooma3. Carmack napisal zreszta niedawno, ze DirectX9 na X360 to najlepsze API z jakim kiedykolwiek pracowal.
Tytuł: Odp: OpenGL vs DirectX
Wiadomość wysłana przez: Avaj w Październik 19, 2010, 22:33:19
Reg, co jest złego w stopniach?
Tytuł: Odp: OpenGL vs DirectX
Wiadomość wysłana przez: raver w Październik 19, 2010, 23:47:17

Racja, to też nie jest mocny argument. Szczególnie, że już się nawrócił na jedyne słuszne API graficzne :D (Nie wiem, czy używa też już C++ i programowania obiektowego :))
Uzywa, wystarczy obejrzec kod do Dooma3. Carmack napisal zreszta niedawno, ze DirectX9 na X360 to najlepsze API z jakim kiedykolwiek pracowal.

Skąd masz kod do doom 3? Carmack jeszcze go nie udostępnił :/.

@Edit: O, thx. Myślałem, że doom 3 = id tech 4.
Tytuł: Odp: OpenGL vs DirectX
Wiadomość wysłana przez: Avaj w Październik 19, 2010, 23:51:04
http://www.iddevnet.com/doom3/downloads.php tu chyba coś jest
Tytuł: Odp: OpenGL vs DirectX
Wiadomość wysłana przez: Reg w Październik 20, 2010, 18:40:48
Reg, co jest złego w stopniach?
Radiany są bardziej naturalną jednostką do reprezentowania kątów w programowaniu gier. Nie mówię tu o ich uzasadnieniu matematycznym, bo to nie jest ważne i teoretycznie kąty możnaby równie dobrze mierzyć w czymkolwiek - stopniach, radianach, obrotach albo jeszcze czymś innym. Ale systemowy sinus i cosinus przyjmuje radiany, wszelkie biblioteki graficzne i fizyczne (oprócz OpenGL...) również, więc posługując się stopniami trzeba te kąty konwertować, co zabiera dodatkowy czas. Ale to akurat drobiazg. Jeżeli masz lepszy argument do wpisania tam na Wiki, to dawaj :)
Tytuł: Odp: OpenGL vs DirectX
Wiadomość wysłana przez: skoti w Październik 20, 2010, 18:57:03
Radiany są bardziej naturalną jednostką do reprezentowania kątów w programowaniu gier. Nie mówię tu o ich uzasadnieniu matematycznym, bo to nie jest ważne i teoretycznie kąty możnaby równie dobrze mierzyć w czymkolwiek - stopniach, radianach, obrotach albo jeszcze czymś innym. Ale systemowy sinus i cosinus przyjmuje radiany, wszelkie biblioteki graficzne i fizyczne (oprócz OpenGL...) również, więc posługując się stopniami trzeba te kąty konwertować, co zabiera dodatkowy czas. Ale to akurat drobiazg. Jeżeli masz lepszy argument do wpisania tam na Wiki, to dawaj :)
Bo ja wiem czy bardziej naturalną? Jest to obojętne imo, co do bibliotek fizycznych/graficznych to prawie wszystkie mogą przyjmować zarówno stopnie jak i radiany, a co do samego OpenGL to już nie przyjmuje on stopni, bo wszystko co z nimi związane było wyleciało w 3.x i teraz albo piszesz sam obsługę macierzy i ogólnie matmy, albo używasz jakiejś gotowej biblioteki.
Tytuł: Odp: OpenGL vs DirectX
Wiadomość wysłana przez: Dab w Październik 20, 2010, 20:13:30
Cytuj
oprócz OpenGL...

A gdzie to złe i niedobre OpenGL używa stopni? (poza FOV w macierzy perspektywy)
Tytuł: Odp: OpenGL vs DirectX
Wiadomość wysłana przez: Kos w Październik 20, 2010, 20:22:02
glRotatef!
Tytuł: Odp: OpenGL vs DirectX
Wiadomość wysłana przez: FoToN w Październik 20, 2010, 20:27:36
Jeżeli dobrze pamiętam wszystkie funkcje pokroju glRotatef, glTranslatef itd. zostały wywalone w gl 3.x No ale ja kodze w dx więc się nie znam :)
Tytuł: Odp: OpenGL vs DirectX
Wiadomość wysłana przez: Kos w Październik 20, 2010, 21:29:42
Jeżeli dobrze pamiętam wszystkie funkcje pokroju glRotatef, glTranslatef itd. zostały wywalone w gl 3.x No ale ja kodze w dx więc się nie znam :)

a co do samego OpenGL to już nie przyjmuje on stopni, bo wszystko co z nimi związane było wyleciało w 3.x
Tytuł: Odp: OpenGL vs DirectX
Wiadomość wysłana przez: FoToN w Październik 20, 2010, 21:45:45
a co do samego OpenGL to już nie przyjmuje on stopni, bo wszystko co z nimi związane było wyleciało w 3.x

glRotatef!

??
Tytuł: Odp: OpenGL vs DirectX
Wiadomość wysłana przez: Kos w Październik 20, 2010, 22:02:26
glRotatef wyleciało w 3.x. Dab pytał, gdzie stopnie były wcześniej, jak rozumiem.
Tytuł: Odp: OpenGL vs DirectX
Wiadomość wysłana przez: Shelim w Październik 20, 2010, 22:13:00
Dzięki Reg za odpowiedź :) Nie chodzi mi absolutnie żeby stawiać jedno API na piedestale - po prostu z kartką w ręku spisałem ile plusów/minusów jest pod każdym z nich i nie była to statystyka zbyt wyrównana - stąd wysnułem wniosek o stronniczości autora, zwłaszcza w momencie gdy niektóre z wymienionych plusów OpenGla są dyskusyjne, jak i niektóre wymienione minusy DXa.
PS> Szukając w Googlach "OpenGl Tutorial" ciężko trafić na opisane strony. MS uprzyjemnił życie początkującym - dzięki temu nie musimy panicznie szukać po Googlach "DirectX Tutorial" (zagadka, ile będzie wyników związanych z tutorialami do gier?) tylko mamy wszystko pod ręką :) Zgadzam się że to jest dyskusyjne. Dlatego najlepiej zawrzeć oba fakty: "SDK ma 300 mega, które zawiera to i to i to"

Ten zarzut w stronę linuksa jest zupełnie nietrafiony, bo linuksa w dużej mierze używają osoby chcące być legalne (ja używam z wygody, ale również brzydzę się piractwem i np. licencje na Windowsa w którym testuje swoje oprogramowanie, raz na dłuższy okres czasu (bo buduje też na linuksie windowsowe wersje), też mam legalny, jak również kilka gier). Co więcej ostatnio zostały opublikowane wyniki sprzedaży gier causalowych/indie (czyli takich jakie w większości tu powstają - np. Penumbra) oraz kwoty jakie byli skłonni zapłacić użytkownicy danego systemu (gracz sam podawał cenę za jaką chciał kupić grę) i wbrew stereotypom o których mówisz to właśnie użytkownicy Linuksa najwięcej byli skłonni zapłacić za gry (prawie 2x więcej niż na windowsie, a macos uplasował się pomiędzy), a zyski z platformy dorównywały tym z MacOS, a były 2x mniejsze od Windowsa (MacOS + Linux dawały w sumie tyle samo zysku co Windows, mimo dużo większej popularności i targetu). Jeśli uważasz, że jesteś skłonny do zrezygnowania z połowy zysków pisząc w Dx (bo koszty portu jak już piszesz w OpenGL z myślą o wielu platformach są bliskie 0$), i jeszcze większych zysków jeśli chcesz grę udostępniać na platformy mobilne (telefony i tablety z Androidem/iPhone i iPad), które ostatnio są bardzo łakomym kąskiem, a jest to po prostu OpenGL 4.1 bez kilku rzeczy (OpenGL ES 2.0), to spoko, jednak nie mów, że nie są to platformy warte zainteresowania (a ich użytkowników nie nazywaj piratami, bo sobie tak ubzdurałeś mimo, że na tych platformach piractwo to znikomy problem, tym bardziej w porównaniu z Windowsem).
Yay, podaj źródła - bom ciekaw :) A już zwłaszcza portowania za 0$ :) I to przy API które jest tak naprawdę tylko API graficznym - dochodzi sieć/dźwięki/muzyka/system plików/itp. Pomijając koszty testowania... :) Mój błąd że poleciałem z analogią do piractwa. Chodziło mi o to że Linuksowiec z natury niechętnie kupuje komercyjne oprogramowanie: na Linuxach rzadko widzę 3ds maxa, nie ważne czy piraconego czy legalnego. Często za to znajdę Blendera. Nie ma tu mowy o piractwie, no ale nikt zazwyczaj nie zarabia na sprzedaży Blendera... :)
Tytuł: Odp: OpenGL vs DirectX
Wiadomość wysłana przez: Avaj w Październik 20, 2010, 22:51:35
najlepsze tutoriale opengl 3.x to chyba są te http://www.arcsynthesis.org/gltut/

jest od początku tylko na programmable pipeline, jest sporo teorii ale bez wchodzenia w jakieś zbędne detale, wszystko jest krok po kroku tłumaczone, prawie jak książka
Tytuł: Odp: OpenGL vs DirectX
Wiadomość wysłana przez: Esidar w Październik 20, 2010, 23:39:01
Yay, podaj źródła - bom ciekaw :) A już zwłaszcza portowania za 0$ :)
Też jestem tego "magicznego portowania za 0$" :) A co linuxa i OGL'a to ostatnio Carmack stwierdził, że nie bardzo chce mu się już pisać specjalnych wersji pod linuxa i większy sens ma pisanie pod Windows a pod Linuxem odpalanie tego za pomocą Wine.
Tytuł: Odp: OpenGL vs DirectX
Wiadomość wysłana przez: skoti w Październik 21, 2010, 00:28:52
Jeżeli dobrze pamiętam wszystkie funkcje pokroju glRotatef, glTranslatef itd. zostały wywalone w gl 3.x No ale ja kodze w dx więc się nie znam :)
Tak zostały wywalone, tak samo jak gluPerspective (fov o którym Dab napisał w pytaniu, więc pytanie (które raczej miało być retoryczne, ale Dab zapomniał o rotacji ;p), o starsze wersje w których to było).

Yay, podaj źródła - bom ciekaw :)
http://www.wolfire.com/humble (http://www.wolfire.com/humble)

A już zwłaszcza portowania za 0$ :) I to przy API które jest tak naprawdę tylko API graficznym - dochodzi sieć/dźwięki/muzyka/system plików/itp. Pomijając koszty testowania... :)
Jak napisałem koszty są bliskie 0$ (dla mnie w tej chwili - jedno kliknięcie robi mi wersje 4 wersje (32bit windows, macos, 32bit i 64bit linux)). OpenGL jest jak mówisz tylko api graficznym, dlatego napisałem, że jak piszesz z myślą o wielu platformach - czyli używasz wieloplatformowych bibliotek. Co do sieć/dźwięk/muzyka to boost asio, OpenAL + OGG Vorbis (czyli to co i tak się wykorzystuje w grach nawet korzystając z Dx (z którego i tak korzystasz tylko z api grafiki - no i input, który bez problemu zastąpisz SDL)).
 
Mój błąd że poleciałem z analogią do piractwa. Chodziło mi o to że Linuksowiec z natury niechętnie kupuje komercyjne oprogramowanie: na Linuxach rzadko widzę 3ds maxa, nie ważne czy piraconego czy legalnego. Często za to znajdę Blendera. Nie ma tu mowy o piractwie, no ale nikt zazwyczaj nie zarabia na sprzedaży Blendera... :)
No widzisz, a ja znam kilka osób, które mają legalne licencje na Maya na linuksa, kilka które mają Softimage, kilka z Vray... a nie znam osobiście żadnej z legalnym komercyjnym softem na Windowsa, co przeczy twojej teorii na temat "natury", chociaż co do Blendera to faktycznie znajdziesz, bo jest to świetny soft (co jednak potwierdza stosunek do piractwa, bo mimo, że nie ma problemu ze ściągnięciem pirackich wersji z torrentów to zainteresowanie nielegalnym programem jest znikome i jeśli kogoś nie stać lub po prostu woli blendera to pozostaje legalny), a to że na Linuksie rzadko widzisz 3ds max to ja powiem więcej - pewnie nie widzisz go nigdy (bo to jeden z nielicznych programów do 3d które mają wersje Windows only). Osobiście mimo, że znam dużo więcej osób używających Windowsa niż Linuksa, to użytkownicy Windowsa przeważnie właśnie wolą nie płacić i ściągać piraty, niż tak jak użytkownicy Linuksa korzystać kupić, albo jak uważają, że nie warto za program płacić wybrać alternatywę (często lepszą niż płatny program).
Tytuł: Odp: OpenGL vs DirectX
Wiadomość wysłana przez: Dab w Październik 21, 2010, 11:40:06
Racja, nie wiem czemu byłem przekonany że glRotate przyjmuje radiany. Pewnie dlatego że ostatni raz używałem go w latach '70 :D

Esidar: koszty portowania Win->Lin oczywiście są (jeżeli nie piszemy od razu portable), ale jeżeli tak czy inaczej robimy wersję OSX? Tam tak czy inaczej używa się POSIX/BSD bo nie podejrzewam zdrowych na umyśle koderów o używanie Cocoa :) Więc jedyne co zostaje to samo tworzenie okna oraz niskopoziomowy input (z którym notabene na OSX są większe problemy niż na Linuksie).
Tytuł: Odp: OpenGL vs DirectX
Wiadomość wysłana przez: Kos w Październik 21, 2010, 12:06:00
to samo tworzenie okna oraz niskopoziomowy input
A to SDL nie funkcjonuje na OSX?
Tytuł: Odp: OpenGL vs DirectX
Wiadomość wysłana przez: Dab w Październik 21, 2010, 12:19:20
Cytuj
jeżeli nie piszemy od razu portable

Poza tym SDL nie zawsze jest dobrym rozwiązaniem, jako że wielu rzeczy nie obsługuje (np. systemów multi-monitorowych, niestandardowych kontrolerów czy chociażby Force Feedback).
Tytuł: Odp: OpenGL vs DirectX
Wiadomość wysłana przez: skoti w Październik 21, 2010, 13:54:05
Poza tym SDL nie zawsze jest dobrym rozwiązaniem, jako że wielu rzeczy nie obsługuje (np. systemów multi-monitorowych, niestandardowych kontrolerów czy chociażby Force Feedback).
Do input dobrym rozwiązaniem jest SDL1.3, który obsługuje Force Feedback na Windows/MacOS/Linux - do tworzenia okienek jednak jeszcze wybrać coś innego, bo ta część SDL1.3 jeszcze musi dojrzeć (ale ma wspierać multi-window i multi-display)
Tytuł: Odp: OpenGL vs DirectX
Wiadomość wysłana przez: Shelim w Październik 25, 2010, 20:10:35
Yay, podaj źródła - bom ciekaw :)
http://www.wolfire.com/humble (http://www.wolfire.com/humble)
Okej, przekonałeś mnie że Linuksowiec jest skłonny zapłacić więcej - nie przekonałeś mnie ani odrobiny ad piractwa. Znam podobnych odsetek wśród znajomych Linuksowców piratów jak i wśród znajomych Windowsowców. Różnica jest tylko ta, że na Windowsa jest więcej potencjalnych rzeczy do spiracenia i mniejsza świadomość ruchu open-source :)

Jak napisałem koszty są bliskie 0$ (dla mnie w tej chwili - jedno kliknięcie robi mi wersje 4 wersje (32bit windows, macos, 32bit i 64bit linux)).
Jedno drobne pytanko - czy cały budżet twojej gry zamyka się w 0$? :) W firmie dochodzą koszty, choćby QA czy Supportu. :)
 
No widzisz, a ja znam kilka osób, które mają legalne licencje na Maya na linuksa, kilka które mają Softimage, kilka z Vray... a nie znam osobiście żadnej z legalnym komercyjnym softem na Windowsa
Ile znasz jednych i drugich? Bo tak się składa że ja znam parę osób z legalnymi licencjami na Adobe CS czy 3ds Max na Windę (mówię o osobach które na swojej pracy zarabiają), natomiast nie kojarzę żadnego Linuxowca z Mayą (z Blenderem co najmniej kilku :) )
Tytuł: Odp: OpenGL vs DirectX
Wiadomość wysłana przez: skoti w Październik 25, 2010, 21:20:06
Jedno drobne pytanko - czy cały budżet twojej gry zamyka się w 0$? :) W firmie dochodzą koszty, choćby QA czy Supportu. :)
Chciałbym, aby tworzenie softy było takie tanie ;p. Nie rozumiem co zmienia w QA pisanie wieloplatformowe (IMO nawet poprawia jakość zerowym kosztem), a supportu nie wliczałem do kosztów tworzenia portu, a można je doliczyć do kosztów dystrybucji (kosz wyszkolenia supportu na osobę jest porównywalny niezależnie od platformy, a tylko ilość zatrudnionych osób jest mniejsza w wypadku mniej popularnych platform), ale też nie trzeba jak chociażby w wypadku produktów id software (wersje na mniej popularne platformy pozbawione są supportu).

Ile znasz jednych i drugich? Bo tak się składa że ja znam parę osób z legalnymi licencjami na Adobe CS czy 3ds Max na Windę (mówię o osobach które na swojej pracy zarabiają), natomiast nie kojarzę żadnego Linuxowca z Mayą (z Blenderem co najmniej kilku :) )
Legalnych użytkowników Adobe PS znam 3 na Windowsie (i 2ch na linuksie, którzy używają ich oprogramowania zgodnie z radami od Adobe (przez wine ;p)). Legalnych użytkowników komercyjnych aplikacji 3d (3ds/maya/softimage/lw) nie znam wśród użytkowników Windowsa (znam 2ch użytkowników bety Octane za którą zapłacili 100 euro które używają go na Windowsie, do zarabiania na wizualizacjach (np. dla firm motoryzacyjnych) i renderują w nim to co zrobili w Blenderze na Windowsie, ale obie osoby przechodzą z workflow na Linuksa, jak Octane będzie wydane jako stabilne (teraz jest to tylko renderer pomocniczy, ale w razie jak pojawią się błędy w tej wersji beta to korzystają z rendererów które używali wcześniej (a kupione mają już wersje Win to teraz nie będą kupować wersji Lin, skoro zaraz chcą porzucić go)))).
Użytkowników Maya na Linuksie znam dwóch z legalnym softem i trzech z legalnym Softimage.
Tytuł: Odp: Przeczytaj to, zanim otworzysz nowy wątek, żeby nie śmiecić
Wiadomość wysłana przez: Kos w Luty 27, 2011, 20:41:47
A w przypadku dylematu między wyborem dwóch bibliotek graficznych DirectX i OpenGL, do tej pierwszej bardziej przekonałoby mnie to, że DirectX dostarcza bezpłatny program do debugowania - PIX, który jest m.in. bardzo pomocny w ustalaniu "czemu na ekranie nic się nie wyświetla?".

<hint>GLintercept</hint>
Tytuł: Odp: OpenGL vs DirectX
Wiadomość wysłana przez: Limal w Luty 27, 2011, 22:49:46
Kos, dzięki. Warto było podyskutować. Teraz wiem, że jest coś jeszcze prócz gDEBuggera.
Tytuł: Odp: OpenGL vs DirectX
Wiadomość wysłana przez: Dab w Luty 27, 2011, 22:58:50
Jest jeszcze glslDevil. Choć tak po prawdzie to żaden z nich (o ile w ogóle zadziała ;)) się nie umywa do PIXa.
Tytuł: Odp: OpenGL vs DirectX
Wiadomość wysłana przez: mihu w Luty 28, 2011, 00:51:12
Czy któryś z tych programów posiada tak przydatną w PIXie możliwość przechodzenia po kolejnych draw callach, przeglądania buforów w nich rysowanych oraz danych przyjętych / wyplutych przez VS tudzież stanu framebuffera przed i po wykonaniu draw calla? Od niedawna muszę używać OpenGL i bardzo mi brakuje tej funkcjonalności PIXa. ;)
Tytuł: Odp: OpenGL vs DirectX
Wiadomość wysłana przez: skoti w Luty 28, 2011, 04:39:09
Czy któryś z tych programów posiada tak przydatną w PIXie możliwość przechodzenia po kolejnych draw callach, przeglądania buforów w nich rysowanych oraz danych przyjętych / wyplutych przez VS tudzież stanu framebuffera przed i po wykonaniu draw calla? Od niedawna muszę używać OpenGL i bardzo mi brakuje tej funkcjonalności PIXa. ;)
Chociażby gDEBugger, który dodatkowo od niedawna jest darmowy - pozwala ponad to na dużo więcej (chociażby edycja kodu shaderów na żywca).
Tytuł: Odp: OpenGL vs DirectX
Wiadomość wysłana przez: Limal w Kwiecień 23, 2011, 18:31:21
Chcę napisać mini-grę na swoim własnym frameworku (graficznie Street Fighter IV - czyli żaden Crysis). Mam już działający framework pod DirectX 9. Ponieważ po roku przerwy w używaniu obecnego frameworka zauważam jego wady, chcę napisać go w oparciu o inną filozofię.

Jakiej biblioteki graficznej użyć: DirectX 9, DirectX 11 czy OpenGL (jeśli tak, to który, bo ostatni raz miałem z nim do czynienia w wersji 1.5)?

Rozszerzę pytanie. Jak obecnie wygląda sytuacja w branży? Czy studia pragnące wydać swoją grę za minimum rok nadal starają się wykorzystywać API działające pod Windowsem XP? Zastanawiam się czy już teraz porzucić ten system. Z drugiej strony gra nie będzie potrzebowała SM 5.0. Właściwie to już teraz mogę zrezygnować z wyboru DirectX 11.

Pozostaje wybór między DirectX 9 a OpenGL.
Tytuł: Odp: OpenGL vs DirectX
Wiadomość wysłana przez: Avaj w Kwiecień 23, 2011, 18:54:07
jeśli chcesz inne platformy niż Windows/XBox/WP7 to OpenGL, nie ma innej możliwości. Na windzie - kwestia gustu.
Tytuł: Odp: OpenGL vs DirectX
Wiadomość wysłana przez: Frondeus w Kwiecień 23, 2011, 19:11:23
Imo OpenGL pojdzie na Xp :P Ale to zależy czy chcesz zrobić multiplatformowość.
Wtedy minimum 3.2. Ale DX to troche wiecej niż sam D3D. W openGL albo korzysta się z gotowych bibliotek typu GLM, Devil , albo pisze się obsługę wielu rzeczy samemu ;]
W każdym razie ja niedawno przeniosłem się na OpenGL (przedtem Dx9 i 10 ale bez wielkich "ficzerów") i nie czuję się jakoś szczególnie skrępowany czy też wolny ;P Api jak Api, chcesz to się nauczysz i będziesz dobrze korzystał z niego.

Edit:: Co do "OpenGL pojdzie na XP" mam na mysli oczywiscie  > 3.2 czyli odpowiedniki Dx10 itp (chyba). 
Tytuł: Odp: OpenGL vs DirectX
Wiadomość wysłana przez: Adam7 w Kwiecień 23, 2011, 20:17:12
Edit:: Co do "OpenGL pojdzie na XP" mam na mysli oczywiscie  > 3.2 czyli odpowiedniki Dx10 itp (chyba). 
I to właśnie kocham w OpenGL-u, wersja 3.x (odpowiednik DX10) czy wersja 4.x (odpowiednik DX11) pójdzie zarówno na Win 7, Viście jak i na XP, linuksie czy Mac-OSie bez problemów (kwestia tylko czy karta ją obsługuje), a nie jak to robi M$. To jest po prostu prostactwo (a raczej chęć czystego zysku) że w ten sposób wymuszają zmianę systemu na nowszy.
Tytuł: Odp: OpenGL vs DirectX
Wiadomość wysłana przez: rm-f w Kwiecień 23, 2011, 20:36:46
Chcę napisać mini-grę na swoim własnym frameworku (graficznie Street Fighter IV - czyli żaden Crysis).
Pozostaje wybór między DirectX 9 a OpenGL.
Właściwie to, da się uzyskać bardzo zbliżoną grafikę na czymkolwiek tylko chcesz, od opengl es 1.1 do DX11.
Nie grałem ale z filmów widać że:
Mapa statyczna + kilka elementów na klatkach/ zmieniającymi się teksturami (ten sam mechanizm).
Cienie tylko na podłodze (rzutowanie zwykłe można załatwić przez macierze, lecz będzie bez wygładzenia).
Postacie zawsze z tymi samymi animacjami.
Skybox, a raczej chyba jego brak n/c.
Efekty z powodu stałych animacji i niemożliwości zmiany pozycji kamery też nie są porażająco problematyczne.
Glow możliwe że da radę sfejkować.

No i brak oświetlenia.

Wniosek? Rób w czym Ci wygodniej, nawet portowanie z DX na pokładzie nie będzie trudne, jeżeli GUI napiszesz po ludzku.
Tytuł: Odp: OpenGL vs DirectX
Wiadomość wysłana przez: Limal w Kwiecień 23, 2011, 20:43:18
OK. Dziękuję za rady. W takim razie wrócę do korzeni. Wezmę się z powrotem za OpenGL. Dzięki.

Teraz już nie ma tego dylemtu co kiedyś, kiedy wybierało się między przenośnośnią a dostępnością narzędzi do debugowania.
Tytuł: Odp: OpenGL vs DirectX
Wiadomość wysłana przez: Avaj w Kwiecień 23, 2011, 20:44:37
OK. Dziękuję za rady. W takim razie wrócę do korzeni. Wezmę się z powrotem za OpenGL. Dzięki.

Teraz już nie ma tego dylemtu co kiedyś, kiedy wybierało się między przenośnośnią a dostępnością narzędzi do debugowania.
szczerze, jeśli wiesz co robisz i nie kodzisz jakichś zaawansowanych efektów, to bez debuggerów dasz sobie radę (nie mówię o optymalizacji, ale zwykle do tego etapu się nie dochodzi z amatorskimi grami 3d :P)
Tytuł: Odp: OpenGL vs DirectX
Wiadomość wysłana przez: Limal w Kwiecień 23, 2011, 20:58:44
Nie zgodzę się. Jest za wiele powodów uzyskania czarnego ekranu w grafice 3D (widziałem gdzieś post na blogu, gdzie autor wyliczył 40 powodów, dla których obiekt może się nie wyświetlać na ekranie). Słowem, po co używać printfów, kiedy można odpalić raz-dwa debugger.
Tytuł: Odp: OpenGL vs DirectX
Wiadomość wysłana przez: Limal w Kwiecień 23, 2011, 21:25:13
Co muszę ściągnąć, żeby bawić się OpenGLem w wersji 3? Co wybrać GLEW czy GLee?

Framework będę pisał w Visual C++ 2010.
Tytuł: Odp: OpenGL vs DirectX
Wiadomość wysłana przez: Adam7 w Kwiecień 23, 2011, 21:30:13
Co muszę ściągnąć, żeby bawić się OpenGLem w wersji 3?
Najnowsze stery do karty, no i oczywiście kartę z serii GF 8xxx, z radeonów to nie wiem

Co wybrać GLEW czy GLee?
To zależy co ci bardziej przypasuje, ja polecam oczywiście sam OpenGL :)
Tytuł: Odp: OpenGL vs DirectX
Wiadomość wysłana przez: Limal w Kwiecień 23, 2011, 21:33:47
OK. Dziękuję. W takim razie OpenGLa już mam.

Proszę o pomoc w wyborze biblioteki do rozszerzeń. GLEW czy GLee? Nie mam na razie czasu pisać samemu obsługi rozszerzeń.
Tytuł: Odp: OpenGL vs DirectX
Wiadomość wysłana przez: rm-f w Kwiecień 23, 2011, 21:42:48
Proszę o pomoc w wyborze biblioteki do rozszerzeń. GLEW czy GLee? Nie mam na razie czasu pisać samemu obsługi rozszerzeń.
To:
http://dabroz.scythe.pl/2009/09/14/opengl-3.2-functions-loading-on-win32
Tytuł: Odp: OpenGL vs DirectX
Wiadomość wysłana przez: hfjh w Kwiecień 23, 2011, 21:59:23
A nie wystarczy gl3.h (z OpenGL Regisrty) + makro GL3_PROTOTYPES?
(Pytam, bo można tego używać bez problemów pod Linuxem, ale pod Windowsem jeszcze nie miałem okazji)
Tytuł: Odp: OpenGL vs DirectX
Wiadomość wysłana przez: rm-f w Kwiecień 23, 2011, 22:16:39
A nie wystarczy gl3.h (z OpenGL Regisrty) + makro GL3_PROTOTYPES?
(Pytam, bo można tego używać bez problemów pod Linuxem, ale pod Windowsem jeszcze nie miałem okazji)
Pod Linuksem starczy.
Tytuł: Odp: OpenGL vs DirectX
Wiadomość wysłana przez: Frondeus w Kwiecień 23, 2011, 22:16:57
GLEW ;)
Świrus: W czym sposób Daba jest lepszy od gotowca?
Tytuł: Odp: OpenGL vs DirectX
Wiadomość wysłana przez: hfjh w Kwiecień 23, 2011, 22:20:59
Pod Linuksem starczy.
To wiem, codziennie tego używam ;) Mi chodziło o to, czy pod Windą też zadziała.
Tytuł: Odp: OpenGL vs DirectX
Wiadomość wysłana przez: Kos w Kwiecień 23, 2011, 22:21:22
Mój ulubiony gotowiec to gl3w (w sumie to magiczny skrypt pythona który na podstawie dowolnego nagłówka gl.h generuje co trzeba).
Tytuł: Odp: OpenGL vs DirectX
Wiadomość wysłana przez: rm-f w Kwiecień 24, 2011, 00:28:24
Świrus: W czym sposób Daba jest lepszy od gotowca?
Nie ładuje rozszerzeń...
Tytuł: Odp: OpenGL vs DirectX
Wiadomość wysłana przez: Adam7 w Kwiecień 24, 2011, 09:54:18
Nie ładuje rozszerzeń...
Proszę o pomoc w wyborze biblioteki do rozszerzeń.
Tytuł: Odp: OpenGL vs DirectX
Wiadomość wysłana przez: rm-f w Kwiecień 24, 2011, 11:33:50
Nie ładuje rozszerzeń...
Proszę o pomoc w wyborze biblioteki do rozszerzeń.
Cytuj
Co muszę ściągnąć, żeby bawić się OpenGLem w wersji 3?
Tytuł: Odp: OpenGL vs DirectX
Wiadomość wysłana przez: Limal w Kwiecień 24, 2011, 13:54:20
Jeśli nie trzeba używać rozszerzeń to super! Im mniej kodu dołączanego tym lepiej.

Generalnie chcę tylko mieć dostęp do OpenGL 3 i SM 3.0. To wszystko. Poczekam jednak z implementacją na po Świętach. Dziękuję za rady!
Tytuł: Odp: OpenGL vs DirectX
Wiadomość wysłana przez: Limal w Kwiecień 25, 2011, 09:32:43
Czy da się używać OpenGLa 3 w taki sposób, aby karty GeForce z serii 6xxx i 7xxx mogły odpalić grę napisaną pod nim?

Ponieważ gra nie będzie używała SM 4.0 nie chcę ograniczać potencjalnych odbiorców.
Tytuł: Odp: OpenGL vs DirectX
Wiadomość wysłana przez: t4fun w Kwiecień 25, 2011, 11:30:38
Te karty, a raczej ich sterowniki, nie stworzą ci kontekstu OpenGL 3.x, więc nie da rady.
Tytuł: Odp: OpenGL vs DirectX
Wiadomość wysłana przez: Adam7 w Kwiecień 25, 2011, 11:41:20
Ale możesz użyć OpenGL-a w wersji 2.x plus rozszerzenia (niestety i tak nie będą działać wszystkie dostępne pod 3.x ale zawsze to coś)
Tytuł: Odp: OpenGL vs DirectX
Wiadomość wysłana przez: Avaj w Kwiecień 25, 2011, 13:42:46
używaj 2.x. Większość rzeczy, które się kwalifikują pod "fajne opengl 3.0 z shaderami" można zrobić też pod opengl 2.x. Tak teraz do głowy mi przychodzi z tego czego nie masz pod 2.x - vertex array object, ale to i tak crap jest oraz uniform buffers, które są fajne ale da się bez nich żyć.
Tytuł: Odp: OpenGL vs DirectX
Wiadomość wysłana przez: rm-f w Kwiecień 25, 2011, 14:36:42
Tak teraz do głowy mi przychodzi z tego czego nie masz pod 2.x - vertex array object, ale to i tak crap jest oraz uniform buffers, które są fajne ale da się bez nich żyć.
VAO nieprzydatne? (AFAIK bez problemu dostępne jako rozszerzenie).
Ohh nie żartuj...... :) Pomimo że jest to tylko mały dodatek, to jest genialny.


A co do UB to są od 3.1 ;) nie od 3.0
Tytuł: Odp: OpenGL vs DirectX
Wiadomość wysłana przez: Limal w Kwiecień 25, 2011, 15:09:19
Dziękuję za rady. Użyję OpenGLa w wersji 2.x w takim razie. Ew. dla lepszych kart użyję nowych możliwości za pomocą rozszerzeń.

Czy uniformy, podobnie jak VAO, są dostępne jako rozszerzenia dla 2.x?
Tytuł: Odp: OpenGL vs DirectX
Wiadomość wysłana przez: rm-f w Kwiecień 25, 2011, 15:13:31
Czy uniformy, podobnie jak VAO, są dostępne jako rozszerzenia dla 2.x?
UBO teoretycznie jest:
Cytuj
Dependencies

    The OpenGL Shading Language (GLSL) is required. OpenGL 2.0 or the
    ARB_shader_objects extension is required.

    OpenGL 1.5 or ARB_vertex_buffer_object is required.

    This extension is written against the OpenGL 2.1 specification and
    version 1.20-8 of the OpenGL Shading Language specification.

    This extension interacts with OpenGL 3.0, ARB_geometry_shader4,
    ARB_texture_rectangle, EXT_gpu_shader4, EXT_texture_array,
    EXT_texture_integer, and EXT_texture_buffer_object.
Ale nie wiem jak w praktyce, bo mi driver nie obsługuje.
Tytuł: Odp: OpenGL vs DirectX
Wiadomość wysłana przez: Dab w Kwiecień 25, 2011, 15:29:52
UBO nie jest dostępne na sprzęcie 2.0. Najlepiej sprawdzić różnice (sprzętowe, nie API) między DX9 i DX10 -- są tam właśnie UBO/constant buffery, geometry shadery i tym podobne ficzerki. Spora jest też różnica w obsłudze skomplikowanych formatów tekstur/FBO. Karty OGL 3.0 łykną prawie wszystko, 2.0 są dużo bardziej grymaśne.
Tytuł: Odp: OpenGL vs DirectX
Wiadomość wysłana przez: Limal w Kwiecień 25, 2011, 15:37:27
Sytuacja widzę tak. Używam OpenGLa 2.x.

Na sprzęcie starszym od serii GeForce 8xxx i Radeon HD używam tylko tego co jest dostępne od serii 6xxx wzwyż (SM 3.0).

Na nowszym używam UBO i VAO. Choć chyba jedynie jako sztuka dla sztuki, bo skoro gra będzie wyciągała 60 FPSów na 6xxx, to nie musi wykorzystywać UBO, aby poprawić wydajność na 8xxx w górę.

Rodzi się pytanie. Jak używać OpenGLa 2.x, aby nie dołączać do EXEka za wielu zależności? Na GLEW lub GLee mogę się zgodzić, jeśli miałyby być to jedyne zależności.
Tytuł: Odp: OpenGL vs DirectX
Wiadomość wysłana przez: rm-f w Kwiecień 25, 2011, 15:47:44
Rodzi się pytanie. Jak używać OpenGLa 2.x, aby nie dołączać do EXEka za wielu zależności? Na GLEW lub GLee mogę się zgodzić, jeśli miałyby być to jedyne zależności.
A, poza GLEW/GLee to nic więcej poza np. GLFW do okienka. Zresztą GLee jak testowałem to od razu dodałem do projektu i jakiś zależności to nie miałem poza 2 (? pamięć zawodzi) plikami.
Tytuł: Odp: OpenGL vs DirectX
Wiadomość wysłana przez: Limal w Kwiecień 25, 2011, 15:51:36
OK. Fajnie! Dzięki, świrus.
Tytuł: Odp: OpenGL vs DirectX
Wiadomość wysłana przez: Avaj w Kwiecień 25, 2011, 16:41:05
Tak teraz do głowy mi przychodzi z tego czego nie masz pod 2.x - vertex array object, ale to i tak crap jest oraz uniform buffers, które są fajne ale da się bez nich żyć.
VAO nieprzydatne? (AFAIK bez problemu dostępne jako rozszerzenie).
Ohh nie żartuj...... :) Pomimo że jest to tylko mały dodatek, to jest genialny.


A co do UB to są od 3.1 ;) nie od 3.0
ta, VAO jest genialne, szczególnie w tym, że według benchmarków na opengl.org pogarsza ostro wydajność :)
Tytuł: Odp: OpenGL vs DirectX
Wiadomość wysłana przez: Kos w Kwiecień 25, 2011, 17:06:54
ta, VAO jest genialne, szczególnie w tym, że według benchmarków na opengl.org pogarsza ostro wydajność :)
Co konkretnie pogarsza wydajność? Przełączanie między różnymi VAO?
Tytuł: Odp: OpenGL vs DirectX
Wiadomość wysłana przez: rm-f w Kwiecień 25, 2011, 20:05:27
ta, VAO jest genialne, szczególnie w tym, że według benchmarków na opengl.org pogarsza ostro wydajność :)
Link?
Tytuł: Odp: OpenGL vs DirectX
Wiadomość wysłana przez: rm-f w Kwiecień 25, 2011, 20:39:41
Cytuj
void GLAPIENTRY
_mesa_BindVertexArray( GLuint id )
{
   GET_CURRENT_CONTEXT(ctx);
   bind_vertex_array(ctx, id, GL_TRUE);
}
czyli:
Cytuj
static void
bind_vertex_array(struct gl_context *ctx, GLuint id, GLboolean genRequired)
{
   struct gl_array_object * const oldObj = ctx->Array.ArrayObj;
   struct gl_array_object *newObj = NULL;
   ASSERT_OUTSIDE_BEGIN_END(ctx);

   ASSERT(oldObj != NULL);

   if ( oldObj->Name == id )
      return;   /* rebinding the same array object- no change */

   /*
    * Get pointer to new array object (newObj)
    */
   if (id == 0) {
      /* The spec says there is no array object named 0, but we use
       * one internally because it simplifies things.
       */
      newObj = ctx->Array.DefaultArrayObj;
   }
   else {
      /* non-default array object */
      newObj = lookup_arrayobj(ctx, id);
      if (!newObj) {
         if (genRequired) {
            _mesa_error(ctx, GL_INVALID_OPERATION, "glBindVertexArray(id)");
            return;
         }

         /* For APPLE version, generate a new array object now */
    newObj = (*ctx->Driver.NewArrayObject)(ctx, id);
         if (!newObj) {
            _mesa_error(ctx, GL_OUT_OF_MEMORY, "glBindVertexArrayAPPLE");
            return;
         }
         save_array_object(ctx, newObj);
      }
   }

   ctx->NewState |= _NEW_ARRAY;
   ctx->Array.NewState |= _NEW_ARRAY_ALL;
   _mesa_reference_array_object(ctx, &ctx->Array.ArrayObj, newObj);

   /* Pass BindVertexArray call to device driver */
   if (ctx->Driver.BindArrayObject && newObj)
      ctx->Driver.BindArrayObject(ctx, newObj);
}
Co przekłada nam się na ctx->Driver.BindArrayObject(ctx, newObj);
Patrząc na to idziemy dalej:
Cytuj
   /**
    * Device driver function pointer table
    */
   struct dd_function_table Driver;
Dalej, to jeszcze nie oznacza zależności od sterownika:
Więc idziemy do /drivers/common/driverfuncs.c i:

Cytuj
   /* APPLE_vertex_array_object */
   driver->NewArrayObject = _mesa_new_array_object;
   driver->DeleteArrayObject = _mesa_delete_array_object;
   driver->BindArrayObject = NULL;


IIIiiii....
(http://th05.deviantart.net/fs70/150/f/2010/170/4/8/FFFUUU_Rageman_1200px_by_CrusierPL.png)
Tytuł: Odp: OpenGL vs DirectX
Wiadomość wysłana przez: Kos w Kwiecień 20, 2012, 11:10:04
Czytamy, czytamy!

http://programmers.stackexchange.com/questions/60544/why-do-game-developers-prefer-windows/
Tytuł: Odp: OpenGL vs DirectX
Wiadomość wysłana przez: _OskaR w Sierpień 11, 2012, 00:08:44
http://www.wykop.pl/ramka/1226487/krotka-historia-opengl-vs-direct3d/
Edit:
Łe - już było w wersji eng.
Tytuł: Odp: OpenGL vs DirectX
Wiadomość wysłana przez: Mike148 w Sierpień 26, 2012, 18:28:21
Ciekawi mnie dlaczego OpenGl jest popularniejszy wśród amatorów lub początkujących niż DirectX. Nie chodzi mi oto że OpenGL jest prawie wszędzie. Tylko w Polsce np. Jest więcej książek o OpenGL, tutoriali, konkursów na uczelniach i więcej ludzi tego używa choć w komercyjnych produktach to DirectX jest o wiele popularniejszy.
Tytuł: Odp: OpenGL vs DirectX
Wiadomość wysłana przez: lukasyno w Sierpień 26, 2012, 19:20:47
Ciekawi mnie dlaczego OpenGl jest popularniejszy wśród amatorów lub początkujących niż DirectX. Nie chodzi mi oto że OpenGL jest prawie wszędzie. Tylko w Polsce np. Jest więcej książek o OpenGL, tutoriali, konkursów na uczelniach i więcej ludzi tego używa choć w komercyjnych produktach to DirectX jest o wiele popularniejszy.

powod jest bardzo prosty..
Ty robiac swoja amatorska gre chcialbys osiagnac jak najwiekszy target, wiec to przemawia za openGL, ty robiac swoja gre NIE MOZESZ MIEC WYMAGAN.. bo to Tobie zalezy zeby ktos w to pograł/zauwazył/zacząl wspolprace...
Co innego produkcja pokroju bf3, przy tak duzej i zaawansowanej grze wymagania sa wrecz zrozumiale dla graczy, ale dla tych samych graczy nie bedzie zrozumiale ze nie moga pograc w jakas bierke 2D na Macu/Linx bo sie ograniczyles do Windowsa.. a jak wiadomo trend jest taki ze Windows traci coraz wieksza czesc tortu glownie za sprawa apple.
Tytuł: Odp: OpenGL vs DirectX
Wiadomość wysłana przez: Mike148 w Sierpień 26, 2012, 21:53:14
Mac OSX wypiera windowsa bo na mac'u system to standard a aktualizacja kosztuje 30 euro czyli tak tanio w porównaniu do windowsa którego ad nowa kupujesz i u Apple wszystko jest fajne :D Po za tym na mac'u od odpalisz gry w DirectX na wineskinie.

Pytanie dlaczego wśród profesjonalistów DirectX jest popularniejszy ? Bo ułatwia wiele rzeczy i daje większą kontrolę ! Ciekawi mnie jak jest przy składaniu podania ? Jakbyśmy się przyjmował np. do EA czy Techlandu to znajomość którego API jest ważniejsza ? DirectX !!!

Co do trafiania do szerszej grupy to trochę prawda lecz kto z warsztatu wypromował grę i na niej zarobił ? (oprócz urządzeń mobilnych )  Na cały świat jest mało takich przypadków jak np. Angry Birds (który jest na urządzenia mobilne ) czy Minecraft.

EDIT // Nie ma żadnych książek o DirectX tylko dlatego że amatorzy używają openGl ? Co z zawodowcami ?

Drugie pytanie to jak jest teraz z implementacją openGl'a na różnych kartach czy dalej jest tak że na jednych działa a na drugich nie ?
Tytuł: Odp: OpenGL vs DirectX
Wiadomość wysłana przez: Krzysiek K. w Sierpień 27, 2012, 12:20:38
Cytuj
Mac OSX wypiera windowsa
Ciekawe skąd wziąłeś te statystyki. Przeglądając różne źródła w sieci Windows króluje obecnie na 70-88% kompów.

Cytuj
Nie ma żadnych książek o DirectX tylko dlatego że amatorzy używają openGl ? Co z zawodowcami ?
Że nie ma, to może zbyt mocno powiedziane, ale generalnie to samemu nie pojmuję sensu istnienia książek o danym API. Przecież masz za darmo dokumentację w sieci - Direct3D Reference, czy OpenGL Specification.
Tytuł: Odp: OpenGL vs DirectX
Wiadomość wysłana przez: Mike148 w Sierpień 27, 2012, 18:56:46
Ciekawe skąd wziąłeś te statystyki. Przeglądając różne źródła w sieci Windows króluje obecnie na 70-88% kompów.
Że nie ma, to może zbyt mocno powiedziane, ale generalnie to samemu nie pojmuję sensu istnienia książek o danym API. Przecież masz za darmo dokumentację w sieci - Direct3D Reference, czy OpenGL Specification.

Ja preferuje książki. Z dokumentacji nie poznasz też różnych technik używania tego API. Według mnie dokumentacja to nie jest rzecz do nauki tylko do pomocy przy programowaniu. Co prawda w Polsce brakuje i książek, i tutoriali do wszystkiego.
Tytuł: Odp: OpenGL vs DirectX
Wiadomość wysłana przez: Frondeus w Sierpień 27, 2012, 19:35:54
No to dokumentacja + GPU gems :)
Tytuł: Odp: OpenGL vs DirectX
Wiadomość wysłana przez: Xender w Sierpień 27, 2012, 19:50:56
GPU gems to jeszcze coś innego - przegląd wysokopoziomowych technik programowania grafiki. Co innego reference (dokumentacja), co innego wprowadzenie (tutorial, książka), a co innego przykład zastosowania. I wszystkie są potrzebne.

Książki o DX/OGL służą nie zgłębieniu API (od tego jest dokumentacja), ani nie zaprezentowaniu efektywnych technik (GPU gems), a nauce podstaw programowania grafiki w ogóle, na przykładzie danego API. Powiedzieć, że są niepotrzebne bo jest dokumentacja to tak jak dać kandydatowi na programistę do przeczytania standard C++ -_-.
Tytuł: Odp: OpenGL vs DirectX
Wiadomość wysłana przez: Mike148 w Sierpień 27, 2012, 20:10:59
No cóż, pozostaje mi jedynie zrobić zakupy na amazonie i wciąż trollować OpenGl'a oraz narzekać na jego uczące złych nawyków ułatwienia i w ogóle dziwne API (maszyna stanów)
Tytuł: Odp: OpenGL vs DirectX
Wiadomość wysłana przez: m4tx w Sierpień 27, 2012, 20:19:57
Pytanie dlaczego wśród profesjonalistów DirectX jest popularniejszy ?
http://czytelnia.ubuntu.pl/index.php/2012/08/07/opengl-vs-direct3d-krotka-historia/ (http://czytelnia.ubuntu.pl/index.php/2012/08/07/opengl-vs-direct3d-krotka-historia/)

Bo ułatwia wiele rzeczy i daje większą kontrolę !
A konkretnie?

Swoją drogą - pisałem też jakiś czas temu o wadach DirectX-a: http://m4tx.pl/blog/2011/06/directx-vs-opengl-kolejna-porazka-microsoftu/ (http://m4tx.pl/blog/2011/06/directx-vs-opengl-kolejna-porazka-microsoftu/)
Tytuł: Odp: OpenGL vs DirectX
Wiadomość wysłana przez: Xender w Sierpień 27, 2012, 20:40:40
@up - oba artykuły słabo stoją z merytorycznością... Ten z Ubuntu.pl skraca historię, pokazuje tylko pewne punkty i wyciąga pochopne wnioski. Ten Twój to same wnioski bez argumentacji - jedyne, z czym można się zgodzić to przenośność, wsparcie dla starych Windówsów i architektura klient-serwer. To zwykłe podsycanie wojny "moje lepsze" za pomocą tekstów, w które zostało włożene więcej emocji i propagadny niż treści i poprawności. Dobry rant to dobrze uargumentowany rant, krzyczenie nie pomaga.

Przede wszystkim nie warto być zamkniętym na jedno rozwiązanie.
Tytuł: Odp: OpenGL vs DirectX
Wiadomość wysłana przez: Mike148 w Sierpień 27, 2012, 22:28:13
http://czytelnia.ubuntu.pl/index.php/2012/08/07/opengl-vs-direct3d-krotka-historia/ (http://czytelnia.ubuntu.pl/index.php/2012/08/07/opengl-vs-direct3d-krotka-historia/)
A konkretnie?

Swoją drogą - pisałem też jakiś czas temu o wadach DirectX-a: http://m4tx.pl/blog/2011/06/directx-vs-opengl-kolejna-porazka-microsoftu/ (http://m4tx.pl/blog/2011/06/directx-vs-opengl-kolejna-porazka-microsoftu/)

Twój artykuł wygląda trochę tak : Wady DirectX vs. Zalety OpenGL

PS. Nie tylko w algorytmach siedzisz jak widzę :D
Tytuł: Odp: OpenGL vs DirectX
Wiadomość wysłana przez: Frondeus w Sierpień 28, 2012, 00:08:39
Na część z tych argumentów może i nie ma dowodu. Część jest prawdziwa lecz autor nie przedstawił przykładów. Zaś część to racja.
Tytuł: Odp: OpenGL vs DirectX
Wiadomość wysłana przez: Krzysiek K. w Sierpień 28, 2012, 01:01:40
Cytuj
http://czytelnia.ubuntu.pl/index.php/2012/08/07/opengl-vs-direct3d-krotka-historia/
A konkretnie?
W momencie dotarcia do słów "I tak ku zaskoczeniu wszystkich w 1996 roku idSoftware zdecydowało się na wydanie prawdziwej gry komputerowej z wykorzystaniem OpenGL lekceważąc zupełnie Direct3D." straciłem jakąkolwiek wiarę w rzetelność autora.

Inna kwestia, że autor ochoczo rozpisuje się o sytuacji przed Direct3D 9, a ostatnich kilka lat podsumowuje bardzo krótkim i bardzo niecelnym rozdziałem. ;)


Drugi artykuł? No to jedziemy! :)
Cytuj
natomiast OpenGL dostępny jest na Windowsa, Mac OSa, Linuksa, PlayStation 3 i wszystkie inne popularne systemy (w tym systemy mobilne)
Na PS3 i systemach mobilnych nie ma OpenGL. Jest OpenGL ES, a to co innego niż OpenGL. Poza tym na PS3 żadne szanujące się studio z OpenGL (ES) nie korzysta - są wydajniejsze sposoby programowania GPU (bezpośrednie wysyłanie poleceń).

Cytuj
Starsze Windowsy nie obsługują nowych DirectXów. Wszystkie obsługiwane przez OpenGLa systemy, nawet bardzo stare obsługują najnowszego OpenGLa.
Proszę mi pokazać działającego Windowsa 3.11 z OpenGL 4.0. Problem: stare systemy nie obsłużą płyty z PCI-E. ;)

Cytuj
OpenGL jest (często – zależnie od implementacji) szybszy.
G-prawda. Wyniki benchmarków są z reguły zbliżone. Autor nie zgłębił dostatecznie tematu.

Cytuj
W OpenGLu najnowsze technologie są implementowane wcześniej niż w DirectXie dzięki rozszerzeniom – np. technologia teselacji która jest tak reklamowana przez Microsoft, producentów gier, czy czasopisma była dostępna w OpenGLu 3 lata wcześniej.
Tesselacja jest w:
- DirectX 11 - release October 22, 2009
- OpenGL 4.0 - release March 11, 2010
Nie mam pojęcia jakiego fonta autor używa, że -1 wygląda jak 3. ;)

Cytuj
Microsoft straszy użytkowników przekonując ich do DirectXa – tzw. FUD.
[[citation needed]] - osobiście nie byłem straszony i nie znam nikogo, kto by był.

Cytuj
Mylące kampanie reklamowe – niektórzy użytkownicy przekonywali się do nowego DirectXa, podczas gdy to samo można było uzyskać w starym edytując plik konfiguracyjny.
Również [[citation needed]].

Cytuj
OpenGL był początkowo lepiej napisany, potem Microsoft zaczął podkradać rozwiązania otwartej biblioteki.
Błąd. A raczej kompletna nieznajomość architektury systemu/driverów. OpenGL nie jest w ogóle napisany, jeżeli o kod chodzi - twórcy driverów pozostawieni są sami sobie. Za to MS sporo brudnej roboty odwala sam. W szczególności dostarcza kompilator HLSL.

Cytuj
Łatwiej jest się nauczyć obsługi OpenGLa niż DirectXa. Do OpenGLa jest ponadto więcej tutoriali i poradników w internecie.
OpenGL uczyłem się rok. DirectX'a 2 tygodnie. Co do drugiego zdania - [[citation needed]].

Cytuj
OpenGL jest biblioteką do grafiki, DirectX daje też rozwiązania do kontrolerów, internetu, dźwięku i tekstu – bezsens. (potem wydajność marna, a jak to mówią – „co jest do wszystkiego, to jest do niczego”)
Kolejna rażąca nieznajomość tematu. Komponenty DirectX łączy jedynie nazwa i w żaden sposób nie wchodzą ze sobą w interakcje. Równie dobrze można stwierdzić, że OpenGL zamula bo w pakiecie ma OpenAL i OpenCV.

Cytuj
DirectXa trzeba zazwyczaj dodatkowo doinstalować. OpenGL jest dostarczany wraz ze sterownikami do karty graficznej.
DirectX i sterowniki są dostarczane z Windowsem do wszystkich istniejących i spodziewanych sprzętów. Wsparcie OpenGL prawdopodobnie tez tam jest.

Cytuj
Żeby pisać aplikacje wykorzystujące OpenGL, nie trzeba nic doinstalowywać – odpowiednie nagłówki są instalowane zazwyczaj wraz z kompilatorem. Do DirectXa trzeba instalować SDK.
Żeby używać najnowszych featurów OpenGL musisz z reguły doinstalować najnowszy glext.h. Z reguły też jakąś bibliotekę ładującą te funkcje, bo robienie tego na piechotę jest raczej PITA. ;)

Cytuj
OpenGL działa na zasadzie klient-serwer, co oznacza, że można wyświetlić grafikę wyświetlaną przez OpenGL np. na zdalnym terminalu. DirectX nie daje takiej możliwości.
A jak często przeciętny zjadacz chleba używa tego w praktyce?
Tytuł: Odp: OpenGL vs DirectX
Wiadomość wysłana przez: Xender w Sierpień 28, 2012, 01:36:24
Proszę mi pokazać działającego Windowsa 3.11 z OpenGL 4.0. Problem: stare systemy nie obsłużą płyty z PCI-E. ;)
Oj, tutaj wiadomo o co chodzi. Windows XP anyone? Z tego co się orientuję, wydanie nowego DirectX'a na stare Windowsy nie stanowiłoby dla Microsoftu większego problemu technicznego - ale żaden kapitalista przy zdrowych zmysłach tego nie zrobi. Mamy więc sztuczne zawyżanie wymagań systemowych. Czy raczej traktowanie DirectX jako części systemu, podczas gdy OpenGL jest bardziej niezależny. Żeby nie było: nie oceniam tu postawy Microsoftu, a jedynie porównuję z sytuacją OpenGL.
Tytuł: Odp: OpenGL vs DirectX
Wiadomość wysłana przez: m4tx w Sierpień 28, 2012, 08:40:52
Cytuj
Proszę mi pokazać działającego Windowsa 3.11 z OpenGL 4.0.
Nie mówiłem o aż tak starych systemach ;) Jak już było wyjaśnione, mowa tu o Windowsie XP (którego wciąż dużo osób przecież używa), na którym DirectX-a 11 nie uświadczymy.

Cytuj
Mylące kampanie reklamowe – niektórzy użytkownicy przekonywali się do nowego DirectXa, podczas gdy to samo można było uzyskać w starym edytując plik konfiguracyjny.
Tutaj mowa była o pierwszym Crysisie i screenach pokazujących dobitnie wyższość DirectX-a 10 nad 9, a w sieci było pełno poradników, które pokazywały, jak uzyskać niemal identyczny efekt w starszej wersji DX-a.

Cytuj
OpenGL uczyłem się rok. DirectX’a 2 tygodnie
Jak najpierw uczyłeś się OpenGL-a, a potem DirectX-a to nic dziwnego ;p

Cytuj
[[citation needed]] – osobiście nie byłem straszony i nie znam nikogo, kto by był.
http://blog.wolfire.com/2010/01/Why-you-should-use-OpenGL-and-not-DirectX
Sekcja "2. FUD about OpenGL and Vista" (niżej jest też o wspomnianym wyżej Crysisie)
Tytuł: Odp: OpenGL vs DirectX
Wiadomość wysłana przez: Krzysiek K. w Sierpień 28, 2012, 09:31:08
Cytuj
Tutaj mowa była o pierwszym Crysisie i screenach pokazujących dobitnie wyższość DirectX-a 10 nad 9
No dobra, ale w tym to MS nie maczał już palców.

Cytuj
a w sieci było pełno poradników, które pokazywały, jak uzyskać niemal identyczny efekt w starszej wersji DX-a
...wymagając jednocześnie sprzętu kompatybilnego z DirectX 10. ;) DirectX 10 popchnął do przodu i wymusił parę mocnych featurów na kartach, które mogły być zaimplementowane w DX 9, ale nikt się o to nie kwapił. A mowa tu o blendingu dla rendertargetów HDR, porządnym vertex texture fetchu, czy nawet o wsparciu filtrowania floatowych tekstur. DirectX 10 nałożył ścisłe wymagania, jakie minimum ma być i posprzątał cały sajgon, który się utworzył w tym temacie.

Cytuj
Jak najpierw uczyłeś się OpenGL-a, a potem DirectX-a to nic dziwnego ;p
Tak, ale mimo wszystko podważa Twoją wypowiedź. ;)

Ale mimo wszystko jest w tym nieco smutnej prawdy - w OpenGL nie poznałem wszystkich featurów, bo mnie momentami po prostu odrzucało. Zwłaszcza od PBufferów. :)
Tytuł: Odp: OpenGL vs DirectX
Wiadomość wysłana przez: m4tx w Sierpień 28, 2012, 10:32:44
Swoją drogą - IMHO nie ma lepszej biblioteki. Podobnie jak nie ma systemu idealnego. Dla mnie zawsze Linux (a raczej jego dystrybucje, jeśli o OS-ach mówimy) i OpenGL będą lepsze, dla kogoś innego nie. Każdy system, biblioteka, czy cokolwiek innego ma swoje wady i zalety i nie w każdym przypadku można będzie użyć biblioteki X. Takie jest moje zdanie :)
Tytuł: Odp: OpenGL vs DirectX
Wiadomość wysłana przez: James w Sierpień 28, 2012, 11:43:36
...posprzątał cały sajgon, który się utworzył w tym temacie.
Dorzucę do tego zdania, że wywalili cały fixed pipeline, wszystko trzeba rysować z shaderem, co wg mnie było bardzo dobrym posunięciem ;)
Tytuł: Odp: OpenGL vs DirectX
Wiadomość wysłana przez: Xender w Sierpień 28, 2012, 12:32:13
@up - to samo zrobił OpenGL 3.3, tylko niektórzy lubią w dyskusjach rżnąć głupa z profilami.
Tytuł: Odp: OpenGL vs DirectX
Wiadomość wysłana przez: Krzysiek K. w Sierpień 28, 2012, 12:53:58
@up - to samo zrobił OpenGL 3.3, tylko niektórzy lubią w dyskusjach rżnąć głupa z profilami.
Rżnięcie głupa to twierdzenie, że profile w czymkolwiek pomagają. ;) Tak naprawdę, to tylko zamiecenie śmieci pod dywan, ale śmieci nadal tam pozostają. Jest tyle aplikacji korzystających z tych starych "profili", że driver nadal musi ten cały syf wspierać, jak również dowolną dozwoloną kombinację starej i nowej funkcjonalności, przez co cały driver staje sie bardziej opasły i podatny na błędy.

Nie ma to absolutnie nic wspólnego z tym, co zrobił MS w DirectX 10, czyli wyciął wszystko co nie jest niezbędne, pozwalając na lekkie i szybkie implementacje sterownika. Przy okazji jeszcze dopasował API do funkcjonalności GPU wprowadzając obiekty stanów, dzięki czemu przełaczanie tego może być szybkie i bezinwazyjne.
Tytuł: Odp: OpenGL vs DirectX
Wiadomość wysłana przez: bies w Sierpień 28, 2012, 13:08:31
Tesselacja jest w:
- DirectX 11 - release October 22, 2009
- OpenGL 4.0 - release March 11, 2010
Nie mam pojęcia jakiego fonta autor używa, że -1 wygląda jak 3. ;)
Tesselacja była dostępna jako rozszerzenie ATI w OGL właśnie jakieś 3 lata wcześniej. Inna sprawa, że nikt tego nie używał.

// edit
Albo może i nawet wcześniej, opowieści dziada z brodą:
http://rastergrid.com/blog/2010/09/history-of-hardware-tessellation/
Tytuł: Odp: OpenGL vs DirectX
Wiadomość wysłana przez: Krzysiek K. w Sierpień 28, 2012, 13:59:48
Cytuj
Tesselacja była dostępna jako rozszerzenie ATI w OGL właśnie jakieś 3 lata wcześniej.
No dobra, ale mówimy chyba o nowej tesselacji, a nie tej starej? Bo ta stara tesselacja ATI była równiez dostępna już daaawno w DX 9, a nowa tesselacja (DX 11) nie ma kompletnie nic wspólnego z tą starą. A jeżeli chodzi o podchody ATI do nowej tesselacji, to bym był mocno zdziwiony gdyby nie ATI nie wystawiło do tego rozszerzenia także pod DirectX.
Tytuł: Odp: OpenGL vs DirectX
Wiadomość wysłana przez: Avaj w Sierpień 28, 2012, 14:19:01
@up no jak to, przecież DX jest albo wspierany w całości albo wcale, co to za herezje z jakimiś niestandardowymi rozszerzeniami?
Tytuł: Odp: OpenGL vs DirectX
Wiadomość wysłana przez: Xender w Sierpień 28, 2012, 14:22:54
Rżnięcie głupa to twierdzenie, że profile w czymkolwiek pomagają. ;) Tak naprawdę, to tylko zamiecenie śmieci pod dywan, ale śmieci nadal tam pozostają. Jest tyle aplikacji korzystających z tych starych "profili", że driver nadal musi ten cały syf wspierać, jak również dowolną dozwoloną kombinację starej i nowej funkcjonalności, przez co cały driver staje sie bardziej opasły i podatny na błędy.
Profile powstały właśnie po to, aby driver nie musiał wspierać przestarzałych funkcjonalności. To, jakie profile implementuje sterownik zależy od producenta sprzętu.

Nie ma to absolutnie nic wspólnego z tym, co zrobił MS w DirectX 10, czyli wyciął wszystko co nie jest niezbędne, pozwalając na lekkie i szybkie implementacje sterownika. Przy okazji jeszcze dopasował API do funkcjonalności GPU wprowadzając obiekty stanów, dzięki czemu przełaczanie tego może być szybkie i bezinwazyjne.
Super, ale co z aplikacjami korzystającymi z funkcjonalności usuniętych w DirectX 10 i wyżej? Nie będą działać z nową wersją, czy jednak implementacja wszystkich staroci gdzieś jest?
Tytuł: Odp: OpenGL vs DirectX
Wiadomość wysłana przez: Krzysiek K. w Sierpień 28, 2012, 14:44:55
Cytuj
@up no jak to, przecież DX jest albo wspierany w całości albo wcale, co to za herezje z jakimiś niestandardowymi rozszerzeniami?
Czy jeżeli o czymś nie słyszałeś to od razu to jest herezja? Pod API siedzi driver, a driver może podkładać swoje rozszerzenia pod rzeczy, które są normalnie "undefined behavior".

Ciężko na poczekaniu mi cos znaleźc o DX 10/11, ale tutaj masz na przykład kompilację rzeczy, które ATI i NVidia przemyciły do DirectX 9:
http://aras-p.info/texts/D3D9GPUHacks.html

Do DX10/11 też przemycają. :)

Cytuj
Profile powstały właśnie po to, aby driver nie musiał wspierać przestarzałych funkcjonalności. To, jakie profile implementuje sterownik zależy od producenta sprzętu.
Taak... to tak jakbyś dał wybór mieć klientów / nie mieć klientów. Z marketingowego punktu widzenia, nie ma tutaj żadnego wyboru. Znasz może jakąś implementację sterownika komercyjnego GPU niewspierającą rzeczy deprecated?

Jedno szczęście, że tego błędu nie powtórzyli z OpenGL ES 1.1/2.0 (ale niestety wpakowali tam GLSL - gdyby nie to, OpenGL ES 2.0 byłby wręcz idealny).

Cytuj
Super, ale co z aplikacjami korzystającymi z funkcjonalności usuniętych w DirectX 10 i wyżej? Nie będą działać z nową wersją, czy jednak implementacja wszystkich staroci gdzieś jest?
Stare aplikacje korzystają ze starej biblioteki, która jest całkowicie osobnym bytem. Twórca sterownika ma tutaj dwie opcje:
- zainstalować osobne sterowniki DX9 i DX10 jako dwie zupełnie różne i odrębne DLLki,
- olać DX9 i zainstalować tylko DX10 - wtedy DX9 jest emulowany przez MS na driverze DX10
Tytuł: Odp: OpenGL vs DirectX
Wiadomość wysłana przez: Xender w Sierpień 28, 2012, 16:37:28
Stare aplikacje korzystają ze starej biblioteki, która jest całkowicie osobnym bytem. Twórca sterownika ma tutaj dwie opcje:
- zainstalować osobne sterowniki DX9 i DX10 jako dwie zupełnie różne i odrębne DLLki,
- olać DX9 i zainstalować tylko DX10 - wtedy DX9 jest emulowany przez MS na driverze DX10
A czym opcja 1 różni się od zaimplementowania pełnego OpenGL? Sterowniki i tak są monolityczne. Opcja 2 jest niemożliwa w OpenGL, ponieważ OpenGL definiuje sam interfejs, a DX częściowo implementację - ale faktycznie, daje wybór producentom sprzętu.
Tytuł: Odp: OpenGL vs DirectX
Wiadomość wysłana przez: Krzysiek K. w Sierpień 28, 2012, 16:51:05
Cytuj
A czym opcja 1 różni się od zaimplementowania pełnego OpenGL?
Tym, że sterownik DX9 i DX10 to dwa osobne i niezależne byty, budowane z różnych źródeł i używane niezależnie od siebie.

Cytuj
Sterowniki i tak są monolityczne.
No to żeś Pan chyba sterownika na oczy nie widział. :)

Szybki "dir /B nv*" na Windows\System32:
nvapi.dll
nvcompiler.dll
nvcuda.dll
nvcuvenc.dll
nvcuvid.dll
nvd3dum.dll
nvdecodemft.dll
nvoglv32.dll
nvwgf2um.dll
Wyraźnie widać, że OGL, D3D9 ("d3d") oraz D3D10 ("wgf") to osobne komponenty.

Cytuj
Opcja 2 jest niemożliwa w OpenGL, ponieważ OpenGL definiuje sam interfejs, a DX częściowo implementację - ale faktycznie, daje wybór producentom sprzętu.
No i to jest własnie problem z OpenGL - definiuje specyfikację i koniec. Twórcy sterowników są pozostawieni sami sobie i później człowieka cholera bierze jak na wychodzi w praniu że na Samsung Galaxy S użycie makr #define w GLSL potrafi zrobić crash aplikacji.

A co do wyboru już pisałem - z marketingowego punktu widzenia wyboru brak.
Tytuł: Odp: OpenGL vs DirectX
Wiadomość wysłana przez: Kos w Listopad 17, 2012, 12:32:30
Parę miesięcy się spóźniłem, ale...

http://www.extremetech.com/gaming/133824-valve-opengl-is-faster-than-directx-even-on-windows

Było parędziesiąt stron temu, że Valve portuje Source pod OpenGL-a. Wychodziłoby, że są z tego zadowoleni :).
Tytuł: Odp: OpenGL vs DirectX
Wiadomość wysłana przez: Krzysiek K. w Listopad 17, 2012, 13:28:56
Skoro Valve planuje się ze Steamem przeciwko MS zubuntować, to nie mają za bardzo wyjścia. ;)
Tytuł: Odp: OpenGL vs DirectX
Wiadomość wysłana przez: Frondeus w Listopad 17, 2012, 13:50:52
Co ciekawe nie trzeba być zapisanym do bety aby uruchomić Steam ;) Wystarczy go włączać nieco innym sposobem a sam ominie blokadę ;) Tak więc jeśli macie np L4D itp to już teraz można grać na linuxie.
Tytuł: Odp: OpenGL vs DirectX
Wiadomość wysłana przez: Avaj w Listopad 17, 2012, 14:12:18
Co ciekawe nie trzeba być zapisanym do bety aby uruchomić Steam ;) Wystarczy go włączać nieco innym sposobem a sam ominie blokadę ;) Tak więc jeśli macie np L4D itp to już teraz można grać na linuxie.
A co jak ci za to zablokują konto?
Tytuł: Odp: OpenGL vs DirectX
Wiadomość wysłana przez: JasonVoorhees w Listopad 17, 2012, 14:16:41
A co jak ci za to zablokują konto?
To stracą klienta?
Tytuł: Odp: OpenGL vs DirectX
Wiadomość wysłana przez: Avaj w Listopad 17, 2012, 14:40:25
To stracą klienta?
+ dostęp do wszystkich gier jakie kiedykolwiek kupili na steamie

witamy w cyfrowej dystrybucji
Tytuł: Odp: OpenGL vs DirectX
Wiadomość wysłana przez: JasonVoorhees w Listopad 17, 2012, 14:42:38
Jak mają klienta to jest wciąż szansa, że kupi kolejne gry. Witamy w świecie marketingu :D Jak ktoś abuse'uje łącze Neostrady, to też starają się nic nie robić z tym :D
Tytuł: Odp: OpenGL vs DirectX
Wiadomość wysłana przez: Frondeus w Listopad 17, 2012, 15:35:22
Czemu mieliby blokować? Jak ktoś nie ma wykupionych tych gier to i tak nie pogra,
Ja jako użytkownik NIC nie modyfikuje, nie naruszam licencji - uruchamiam Steam poprzez steam://store ;)
Tytuł: Odp: OpenGL vs DirectX
Wiadomość wysłana przez: Kos w Listopad 17, 2012, 17:22:06
zubuntować
I see what you did there ;-)

Posta wrzuciłem bardziej na zasadzie "ej, patrzcie, to jest szybkie w praktyce", niż "patrzcie, co robi Steam".
Czy Source to jedyny współczesny przypadek użycia OGL-a (nie ES) w AAA?
Tytuł: Odp: OpenGL vs DirectX
Wiadomość wysłana przez: Krzysiek K. w Listopad 17, 2012, 18:47:27
Cytuj
Czy Source to jedyny współczesny przypadek użycia OGL-a (nie ES) w AAA?
O Id Tech'ach wszystkich zapomniałeś.
Tytuł: Odp: OpenGL vs DirectX
Wiadomość wysłana przez: Dab w Listopad 17, 2012, 22:48:54
Czy Source to jedyny współczesny przypadek użycia OGL-a (nie ES) w AAA?

A porty wielu AAA na OSX to pies? :)
Tytuł: Odp: OpenGL vs DirectX
Wiadomość wysłana przez: magik6000 w Listopad 18, 2012, 00:37:04
wracając do offtopu:
Cytuj
Co ciekawe nie trzeba być zapisanym do bety aby uruchomić Steam ;) Wystarczy go włączać nieco innym sposobem a sam ominie blokadę ;) Tak więc jeśli macie np L4D itp to już teraz można grać na linuxie.
Jak włączyć steam'a wiem, ale jak tego L2D zainstalować??
btw. testował już ktoś nowe sterowniki nvidi (310)?
Tytuł: Odp: OpenGL vs DirectX
Wiadomość wysłana przez: Michal_ w Kwiecień 05, 2013, 21:08:40
Jeśli masz gdzieś użytkowników "innych systemów" i chcesz tym wspierać monopol MS, to wybieraj directx, jeśli nie Open GL które ma również odmianę ES na mobilne gry - android, ios, oraz przeglądarki w postaci web gl.
Tytuł: Odp: OpenGL vs DirectX
Wiadomość wysłana przez: Rokuzo w Kwiecień 06, 2013, 12:17:18
Błąd. Ja na przykład używam Windowsa (wspieram monopol?!), a pisałem pod nim w OGL, czemu? Bo API bardziej do gustu mi przypadło :) Tu nie chodzi o wspieranie monopolu MS czy nie. To wyłącznie kwestia gustu i bez przesady, nie bądźmy fanatykami tylko jednego API (bo nie lubimy polityki pewnej firmy, która generalnie powolutku się zmienia?) zwłaszcza, że warto i tak znać obydwa :)
Tytuł: Odp: OpenGL vs DirectX
Wiadomość wysłana przez: Kos w Kwiecień 06, 2013, 13:05:44
@up Odniosłem wrażenienie, że jest w branży jakiś konsensus odnośnie tego, że DX ma lepsze toole do profilowania i debugowania.
Tytuł: Odp: OpenGL vs DirectX
Wiadomość wysłana przez: JasonVoorhees w Kwiecień 06, 2013, 13:31:43
Błąd. Ja na przykład używam Windowsa (wspieram monopol?!), a pisałem pod nim w OGL, czemu? Bo API bardziej do gustu mi przypadło :) Tu nie chodzi o wspieranie monopolu MS czy nie. To wyłącznie kwestia gustu i bez przesady, nie bądźmy fanatykami tylko jednego API (bo nie lubimy polityki pewnej firmy, która generalnie powolutku się zmienia?) zwłaszcza, że warto i tak znać obydwa :)
A dlaczego używasz Windowsa? Po tak agresywnych akcjach popularyzacji Windowsa i innych narzędzi Microsoftu (np. IE) mających miejsce w przeszłości, ciężko teraz tu cokolwiek mówić o guście i obiektywnej ocenie. Gust o którym piszesz, został niestety wykreowany dość sztucznie.

API OpenGL, ok, poznałeś jak już nie byłeś tak podatny na sugestie. Ale takiego Windowsa się teraz dzieciom pokazuje od podstawówki...
Tytuł: Odp: OpenGL vs DirectX
Wiadomość wysłana przez: Avaj w Kwiecień 06, 2013, 13:57:37
A dlaczego używasz Windowsa? Po tak agresywnych akcjach popularyzacji Windowsa i innych narzędzi Microsoftu (np. IE) mających miejsce w przeszłości, ciężko teraz tu cokolwiek mówić o guście i obiektywnej ocenie. Gust o którym piszesz, został niestety wykreowany dość sztucznie.
Bo Windowsa można używać 10 godzin bez przerwy i żadnego sypnięcia po drodze, a na Linuxie, "fatal errory" przy zamykaniu, co jakiś czas jakiś "error: unknown error" albo się gdzieś grafika posypie "ale to nic, wystarczy zrestartować X-y" ;)
Tytuł: Odp: OpenGL vs DirectX
Wiadomość wysłana przez: JasonVoorhees w Kwiecień 06, 2013, 16:22:26
Zaprawdę dziwne miałeś przejścia z Linuksem.... No ale cóż... "u mnie działa" :P
Tytuł: Odp: OpenGL vs DirectX
Wiadomość wysłana przez: flexi w Kwiecień 06, 2013, 16:35:30
Kazde API ma swoje minusy i plusy. To kwestia gustu kto co wybierze, mi sie naprzyklad w Direct3D 11 podoba obiektowosc, a w OpenGL prostota :-)
Tytuł: Odp: OpenGL vs DirectX
Wiadomość wysłana przez: Kos w Kwiecień 06, 2013, 16:38:11
OK. Niniejszym udowodniliśmy, że problem "OpenGL vs. DirectX" daje się zredukować do "Linux vs. Windows", co pozwala włączyć go w poczet problemów klasy FWC, czyli flamewar-kompletnych. :-)
Tytuł: Odp: OpenGL vs DirectX
Wiadomość wysłana przez: Frondeus w Kwiecień 06, 2013, 17:29:04
"ale to nic, wystarczy zrestartować X-y"
Dlatego trwają prace nad alternatywami dla X.
Tytuł: Odp: OpenGL vs DirectX
Wiadomość wysłana przez: rocko w Maj 14, 2013, 16:27:28
Czytam, czytam(również kody źródłowe) i stwierdzam że:

Cytuj
Różnica między OpenGL a DirectX, jest jak różnica między Blondynką a Brunetką, kwestia gustu.
K.S. (czyli ja)
Tytuł: Odp: OpenGL vs DirectX
Wiadomość wysłana przez: Xirdus w Maj 14, 2013, 18:01:55
[grammar_nazi]

A "Blondynka" i "Brunetka" to narodowości, że z wielkiej?

[/grammar_nazi]
Tytuł: Odp: OpenGL vs DirectX
Wiadomość wysłana przez: rocko w Maj 14, 2013, 21:06:03
Cytuj
A "Blondynka" i "Brunetka" to narodowości, że z wielkiej?
Nie są zaznaczone dla podkreślenia ironii.

Po prostu jeżeli patrzeć na podstawowe funkcje tych api, to DirectX jest obiektowy, a OpenGl strukturalny i to są największe (jedyne istotne dla zwyłego programisty)różnice. Oczywiście pomijam wszelkie biblioteki które są potrzebne do korzystania z tych api, tu moim zdaniem wygrywa DirectX, bo dostajemy prawie gotowy pakiet, ale OpenGl za to jest dla mnie bardziej przejrzysty.

Reasumując, o gustach się nie dyskutuje.
Tytuł: Odp: OpenGL vs DirectX
Wiadomość wysłana przez: Avaj w Maj 14, 2013, 21:31:09
Dlatego trwają prace nad alternatywami dla X.
tak, GNU też pracuje nad jądrem żeby się uniezależnić od Linuxa :)
Tytuł: Odp: OpenGL vs DirectX
Wiadomość wysłana przez: Vipa w Maj 14, 2013, 22:33:18
A ja tam dalej uważam, że direct x ma fajniejsze logo. Swoją drogą to fajnie jak ma się wybór :).
Tytuł: Odp: OpenGL vs DirectX
Wiadomość wysłana przez: Krzysiek K. w Maj 14, 2013, 22:36:02
Cytuj
a OpenGl strukturalny
Pokaż chociaż jedną strukturę w API OpenGL. ;)
Tytuł: Odp: OpenGL vs DirectX
Wiadomość wysłana przez: Xirdus w Maj 14, 2013, 23:55:30
Paradygmat strukturalny nie ma nic wspólnego ze strukturami, ani z obiektowością.
Tytuł: Odp: OpenGL vs DirectX
Wiadomość wysłana przez: Krzysiek K. w Maj 15, 2013, 01:43:50
Paradygmat strukturalny nie ma nic wspólnego ze strukturami, ani z obiektowością.
Wiem. Ani w dodatku z żadnym API. ;)
Tytuł: Odp: OpenGL vs DirectX
Wiadomość wysłana przez: Paweł w Maj 15, 2013, 01:44:32
A to opengl nie jest obiektowy?
Tytuł: Odp: OpenGL vs DirectX
Wiadomość wysłana przez: Kos w Maj 15, 2013, 11:39:49
Jest obiektowy, API oparte o maszynę stanów trochę utrudnia korzystanie z tej obiektowości.

(Kaktus, czekamy!)
Tytuł: Odp: OpenGL vs DirectX
Wiadomość wysłana przez: MrKaktus w Maj 15, 2013, 16:33:57
http://forum.warsztat.gd/index.php?topic=27242.30

:}

PS:
Czy ktoś może w końcu po 55 stronach dyskusji poprawić temat na OpenGL vs Direct3D ?
Czy na prawdę porównujemy zestaw różnych API i funkcjonalności (DX) do jednego API graficznego ?
Tytuł: Odp: OpenGL vs DirectX
Wiadomość wysłana przez: Xion w Maj 15, 2013, 18:12:10
Jeśli Microsoft znowu nic nie zmienił, to rzecz nazywa się wciąż DirectX Graphics, nie Direct3D.
Tytuł: Odp: OpenGL vs DirectX
Wiadomość wysłana przez: MrKaktus w Maj 16, 2013, 14:40:54
Skoro już się w to bawimy:

DirectX Graphics – nieformalny komponent grupujący mniejsze, odpowiedzialne za różne aspekty wyświetlania grafiki:
DirectDraw – pierwotny komponent służący do obsługi grafiki rastrowej (bitmapową),
Direct2D – aktualny komponent odpowiedzialny za obsługę grafiki rastrowej,
Direct3D (D3D) – realizuje operacje związane z wyświetlaniem grafiki 3D,
DXGI (DirectX Graphics Infrastructure) – komponent infrastrukturalny DirectX 10 i nowszego, odpowiedzialny za logiczną reprezentację procesorów graficznych, monitorów, oraz zarządzanie buforowaniem obrazu,
DirectWrite – wspomaga renderowanie tekstu,

Czyli:
DirectX Graphics – nieformalny komponent grupujący mniejsze,
Direct3D (D3D) – realizuje operacje związane z wyświetlaniem grafiki 3D,
Tytuł: Odp: OpenGL vs DirectX
Wiadomość wysłana przez: Dab w Maj 16, 2013, 18:13:22
Pokaż chociaż jedną strukturę w API OpenGL. ;)


Trochę naciągane, ale jest GLsync ;)
Tytuł: Odp: OpenGL vs DirectX
Wiadomość wysłana przez: skmskm w Maj 17, 2013, 15:19:49
To nie API tworzy grę tylko programista wybór niema znaczenia, z dobrym programistą będzie dobra gra na każdym API.A ze złym przeciwnie.
Tytuł: Odp: OpenGL vs DirectX
Wiadomość wysłana przez: MrKaktus w Maj 17, 2013, 18:08:23
Dziękujemy za złote myśli, ale ten wątek nie istnieje po to aby wyciągać konstruktywne wnioski :}
Tytuł: Odp: OpenGL vs DirectX
Wiadomość wysłana przez: watchinus w Maj 17, 2013, 21:25:28
Ehh, te wojny OpenGL vs. Direct3d.

Directx (+: wydajny, wygodny) (-: glupia poltiyka microsoftu!, brak kompatybilnosci wstecz, tylko windows i konsole)
OpenGL (+: szybki, wieloplatformowy, fixed pipeline support) (-: rzadko uzywany w grach AAA, bugi, mniej wydajny)

A jeśli komuś naprawdę zależy to polecam używać obu a silnik mieć z dwoma portami. :)
Tytuł: Odp: OpenGL vs DirectX
Wiadomość wysłana przez: Krzysiek K. w Maj 17, 2013, 21:41:36
Cytuj
Directx (+: wydajny, wygodny) (-: glupia poltiyka microsoftu!, brak kompatybilnosci wstecz, tylko windows i konsole)
Tego braku kompatybilności to myślę że by sobie życzył niejeden fan OpenGL. Na szczęście w przypadku OpenGL ES już poszli po rozum do głowy.

Cytuj
OpenGL (+: szybki, wieloplatformowy, fixed pipeline support) (-: rzadko uzywany w grach AAA, bugi, mniej wydajny)
Z tą wydajnością przesadzasz - wydajność obu API jest bardzo porównywalna i właściwie wszystkie różnice sprowadzają się do jakości sterownika.
Tytuł: Odp: OpenGL vs DirectX
Wiadomość wysłana przez: Kafel w Styczeń 08, 2018, 22:22:47
Witam, jestem początkujący i nie wiem co wybrać OpenGL czy DirectX. Projekt gry mam na razie w głowie. Jako język programowania wybrałem C++ (właśnie czytam tutorial xiona) natomiast jako silnik to Unreal Engine. Co możecie mi poradzić?
Tytuł: Odp: OpenGL vs DirectX
Wiadomość wysłana przez: Sarann w Styczeń 10, 2018, 20:01:43
OpenGL, jeśli nie są ci obojętne cierpienia linuksiarzy.
Tytuł: Odp: OpenGL vs DirectX
Wiadomość wysłana przez: Kafel w Styczeń 11, 2018, 02:01:46
OpenGL, jeśli nie są ci obojętne cierpienia linuksiarzy.
A co z Vulkanem?

//Edit
Zobaczyłem ostatnio gameplay Dooma na Vulkanie z jakiejś konferencji gamingowej i się troche najarałem :)
Tytuł: Odp: OpenGL vs DirectX
Wiadomość wysłana przez: Sarann w Styczeń 11, 2018, 20:49:29
Vulkan is ok

Ale bądź gotowy na to, że wyświetlenie trójkąta na ekranie to 1200 linii kodów.
A ostatnio było tylko z 800, ehh. Coś się rozwija ten Vulkan ciągle.

https://github.com/SaschaWillems/Vulkan/blob/master/examples/triangle/triangle.cpp
Tytuł: Odp: OpenGL vs DirectX
Wiadomość wysłana przez: Kafel w Styczeń 12, 2018, 17:58:01
Kod jak kod - niewiele mi mówi poza objętością, ale z tym jakoś sobie poradze. Teraz mam dylemat bo wybrałem OpenGL ale doszedł Vulkan i w nim chciałbym programować, czekam tylko na jakąś dokumentację po polsku, bo narazie dokumentacje ze strony Khronosa czytam translatorem. Za Vulkanem przemawia to, że będę zaczynał od początku nie znając ani OpennGL ani DirectX, a grafika jest po prostu niesamowita.
Tytuł: Odp: OpenGL vs DirectX
Wiadomość wysłana przez: Sarann w Styczeń 12, 2018, 20:40:17
Grafika może być niesamowita bez względu na silnik, modele nie wyglądają ładniej w zależności od niego :)
Tytuł: Odp: OpenGL vs DirectX
Wiadomość wysłana przez: Kyroaku w Styczeń 12, 2018, 23:42:50
Cytuj
Za Vulkanem przemawia to, że będę zaczynał od początku nie znając ani OpennGL ani DirectX, a grafika jest po prostu niesamowita.
A ja się wciąz zastanawiałem co ma piernik do wiatraka i na cholere komu uczyć się Vulkana, chcąc zrobić grę w Unreal Engine.