Tutorials für Fortgeschrittene? Engine-Design? Was-Muss-Drin-Sein?



  • Bin alle SDK-Tutorials durch, die Zerbst-Tutorials, viele andere Tutorials, uA einiges auf GameDev. Was nun?

    Möchte gerne ein InDoor-Game machen in dem sich Strichmännchen (= ich bin kein sonderlich guter Modeller ;)) gegenseitig bekämpfen. Da kann ich auch sehr gut weiter Charakter-Animation ausprobieren, da Strichmännchen im Prinzip nur noch aus Bones bestehen :).

    Damit der ganze Kram nun endlich mal nicht mehr über globale Variablen abläuft spiele ich nun langsam mit dem Gedanken eine kleine Mini-3D-OO-Engine zu bauen. Erste Testversuche laufen natürlich auch schon, hab meine früheren 3D-Erfahrungen zusammengeholt und kann schon mein Männchen anzeigen (wow ;)).

    Doch wo gibts Engine-Tutorials? Folgender Inhalt sollte behandelt werden:
    - 3D-Engine-Design allgemein
    - Fortgeschrittene Culling-Algorithmen
    - Fortgeschrittene Mesh-Sortier-Algorithmen für 3D-Renderer
    - Scene-Management allgemein
    - Was soll der User noch "sehen", was soll eine gute 3D-Engine alles verstecken?
    - Was ist heute an Spezialeffekten (abgesehen mal von BumpMapping - das kapier selbst ich bereits ;)) üblich und muss mit rein?
    - Charakter-Animation über Vertex-Shader (soll ja möglich sein)

    Bei Google finden sich Tutorials da nur sehr rar. Eventuell hat jemand von euch ein paar Geheimtips. Ansonsten: Gibts gute Bücher? Außer Zerbst-Std-Ich-Will-Doom-Programmieren-Teil-1-bis-3 😉

    In der FAQ sind zwar viele Links, aber die Tutorials gehen alle bis "Ein Dreieck 😮", http://www.games-net.de/resource.php hier hab ich jetzt noch ein paar interessante Artikel gefunden. Aber sonst 😞

    MfG SideWinder



  • Ahjo, hab vor kurzem entdeckt, dass sehr viele eigene Math-Libraries schreiben statt D3DX zu verwenden. Hat das denn überhaupt Sinn? Das sind wohl die optimiertesten Funktionen die eine Win-Lib je gesehen hat?!

    MfG SideWinder



  • SideWinder schrieb:

    Bin alle SDK-Tutorials durch, die Zerbst-Tutorials, viele andere Tutorials, uA einiges auf GameDev. Was nun?

    Am Besten alles vergessen.

    Ich empfehle nur erstmal was für Physik und Mathe zum Nachschlagen bereit zulegen. Das Meiste, was in Spielen benutzt wird, ist mathematisch gesehen trivial. Kompliziert wird es nur, weil es gleichzeitig noch schnell sein soll. Denke auch dran, das du keinen AAA-Titel machen willst (oder doch?). Brauchst du wirklich Bumpmapping? Hast du 'nen Grafiker, der dir überhaupt 'ne Bumpmap macht? Falls du nur eine "Engine" schreiben willst, wie wäre es einen Loader für irgendein gut dokumentiertes Mapformat zu schreiben, (z.b. Q 1-3) und den dann schrittweise auszubauen. Ansonsten brauchst du noch 'ne Menge Tools um Content zu erstellen.

    Mathefunktionen neucoden hat IMHO kaum Sinn, ausser du willst was darüber lernen oder später weg von DX portieren.

    Bye, TGGC (Der Held lebt!)



  • SideWinder schrieb:

    Ahjo, hab vor kurzem entdeckt, dass sehr viele eigene Math-Libraries schreiben statt D3DX zu verwenden. Hat das denn überhaupt Sinn? Das sind wohl die optimiertesten Funktionen die eine Win-Lib je gesehen hat?!

    Für die, die "offen" bleiben wollen und ggf. den Kram nach OpenGL porten.



  • SideWinder schrieb:

    Bin alle SDK-Tutorials durch, die Zerbst-Tutorials, viele andere Tutorials, uA einiges auf GameDev. Was nun?

    erstmal ein gutes buch lesen, wie man vernünftig programmiert, dieses turorial-geschiss bringt einen nirgendwo hin.
    und da du hier ja auch vom grundaufbau des gesamten spiels redest, empfehle ich gleich noch das hier dazu.

    desweiteren: fall bloss nicht in den optimierungs-wahn. wenn du anfängst, dir eigene libraries für jeden blödsinn zu schreiben, wirst du nie fertig. nimm alles, was du an guter, fertiger technik bekommen kannst und konzentrier dich auf das grundproblem.


  • Mod

    wenn du etwas coden möchtest, was es schon 'in gut' gibt, wäre es sicherlich das nützlichste, wenn du dir den source davon anschaust.
    Aus den büchern und tuts lernt man nur das, was andere sich aus bestehenden engines abgeschaut haben oder "ausdachten" und da hast du schon viel verschleiss,missinterpretation usw. dabei.

    also einfach:

    nebula device
    ogre
    irrlicht
    fly3d
    usw.

    anschauen, jedes detail durchleuchten und dann deinen weg finden das nötige zu implementieren.

    rapso->greets();



  • Danke erstmal für die Antworten.

    Kompliziert wird es nur, weil es gleichzeitig noch schnell sein soll.

    Deswegen suche ich ja immer nach Artikeln über Culling und Mesh-Sortierung, afair kann man dort die meiste Geschwindigkeit holen.

    Brauchst du wirklich Bumpmapping?

    Ein paar Details sollte eine Mauer schon haben 😉

    wie wäre es einen Loader für irgendein gut dokumentiertes Mapformat zu schreiben

    Ich hatte vor einen Loader für kompilierte CS-Maps zu schreiben (.bsp), klingt sehr nach Binary Space Partition und sollte somit nach Std-BSP-Regeln entpackbar sein. Dann kann ich sehr einfach den Hammer Editor mit einer eigenen FGD für mein Spiel benützen!

    dieses turorial-geschiss bringt einen nirgendwo hin.

    Wo sind die guten und aktuellen Bücher über Spieleprogrammierung?

    empfehle ich gleich noch das hier dazu.

    Da bist du 1 Jahr zu spät mit der Empfehlung *g*

    desweiteren: fall bloss nicht in den optimierungs-wahn. wenn du anfängst, dir eigene libraries für jeden blödsinn zu schreiben, wirst du nie fertig. nimm alles, was du an guter, fertiger technik bekommen kannst und konzentrier dich auf das grundproblem.

    Anfangs ja, aber danach werde ich sicherlich - und ich kenne mich da - in den Optimierungswahn verfallen 🙂

    ogre

    Läuft hier schon, seh mir gerade deren Scene Management an 👍

    ! Kennt nun jemand noch gute Artikel/Bücher über die von mir oben genannten Themen? !

    MfG SideWinder



  • BTW: Euer FAQ-Eintrag über das .map-Format hat keinen Informationen mehr - die beiden Links sind tot 😞
    http://www.c-plusplus.net/forum/viewtopic.php?t=39432

    /Edit: Dafür habe ich für den Herrn Moderator eine tolle Tutorial-Serie gefunden um BSP-Maps mit DX zu laden, siehe hier: http://www.gamels.net/index.php?dirID=1 🙂

    MfG SideWinder



  • SideWinder schrieb:

    dieses turorial-geschiss bringt einen nirgendwo hin.

    Wo sind die guten und aktuellen Bücher über Spieleprogrammierung?

    ich habs zwar leider selbst noch nicht, aber die game programming gems serie soll wohl einen blick wert sein. ansonsten gibts wohl nicht wirklich viel abseits der "wie code ich doom3 in 21 tagen nach der schule für 12 jährige" bücher.



  • Was lange währt, wird gut. Ist dann aber nicht mehr aktuell. Daher wirds sowas wohl nie geben. Wenn einer jetzt schreibt, wie man D3 oder HL nachproggt, und das Buch in 2 Jahren rauskommt, dann beginnt ID schon die übernächste Generation ihrer Engine.

    Bye, TGGC (Der Held lebt!)



  • TGGC schrieb:

    Was lange währt, wird gut. Ist dann aber nicht mehr aktuell. Daher wirds sowas wohl nie geben. Wenn einer jetzt schreibt, wie man D3 oder HL nachproggt, und das Buch in 2 Jahren rauskommt, dann beginnt ID schon die übernächste Generation ihrer Engine.

    Yo, ein Glück macht Carmack DOCH weiter, jetzt wo er den X-Prize versaut hat... 🤡 👍



  • Wann wird die Q3-Engine eigentlich endlich OpenSource?

    MfG SideWinder



  • SideWinder schrieb:

    Wann wird die Q3-Engine eigentlich endlich OpenSource?

    MfG SideWinder

    Hab gelesen dass sie alle Rechte daran an irgendeine Firma verkauft haben. D.h. es wird niemals Open Source von id aus.



  • 0x00000001 schrieb:

    SideWinder schrieb:

    Wann wird die Q3-Engine eigentlich endlich OpenSource?

    MfG SideWinder

    Hab gelesen dass sie alle Rechte daran an irgendeine Firma verkauft haben. D.h. es wird niemals Open Source von id aus.

    Quatsch. http://www.c-plusplus.net/forum/viewtopic.php?t=97047&highlight=carmack 🤡 👍



  • Dann dürfte aber auch daraus nicht mehr D3 und Q4 entwickelt werden.

    Bye, TGGC (Dem beste BdT)



  • TGGC schrieb:

    Dann dürfte aber auch daraus nicht mehr D3 entwickelt werden.

    😕



  • Sgt. Nukem schrieb:

    TGGC schrieb:

    Dann dürfte aber auch daraus nicht mehr D3 entwickelt werden.

    😕

    Weil Doom3 basiert auf Quake3 basiert auf Quake2 basiert auf Quake1... ich mach jetzt mal nicht weiter weil das käme mir schon heftig vor 😉

    Dass der Quellcode nicht veröffentlicht wird habe ich nur gedacht, weil ich damals anscheinend zu schnell drübergelesen hab 🙄



  • TGGC schrieb:

    Dann dürfte aber auch daraus nicht mehr D3 und Q4 entwickelt werden.

    Bye, TGGC (Dem beste BdT)

    doch duerfte 😉 Die Engine unter GPL zu veroeffentlichen bedeutet ja lediglich, dass ANDERE sie auch fuer OpenSource Projekte verwenden duerfen. Sie selbst koennen damit immer noch machen, wozu sie lustig sind...



  • Blue-Tiger schrieb:

    TGGC schrieb:

    Dann dürfte aber auch daraus nicht mehr D3 und Q4 entwickelt werden.

    Bye, TGGC (Dem beste BdT)

    doch duerfte 😉 Die Engine unter GPL zu veroeffentlichen bedeutet ja lediglich, dass ANDERE sie auch fuer OpenSource Projekte verwenden duerfen. Sie selbst koennen damit immer noch machen, wozu sie lustig sind...

    Lern lesen.

    hex1 schrieb:

    alle Rechte [...] verkauft

    Bye, TGGC (Für echte Fans)



  • TGGC schrieb:

    Blue-Tiger schrieb:

    TGGC schrieb:

    Dann dürfte aber auch daraus nicht mehr D3 und Q4 entwickelt werden.

    Bye, TGGC (Dem beste BdT)

    doch duerfte 😉 Die Engine unter GPL zu veroeffentlichen bedeutet ja lediglich, dass ANDERE sie auch fuer OpenSource Projekte verwenden duerfen. Sie selbst koennen damit immer noch machen, wozu sie lustig sind...

    Lern lesen.

    hex1 schrieb:

    alle Rechte [...] verkauft

    Bye, TGGC (Für echte Fans)

    Lern quoten, dann entstehn solche Missverstaendnisse erst gar nicht 😉



  • Blue-Tiger schrieb:

    Lern quoten, dann entstehn solche Missverstaendnisse erst gar nicht 😉

    Auch Quotes müsste man lesen...

    Bye, TGGC (Für echte Fans)


Anmelden zum Antworten