Rascher Einstieg in 3D-Programmierung
-
@rüdiger: Tendentiell unterschreib ich deine Aussage, aber eine Frage hab ich gerade dennoch: wie viel hast DU schon mit DX und OGL gemacht?
-
OpenGL war für mich einfacher. Und wenn John Carmack OpenGL nimmt, dann nehm ich das auch. Warum sollen die Spiele nur unter Windows laufen?
-
xBlackKnightx schrieb:
OpenGL war für mich einfacher. Und wenn John Carmack OpenGL nimmt, dann nehm ich das auch. Warum sollen die Spiele nur unter Windows laufen?
JC nimmt nun aber d3d und er ist damit zufrieden und behauptet selbst kein verfechter von ogl/d3d zu sein, sondern dass er nimmt was gerade praktisch ist.
-
Mr_Funstick schrieb:
inp schrieb:
die d3d api ist eher objektorientiert gehalten,
und opengl eher prozedural.Ja aber ist denn nicht der modernere Ansatz die Objektorientiertheit? Sogar die neue PHP-Version hat auf OOP umgestellt. Warum ist dann OGL im akademischen bereich beliebter! Hat es irgendwelche Vorteile?
MFG Mr_Funstick
opengl ist eine freie schnittstelle, d3d microsoft lastig.
wobei beide das selbe machen (eines in grün, eins in blau).eins sag ich dir gleich, wennst was gscheites coden willst musst sowieso eine abstraktionsschicht schaffen, um opengl und d3d als renderer zu verwenden (austauschbar zur laufzeit zb).
aber so zum einlernen kannst dir eins von beiden aussuchen ( wie gesagt, das selbe in grün/blau)
-
this->that schrieb:
@rüdiger: Tendentiell unterschreib ich deine Aussage, aber eine Frage hab ich gerade dennoch: wie viel hast DU schon mit DX und OGL gemacht?
Ich hab nur ab und an mal mit OGL gespielt. Habe keinen Rechner der DX kann :p (Ich habe mir einfach mal die Freiheit rausgenommen und bin davon ausgegangen, das man mit DX auch bunte bildchen erstellen kann, wenn du darauf hinaus willst)
-
rüdiger schrieb:
this->that schrieb:
@rüdiger: Tendentiell unterschreib ich deine Aussage, aber eine Frage hab ich gerade dennoch: wie viel hast DU schon mit DX und OGL gemacht?
Ich hab nur ab und an mal mit OGL gespielt. Habe keinen Rechner der DX kann :p (Ich habe mir einfach mal die Freiheit rausgenommen und bin davon ausgegangen, das man mit DX auch bunte bildchen erstellen kann, wenn du darauf hinaus willst)
Anhand deiner Wortwahl und der Tatsache das du etwas idealisiert hast konnte ich schließen, dass du wenig bis garkeine praktische Erfahrung mit 3D-Programmierung hast. Ich kann dir versichern: Selbst wenn du alle Konzepte theoretisch beherrscht, wirst du immernoch ein bißchen länger als 2 Wochen brauchen um solche komplexen APIs zu meistern.
Sollte jetzt kein Flame sein... naja, du weißt schon wie ichs gemeint hab.
-
@this->that
Muss man die komplette API meistern?Selbst wenn macht das meistern der API wohl eher den kleineren Teil aus.
-
rüdiger schrieb:
@this->that
Muss man die komplette API meistern?nen grossteil muss man koennen, weil es nunmal komplexe zusammenhaenge gibt die du ueberblicken musst, ansonsten wirst du ziemlichen misst produzieren, auch falls du es schaffen solltest irgendwie ne graphik auf den bildschirm zu bringen.
Selbst wenn macht das meistern der API wohl eher den kleineren Teil aus.
das stimmt, aber die api ist immer ein teil des groesseren und so wie du c++ koennen musst, so gut musst du die API verstehen/koennen (und oft noch die hardware die dahinter haengt).
-
naja einen Vorteil hat DX schon, es gibt die *.x files für 3D Objekte, in Open GL muss man sich selbst ein Format basteln. Und wie man sich einen Exporter für ein 3D Modeller bastelt, muss man dann auch erst lernen. Und DX läuft nicht nur auf Windows, sondern auch auf der X-Box (is ja auch von Microsoft). Aber ich bin kein verfechter von DX, meine meinung ist, dass man möglicht unabhähngig (und das von Microsoft) bleiben soll, ich will nicht, dass irgendjemand, der meine Software gut findete auch gezwungen ist irgendetwas von Microsoft zu besitzen,
-
rapso schrieb:
xBlackKnightx schrieb:
OpenGL war für mich einfacher. Und wenn John Carmack OpenGL nimmt, dann nehm ich das auch. Warum sollen die Spiele nur unter Windows laufen?
JC nimmt nun aber d3d und er ist damit zufrieden und behauptet selbst kein verfechter von ogl/d3d zu sein, sondern dass er nimmt was gerade praktisch ist.
Quelle? Bisher ist schließlich noch jede id-Software-Engine OpenGL gewesen.
-
Und bisher hat er sich auch immer gegen DirectX 10 ausgesprochen.

-
.filmor schrieb:
rapso schrieb:
xBlackKnightx schrieb:
OpenGL war für mich einfacher. Und wenn John Carmack OpenGL nimmt, dann nehm ich das auch. Warum sollen die Spiele nur unter Windows laufen?
JC nimmt nun aber d3d und er ist damit zufrieden und behauptet selbst kein verfechter von ogl/d3d zu sein, sondern dass er nimmt was gerade praktisch ist.
Quelle? Bisher ist schließlich noch jede id-Software-Engine OpenGL gewesen.
wie glaubst du kann es sonst sein dass deren aktuelle engine die vorgestern gezeigt wurde auf mac,pac,ps3,xbox360 laufen wird, wenn er kein d3d9 benutzen wuerde?
sich auf eine api festzuschreiben ist wie nur auf einen arm und falls man die andere api ausschliesst, dann kann man sich ja auch ein arm abhacken.
zum lernen muss man sich mal von beiden apis mal ein tutorial anschauen und sehen was einem besser liegt und damit dann zuerst lernen und danach lernt man die zweite api. wenn man beides supergut kennen will, schreibt man sich nen wrapper.
-
Naja, völlig unabhängig davon, ob id-Software auch DirectX verwendet oder nicht. Auch auf der Xbox360 wird es wohl OpenGL geben, z.B. von einem 3rd-Party. OpenGL gibts auf jeder Konsole... selbst auf der Dreamcast konnte man eine OpenGL-Implementierung bei 3rd-Parties einkaufen, wenn einem Katana von SEGA oder Direct3D von WindowsCE nicht gepasst hat.
Aber zurück zu id-Software: ich bin der Meinung, mal in einem Interview gelesen zu haben, das id zukünftig auch auf DX setzen wird.
-
Nicht, dass mich dieser Thread sonst interessieren würde, aber da id tech 5 - wie bereits gesagt - auch Macs unterstützen wird, kann es auf keinen Fall DX-only sein.
-
Artchi schrieb:
Naja, völlig unabhängig davon, ob id-Software auch DirectX verwendet oder nicht. Auch auf der Xbox360 wird es wohl OpenGL geben, z.B. von einem 3rd-Party.
ganz sicher nicht, MS wird das wohl nicht zulassen und ohne deren lizens bekommst du dein SDK um das zu schreiben.
OpenGL gibts auf jeder Konsole... selbst auf der Dreamcast konnte man eine OpenGL-Implementierung bei 3rd-Parties einkaufen, wenn einem Katana von SEGA oder Direct3D von WindowsCE nicht gepasst hat.
jo, nur ist opengl meist die quick&dirty api die man mal fuer nen schnellen port nutzt, ansonsten benutzt man meist die lowlevel api (gibt es auch auf jeder konsole ausser xbox360), weil man sich die arbeit machen will die konsole perfekt auszunutzen.
Aber zurück zu id-Software: ich bin der Meinung, mal in einem Interview gelesen zu haben, das id zukünftig auch auf DX setzen wird.
fuer die die zu lame sind google zu nutzen
Carmack schrieb:
No, because the DX9 stuff—actually, DX9 is really quite a good API [application programming interface] level. Even with the D3D [Direct3D] side of things, where I know I have a long history of people thinking I’m antagonistic against it. Microsoft has done a very, very good job of sensibly evolving it at each step--they’re not worried about breaking backwards compatibility--and it’s a pretty clean API. I especially like the work I’m doing on the 360, and it’s probably the best graphics API as far as a sensibly designed thing that I’ve worked with.
-
Auf dieser Apple Konferenz hat JC eine Demo des neuen id-Projektes vorgeführt, das lief auf einem Mac. Also wird er wohl zumindest beides parallel machen. Wobei ich mich frage ob so ein Speed-Freak wie er überhaupt einen Abstraktionslayer nehmen würde oder alles von Hand portiert.
Krux schrieb:
Und DX läuft nicht nur auf Windows, sondern auch auf der X-Box (is ja auch von Microsoft).
Wow, das ist natürlich hyperportabel :p (Ok, auch wenn man sich für die X-Box für einige 10.000$ eine Lizenz und die Tools kaufen muss..) Aber auf der XBox läuft doch auch ein Windows-Kernel, wenn auch abgespeckt! :p
-
rüdiger schrieb:
Auf dieser Apple Konferenz hat JC eine Demo des neuen id-Projektes vorgeführt, das lief auf einem Mac. Also wird er wohl zumindest beides parallel machen. Wobei ich mich frage ob so ein Speed-Freak wie er überhaupt einen Abstraktionslayer nehmen würde oder alles von Hand portiert.
da muss man JC zurechnen dass er nicht so ein idiot ist der einfach drauf los optimiert, sondern an den stellen an denen es noetig ist, sieht man sehr gut z.b. im quake3 source, die kritischen stellen sind gut geloest waehrend die unkritischen stellen oft einfach nur die stumpfversion sind. das ist wohl eine wichtige qualitaet eines ein-mann-teams. so wird er wohl auch den renderteil weder in assembler noch unnoetig doppelt schreiben, sondern konzentriert seine arbeit wohl auf die kritischen stellen.
-
Also gut, um wieder zum Thema zurückzukommen: Ich habe mich nun für DirectX und C++ entschieden. Jetzt gehts ans lernen. Ansi C beherrsche ich ja an und für sich also sollte C++ kein allzu großes Problem werden, besonders darum weil ich andere objektorientierte Sprachen beherrsche.
Mein Problem ist jetzt DirectX: Wie kann ich am besten einsteigen? Um gute Lektüre werd ich wohl nicht rumkommen, aber welche? Es gibt viele Bücher, nur welches ist auch gut und für Einsteiger geeignet? Eventuelle Tutorials aus dem Net??
Wäre toll wenn ihr mich auch hierbei wieder beraten könnt!
MFG Mr_Funstick
-
Mr_Funstick schrieb:
Also gut, um wieder zum Thema zurückzukommen: Ich habe mich nun für DirectX und C++ entschieden. Jetzt gehts ans lernen. Ansi C beherrsche ich ja an und für sich also sollte C++ kein allzu großes Problem werden, besonders darum weil ich andere objektorientierte Sprachen beherrsche.
LOL! Wovon träumst du nachts? Bist wohl auch einer von denen, die meinen C und C++ ist das gleiche?
-
[...] besonders darum weil ich andere objektorientierte Sprachen beherrsche.
passt doch
