Tänkte att jag skulle lära mig en 3D API ordentligt nu till gymnasiet, så nu undrar jag: Direct3D eller OpenGL? Kan någon peka ut fördelar och nackdelar med de båda åt mig? D3D: http://www.gamedev.net Jag har slökollat lite på olika D3D 8.1 tutorials, och nu undrar jag: Är det lika jävligt som det verkar? I mina ögon såg vissa saker ut som ASm kod direkt till GPUn. Själva DirectX-kodandet är relativt enkelt om man ser till alla beräkningar som man måste skriva. I början kan DirectX-kodandet se svårt ut, men man vänjer sig, det är inte så svårt som det ser ut. Men ska du däremot koda lite mer avancerade saker som t.ex. skuggor eller kollisions detektion så är det inte direkt lätt. Lyckligtvis finns många avancerade funktioner inbyggda i DirectX, t.ex. TransformMatrix() och de är ofta listade i olika D3D tutorials, men de kodbitarna är inget som man behöver skriva själv. Jag började titta på detta för ett tag sedan, lyckades göra en enkel värld (väldigt enkel!) som man kunde gå runt i, lyckades fixa kollission detektion tillslut. Dock endast mellan en pixel och en vägg, om det är någon som är bra på detta så skulle jag uppskatta en artikel som tog upp grunderna och även lite mer avancerade funktioner som att köra kollission detektion på två 3d objekt som flyttar sig. Bra idé... Finns det någon där ute som kan Direct3D 8 som kan tänka sig att skriva? Att skriva en artikel som tar upp grunderna i D3D är ett ganska stort jobb, det skulle omfatta omkr. 40-50 A4 sidor och då skulle det inte vara speciellt ingående. Om du vill lära dig D3D på allvar så rekommenderar jag att du köper en bok som. Jag kan starkt rekommendera Special Effects Game Programming With DirectX, kolla på www.gamedev.net för mer info och fler tips. Om du inte vill kosta på en bok för lära dig OpenGL så har du en hel uppsättning artiklar här: http://www.gamedev.net/reference/list.asp?categoryid=31#117 som hänger ihop, ungefär som en bok. Här står nog alla nackdelar respektive fördelar med de båda API:erna: http://www.gamedev.net/reference/articles/article1775.asp Open GL är enklare, mycket enklare att koda, men det känns inte robust, Direct 3D känns mer robust, men är klurigare att programmera. Håller med om att Direct3D är bättre än OpenGL eftersom OpenGL inte har stöd för att ladda några modeller alls, d.v.s. att man måste skriva egna klasser för att ladda modeller. Plus att OpenGL har ett högerhänt korrdinat-system, vilket känns väldigt omvänt. DirectX är även mer väldokumenterat. Det är omöjligt att säga vilket som ÄR bäst. Jag tycker du ska läsa igenom artikeln som Peter nämde ovanför: http://www.gamedev.net/reference/articles/article1775.asp där står det ganska bra vilka fördelar och nackdelar som finns.D3D vs. OpenGL
Sv: D3D vs. OpenGL
Högre uppdateringsfrekvens med ny fräcka funtioner, har störst hårdvarustöd, funkar bara under windows 9x, 2000 och xp, klurigt att programmera i men ganska kul.
OGL:
Lite snålt med hårdvarustödet, speciellt på gamla kort, funkar i stort sett överallt, har inte kodat i ogl men det skall vara ganska trevligt har jag hört...Sv: D3D vs. OpenGL
här har folk slagits många gånger om vilket som är bäst.
sök i forumet.
/rSv: D3D vs. OpenGL
Sv: D3D vs. OpenGL
Sv: D3D vs. OpenGL
Någon som känner sig manad?Sv: D3D vs. OpenGL
Sv: D3D vs. OpenGL
Sv: D3D vs. OpenGL
Sv: D3D vs. OpenGL
Sv: D3D vs. OpenGL
Med Open GL så kan du ju också göra applikationer inte bara för PC.
Men jag tycker Direct 3D är det ända bästa!Sv: D3D vs. OpenGL
/ PeterSv: D3D vs. OpenGL
Om du väljer DirectX så tycker jag att det är lika bra att börja med directx9, ingen ide att börja med dx7 eller dx8.
DirectX är svårare att komma in i. Fast de har gjort detta betydligt enklare i de nyare versionerna av directX. När man väl kommit in i hur man ska koda så är directx tydligen väldigt härligt.