was muß ein programmierer (opengl/c++) können

  • nehmen wir mal an es gäbe einen kurs wo man zum opengl programmierer / game-programmer ausgebildet werden soll

    was muß so ein programmierer können wenn er den kurs besucht hat und dann bei einer firma als junior programmer anfangen will

    ich hab mir gedacht:
    grundkenntnisse in algorithmen für 3d
    c/c++ inkl der sdl und das für windows und linux
    opengl (basics, shader ...)

    reicht das aus um dann selbstständig ein spiel programmieren zu können ?

    das hier soll eine DISKUSSION werden ;)

  • Eh so ca. das. Wenns jetzt allgemein game-programmer heißt, dann sollte der vielleicht auch von DirectX eine Ahnung haben. Kommt halt darauf an, in welche Firma er will.

    In einen FBO rendern ist wie eine Schachtel Pralinen - man weiß nie, was man kriegt.

  • Mathematik braucht man auch - mindestens eine Einführung in der Lineare Algebra.
    Eine Einführung in Windows Programmierung ist auch notwendig.
    Aber ich finde dass sdl nicht notwendig ist wenn man OpenGL lernen will.

  • prinzipiell solltest du so viel wie möglich können..

    c++,sdl und opengl reichen theoretisch um ein spiel zu entwickeln.. allerdings solltest du in der 3d programmierung sattelfest sein, eine ahnung von patterns haben und in der lage sein ein umfangreicheres projekt zu planen.. soweit die technischen anforderungen..

    was viele talentierte programmierer immer wieder vergessen, ist das zu einem spiel weit mehr gehört als nur programmierung (deshalb gibt es soviele private geschriebene engines aber kaum ausgereifte spiele dazu).. eine große portion kreativität schadet auf keinen fall.. du solltest auch zumindest mit photoshop und maya/3dsmax (oder einem vergleichbaren tool) vertraut sein.. etwas farben- und gestaltungslehre schadet auch nicht..

    vor allem ist ein spiel viel, viel, gaaaanz viel arbeit und man sollte eine hohe ausdauer und viel enthusiasmus haben um so ein projekt zu meistern (vor allem wenn man nebenbei noch studieren will).. ich würd auf jeden fall empfehlen, soweit es geht auf bereits bestehende arbeiten zurückzugreifen und nicht das rad neu erfinden..

    nur ein mac ist ein mac ist ein mac ist ein....

  • naja, ich will ja wissen was ein programmierer können muß, damit er eine engine/spiel schreiben kann, mit dem dann die artists, leveldesigner etc was anfangen können
    natülich sollte er auch kreativität haben, aber im vordergrund steht glaub ich effizientes programmieren

    die andere frage ist: wie lange braucht jemand (ich setze mal voraus, fast keine ahnung vom programmieren) um dann c,c++,opengl zu lernen, um dann eine eingen mini-engine schreiben zu können ??
    nehmen wir an er lernt 8 stunden am tag mit betreuer der so was kann, ist das dann im 10 wochen realistisch ? ich glaub nicht oder ??
    wozu studier ich dann CG ?? ;)

  • thurin: "rad erfinden": aber die vorhandenen 3d engines die man frei benutzen kann um ein spiel zu schreiben, sind meistens echt nicht das gelbe vom ei ?
    kennst du zufällig eine engine die schon recht viel kann, wo ich dann zusatzsachen einfach hinzuimplementieren kann ? (wasser, physiks) und die man frei benutzen kann ?(wenn das spiel was würde, sollte man es auch verkaufen dürfen)
    dann bräuchte man nur mehr die spiellogik!

    aber meistens passen diese engines nicht, da sie meist nur 1 genre abdecken ;(

  • also engines gibt es wie sand am mehr.. ogre3d, irrlicht, neo,....

    wenns dir spaß macht eine zu programmieren, dann mach es.. ich hab den gedanken schon lange wieder aufgegeben.. viel wichtiger ist es meiner meinung nach ein tolles spiel zu schreiben, als eine tolle engine, die dann nicht benutzt wird..

    wenn du keine ahnung vom programmieren hast, dann vergiss ganz schnell wieder den gedanken an eine eigene engine.. ausser du bist masochist.. und selbst dann kannst du davon ausgehen, dass erst der dritte versuch in 3 jahren von erfolg gekrönt sein wird :)

    nur ein mac ist ein mac ist ein mac ist ein....

  • gehen wir mal davon aus, dass irgendjemand ein komplettes spiel / engine selber programmieren will. dann würde ich sagen, dass er folgendes mitbringen sollte:

    - (sehr) guten background in mathematik: sonst werden irgendwelche physikalischen sachen entweder a) nicht schnell laufen oder b) nicht funktionieren.
    steh nicht so drauf, wenn mal wieder jemand was aus einem tutorial kopiert hat und eigentlich keine ahnung hat von dem, was da vor sich geht.
    - ahnung von directx / opengl: wenn man davon ausgeht, dass derjenige dann einen job in der industrie anstrebt (spiele-programmierung), dann sollte er von directx auf jeden fall sehr viel plan haben. ich weiß, directx ist von MS, MS ist böse, usw. bla bla bla, jedoch sieht die welt da draussen schon etwas anders aus. bis auf den JC verwendet eig. keiner mehr opengl für spiele (valve hat den opengl-pfad für HL2 schlicht und einfach "verschmissen"), NVIDIA werkelt an seinem eig. CG-compiler gar nicht mehr rum und konzentriert sich auf HLSL, etc.
    - background in 3D-programmierung, graphik-algorithmen, etc.: man sollte zumindest von den neueren technicken "an plan" haben. muss ja nicht unbedingt ein technology-demo mit den neuesten effekten gecodet haben, jedoch von der state-of-the-art einiges an hintergrundwissen mitbringen.
    - gute c/c++ - kenntnisse
    - VERSTÄNDNIS für algorithmen, programmierung, etc.: es bringt einem der beste algo nix, wenn man ihn nicht verstanden hat (hab schon leute gesehn, die einen quadtree jedes frame bis zur einzelnen dreiecks-ebene tesseliert und anschließend im immediate-mode an opengl geschickt haben :shinner: *graus*)
    - hohe belastbarkeit und viel engagement
    - kreativität
    - umgang mit "standard"-tools wie 3dsmax/maya, character studio, photoshop: kommt ganz darauf an, was man machen will


    manche leute von gamedev.net die in der spiele-industrie arbeiten könnten ein paar anekdoten dazu erzählen (stichwort deadlines und long working hours :devil:)


    mfg,
    tivolo

    Stefan Reinalter
    Lead Programmer @ Sproing Interactive

  • Zitat von tivolo

    - ahnung von directx / opengl: wenn man davon ausgeht, dass derjenige dann einen job in der industrie anstrebt (spiele-programmierung), dann sollte er von directx auf jeden fall sehr viel plan haben. ich weiß, directx ist von MS, MS ist böse, usw. bla bla bla, jedoch sieht die welt da draussen schon etwas anders aus. bis auf den JC verwendet eig. keiner mehr opengl für spiele (valve hat den opengl-pfad für HL2 schlicht und einfach "verschmissen"), NVIDIA werkelt an seinem eig. CG-compiler gar nicht mehr rum und konzentriert sich auf HLSL, etc.

    dx is auf jedenfall ein vorteil, aber auf allen nicht windoof kisten ist opengl.. zb. die unreal engine rennt noch immer auf opengl.. ich hab bis jetzt nur directx programmiert und fang mit opengl grad erst an (seit ich einen mac ha:) ) sicher ists gut, wenn man beides kennt, aber wenn man die dahinterliegenden konzepte kennt, ist eines so gut wie das andere..

    was heißt das nvida cg aufgegeben hat!? im märz ist erst die letzte revision gewesen.. und cg == hlsl.. ist genau die gleich sprache.. nvidia hat das gemeinsam mit ms entwickelt.. (deshalb schaun cgfx files auch wie dx effect files aus:) )

    nur ein mac ist ein mac ist ein mac ist ein....

  • Hier in Zürich gibts neu ab diesem Jahr das eigenständige Studium "Game-Design", da überleg ich mir wirklich das zu wählen, aber wie sieht das eigentlich mit dem Gehalt aus? verdient man als Gameprogrammierer genug um sich mehr als nur täglich Brot zu kaufen?
    Ich such mal die Vorraussetzungen, die die Uni/ETH hier setzt, un poste sie dann...
    Habs gefunden: http://gamedesign.hgkz.ch/

  • die gefahr besteht aber immer.. es is so wie überall im leben.. wennst guat bist, dann hast keine jobprobleme..

    nur ein mac ist ein mac ist ein mac ist ein....

  • danke! Naja, geht so, das Gehalt bei gamedesign ist nicht DER hammer, aber leben kann man allemal davon, wobei ich mich auch frage, wie das mit den chancen des gewinns aussieht, ob man sich rigendwo anstellt, wobei irgendwo eigentlich mir garnicht bekannt ist, weil ich kaum gamestudios in dem sinne in meiner umgebung kenne. In die USA auswandern? naja... Vielleicht zu Crytek nach Deutschland...

Jetzt mitmachen!

Sie haben noch kein Benutzerkonto auf unserer Seite? Registrieren Sie sich kostenlos und nehmen Sie an unserer Community teil!