Fragen zur Programmierung eines Ego-Shooters



  • Hallo

    Also mich würde es interessieren.

    chrische



  • Hallo.

    Es wird dir viel mehr Spaß bringen und auch um einiges realisierbarer sein, ein einfaches Spielkonzept zu nehmen und einen erweiterten Klon zu programmieren. Programmier halt ein Tetris, bei dem man anstatt normalen Punkten Erfahrungspunkte bekommt, mit denen man sich dann nach Level-Up überkrasse Megabausteine kaufen kann... oder sowas. Dir fällt sicher irgendwas ein.

    Aber lass das mit dem Ego Shooter erstmal sein.


  • Mod

    man muss bei einem egoshooter nicht gleich crysis 2 machen (wie hier schon gesagt wurde).

    ein wolfenstein artiges spiel ist echt nicht die welt, selbst schlecht implementiert laeuft sowas schon fluessig auf heutigen pcs.
    es ist nicht schwer anzufangen, da man level in simplen bitmaps zeichnen kann.
    rendern kann man erstmal ohne texturen, entweder per raycasting, oder einfach pro block eine box an opengl schicken.

    schwer ist das ganze nicht, man muss nur simpel anfangen.

    ich wuerde jedoch immer raten erstmal ein bestehendes spiel zu nehmen (gibt genug zum download) und daran rumbasteln bis man die grundlegenden dinge versteht.



  • rapso schrieb:

    schwer ist das ganze nicht, man muss nur simpel anfangen.

    Schwer ist relativ. Zum Beispiel eine Bitmap laden, wenn man noch nie ein Spiel gemacht hat und dann gibt man sie nur so "verschluesselt" aus, als Level. Das geht zunaechst mal schief. f'`8k

    Autocogito

    Gruß, TGGC (Das kommt gut)



  • 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