Fragen zur Programmierung eines Ego-Shooters



  • hallo rebell,

    einen tip will ich dir noch mit auf den weg geben: schau dir c# und xna an (kann man beides kostenlos bei microsoft runterladen). xna ist ein framework für die entwicklung von (vorwiegend einfachen) spielen. es sind dort schon viele klassen vorbereitet, mit denen du deine ressourcen (models, texturen etc) managen kannst und auf einfache weise mittels direct3D zeichnen kannst, ohne dass du es gleich bis ins letzte detail verstehen musst.

    mach einfach mal das tutorial hier. das kostet dich vielleicht einen halben tag und danach weisst du, wie 3D-grafik in grundzügen funktioniert und kannst darauf aufbauen. du könntest das projekt zum beispiel hernemen und dir eine frei bewegliche und frei schwenkbare kamera zu bauen, die sich wie in einem egoshooter verhält. dann hast du direkt auch schonmal eine klasse, die du später in deinem programm benutzen kannst und einen ersten kleinen teilerfolg.

    danach könnte man sich gedanken machen, wie man das level aufbaut und das in ein miniframework abstrahieren - man will ja schließlich auch einen leveleditor haben. und da dieser die selben levels erstellen soll, wie das spiel sie verwendet, macht es sinn diesen teil zu verallgemeinern. du musst dir dann gedanken machen, ob du outdoor oder indoor levels hast. ich würde simple indoor räume mit geringen sichtweiten empfehlen, dann kommst du vielleicht ohne level of detail aus.

    und noch ein tip: baue dein spiel erstmal, ohne eigene models zu verwenden. lad dir einfach welche aus dem internet, da gibt es genug (google). baue dein spiel allgemein so, dass alle funktionalität möglichst abstrakt gehalten ist und möglichst MVC beachten, dann kannst du sachen, die du erstmal billig gemacht hast später ausbauen. fange erstmal mit einem klassendiagramm an, sonst kann es gut passieren, dass du die übersicht verlierst, weil einfach zuviel code und zuviele klassen da sind. nichts ist frustrierender, als nach drei monaten arbeit über code zu stolpern, von dem man sich nicht erinnert, ihn geschrieben zu haben 😉

    ich hoffe, ich konnte dir nen ansatzpunkt geben


  • Mod

    jule37 schrieb:

    hallo rebell,

    einen tip will ich dir noch mit auf den weg geben: schau dir c# und xna an (kann man beides kostenlos bei microsoft runterladen). xna ist ein framework für die entwicklung von (vorwiegend einfachen) spielen. es sind dort schon viele klassen vorbereitet, mit denen du deine ressourcen (models, texturen etc) managen kannst und auf einfache weise mittels direct3D zeichnen kannst, ohne dass du es gleich bis ins letzte detail verstehen musst.

    wegen einer engine von vielen gleich ne neue sprache zu lernen steht irgendwie in keinem verhaeltnis 😉



  • Fang doch einfach mit Tetris an...

    is einfacher und haste schneller erste Erfolge! 🙂



  • @ rebell

    Das hier könnte sehr interessant für dich sein:

    http://nehe.gamedev.net/tutorial/loading_and_moving_through_a_3d_world/22003/

    Da kannst du dir auch den Kompletten Quelltext (sind nur etwas über 600 Zeilen inklusive Leerstellen, also echt nicht so viel) runterladen.

    Hier ist ein Bild von dem "Spiel": http://nehe.gamedev5.net/data/lessons/lesson10.jpg

    Du kannst die in der Ego Perspektive durch den Level bewegen kollisions Abfrage beinhaltet der ganze Kram da noch nicht. Aber ich denke für den Anfang könnte es denoch sehr interessant sein.

    Ja das OpenGL da ist etwas veraltet aber ich denke die Artikel sind trotzdem nicht uninteressant.



  • Gut das wir uns diesem Problem nochmal widmen.



  • Ja, nicht?
    @rebell: So langsam müsste man schon was sehen? Oder hast du aufgegeben? Naja, hast ja nur 4 Jahre damit verbracht...



  • Sry für die Leichenschändung ich hatte nicht aufs Datum geachtet ... 😕


Anmelden zum Antworten