anfängerfrage



  • also das hat jetzt nicht speziell etwas mit spieleprogrammierung zu tun aber dennoch:

    wie bewerkstelligt man folgendes:

    ich habe zB ein Jump n Run Spiel
    nun möchte ich dass die Spielfigur bei Tastendruch springt
    aber solange die figuer springt soll alles andere weiterlaufen

    oder etwas allgemeiner

    ich habe ein programm das während es läuft eune funktion oder ein unterprogramm aufruft dennoch weiterexistiert und seine arbeit tut
    sozusagen beides gleichzeitig tut

    wie wird so etwas geamcht??



  • sowas regelt man in der regel nicht gleichzeitig. die meisten pcs machen einfach alles so schnell hintereinander, dass einem eine änderung nicht auffällt.

    wenn du wirklich was gleichzeitig machen willst [was dann im endeffekt auch nur schnelles hintereinanderarbeiten vom betriebssystem ist], dann google mal nach "threading" .



  • Der Charakter bleibt ja nicht endlos in der Luft dh im Grunde springt er nur in dem Moment los wo man die Taste gedrückt hat, der Rest ist Animation.

    In dem Moment wo der tastendruck kommt weist du der Char soll springen, also leitest du einen Sprung ein, danach nimmst du die vergangene Zeit pro Frame und verschiebst den Charakter auf der Flugbahn bis du ein solides Objekt erreicht hast das den Sprung beendet. Ist im wesentlichen nichts anders als wenn du den Charakter laufen läst nur das du ein paar Berechnungen mehr brauchst.



  • Das Unterprogramm "Sprung" beinhaltet ja nur die Berechnung um die Position des Spielers zu manipulieren. Die Darstellung ist unabhängig davon und wird beispielsweise erst danach aufgerufen.



  • kennt einer einen link zu dem quellcode eines jumpn run zu lernzwecken (in c++)?
    ich möchte mal klein anfangen und am besten ein bestehendes spiel anschaun und manipulieren

    kennt einer noch eine seite mit verschiedenen quelltexten?

    danke im voraus



  • Hier ist zum Beispiel ein Tutorial zu finden:

    http://www.softgames.de/developia/viewproject.php?cid=1617

    Vielleicht nütz es dir etwas 🙂


Anmelden zum Antworten