DirectX vs. OpenGL

Tags:    snak

<< < 12 > >>
Hvad er fordelene og ulemperne ved DirectX og OpenGL egentlig? Nu ved jeg godt at ingen vil sige hvad der er bedste, men hvad ville i anbefale til spilprogrammeringen på Windows?



16 svar postet i denne tråd vises herunder
3 indlæg har modtaget i alt 4 karma
Sorter efter stemmer Sorter efter dato
DirectX indeholder meget mere end OpenGL. OpenGL var lavet som et "værktøj" til at tegne grafik, mens DirectX var lavet som en hjælp til programmøre så alle standard funktioner til multimedia og spil var samlet og ikke behøver at blive genopfundet af hver enkelt hold programmøre!

Det du sammenligner er Direct3D mod OpenGL, tror jeg i hvert fald ;P
Direct3D opererer på bedste vis på software niveau'et og behøver derfor ikke at være understøttet af graffikkortene. OpenGL derimod er hurtigere fordi det på sin hvis er integreret i graffikkortene og kan derfor lettere og hurtigere kan få forbindelse. Det er derfor det ikke er understøttet af alle grafikkort!

Dit valg afhænger helt af formålet...

PS. Direct3D er altså ikke dårligt og du kan sagtens lave noget 3D og 2D grafik med det uden lagging! En fælles understøttelse er selvfølgelig mest optimalt, men også meget mere krævende :P

// Great programs often follow great brains!



Hvor meget er det egentlig at OpenGL er hurtigere end Direct3D?
Er det lettere at skrive det ene end det andet eller er det bare en smagsag?



De kan begge opnå cirka samme hasdighed. Med V-Sync ligger du på ca. 60-70 fps, og uden V-Sync kan de ligge opmod 800-900 fps.

MH.

The-Freak

Livet er for kort til at kede sig.



Hvad er fordelene og ulemperne ved DirectX og OpenGL egentlig? Nu ved jeg godt at ingen vil sige hvad der er bedste, men hvad ville i anbefale til spilprogrammeringen på Windows?


Direc3d er lavet til windows, og kun windows. OpenGL er platformsuafhængigt. Ingen grund til, at spilde mere tid på MS end nødvendigt er. Jeg husker en artikel fra John Carmack (han der laver motoren til Quake), and han foretrak OpenGL, fordi det var nemmere og hurtigere.

[Redigeret d. 20/06-04 13:12:38 af Michael Bjerregaard]



Hvad er fordelene og ulemperne ved DirectX og OpenGL egentlig? Nu ved jeg godt at ingen vil sige hvad der er bedste, men hvad ville i anbefale til spilprogrammeringen på Windows?


OpenGL er klart det bedste, men bliver så vidt jeg ved ikk understøttet af ældre grafikkort, og 2d grafikkort, hvorimod DirectX jo er en del af Windows, og der derfor ikke er nogen problemer der.

---------------------
Daniel Truelsen
http://truelsenweb.TK



Den 19-06-04 21:51 skrev Daniel Truelsen følgende:
-----------------------------------------------------------------------------
OpenGL er klart det bedste, men bliver så vidt jeg ved ikk understøttet af ældre grafikkort, og 2d grafikkort, hvorimod DirectX jo er en del af Windows, og der derfor ikke er nogen problemer der.

---------------------
Daniel Truelsen
http://truelsenweb.TK
-----------------------------------------------------------------------------
jeg mener bestemt at mit gamle voodoo2 kort kan høvle noget OpenGL.

hvad der er det "bedste" kommer an på hvor og hvordan det skal anvendes.



Det skal bruges til spilprogrammering, ikke helt sikker på genren, men 3D.
Nu ved jeg ikke så meget om DirectX, men ja det var Direct3D mod openGL jeg mente, måske også DirectShow har ikke helt styr på det:|



Hvor meget er det egentlig at OpenGL er hurtigere end Direct3D?
Er det lettere at skrive det ene end det andet eller er det bare en smagsag?





Er der slet ingen DirectX nørder(ment på den gode måde) der vil forsvare DirectX eller er OpenGL bare overlegen hvad angår grafik?




Direct3D opererer på bedste vis på software niveau'et og behøver derfor ikke at være understøttet af graffikkortene. OpenGL derimod er hurtigere fordi det på sin hvis er integreret i graffikkortene og kan derfor lettere og hurtigere kan få forbindelse. Det er derfor det ikke er understøttet af alle grafikkort!

Hvad så når Direct3D kører HAL(hardware abstraction layer) kører det så ikke også på hardware niveauet? Hvor stor chance er der egentlig for at Direct3D bliver nødt til at køre HEL(Hardware Emulation Layer) og hvor står forskel er der på HEL og HAL?


PS. Direct3D er altså ikke dårligt og du kan sagtens lave noget 3D og 2D grafik med det uden lagging! En fælles understøttelse er selvfølgelig mest optimalt, men også meget mere krævende :P

Når du siger at Direct3D ikke er dårligt vil det så sige at det på sin vis er tæt på/lige så god som openGL?



Direct3D er mere stabilt end OpenGL. Jeg ved ikke om det passer hele vejen rundt, men det forholder sig altså sådan når vi taler om Java programmering...

Her er foresten også en god sammenligning:
http://www.xmission.com/~legalize/d3d-vs-opengl.html

DirectX har desuden en hurtigere software rendering end OpenGL og det er lettere at integrerer 2d elementer. Desuden har DirectX alle de der ekstra features som jeg tidligere nævnte, fx DirectDraw og DirectPlay... Disse ting er lette at bruge, og er jo også en stor del af spillet!

Til OpenGL's forsvar har det en mere logisk opbygning med hensyn til programmeringssproget og er også hurtigere alt i alt...

// Great programs often follow great brains!



<< < 12 > >>
t