mein game läuft zeitlupe o.O

Diese Seite verwendet Cookies. Durch die Nutzung unserer Seite erklären Sie sich damit einverstanden, dass wir Cookies setzen. Weitere Informationen

  • mein game läuft zeitlupe o.O

    hi ich mach ein kleines geschicklichkeitsspiel, aber sobald sich die einheiten in bewegung setzen läuft alles zeitlupe.

    das rote kästchen sollte eigentlich genau so schnell sein wie die maus 8|

    wie erreiche ich das?

    mein game ist im anhang
    :)
    außerdem gibts noch ein bug, wenn die blauen kästen sich berühren soll absolut überhaupt nix passieren, die sollen einfach durcheinander durchfliegen. die pop up meldung soll nur erscheinen wenn das rote kästchen ein blaues berührt oder den rand

    gruß gruen
    Dateien


    Dieser Beitrag wurde bereits 1 mal editiert, zuletzt von Gruen ()

  • Hi,
    im Prinzip ist es richtig, was du gemacht hast, das rote Quadrat folgt der Maus.
    Das Problem ist nur, dass die FPS extrem stark abfallen, weil du bei den blauen Blöcken
    im Step-Event den "Move towards point"-Befehl drin hast. Es reicht, diesen nur einmal auszuführen.

    Edit: Wieso hat deine unsichtbare Mauer das Gegner-Objekt als Parent? Und wärs nicht besser, die blauen Blöcke von der sichtbaren Wand
    abprallen zu lassen anstatt von der unsichtbaren?

    Dieser Beitrag wurde bereits 1 mal editiert, zuletzt von Simon ()

  • @Simon, ich hatte das problem das das rote kästchen durch die schwarze mauser manschmal durchkonnte
    und die blauen kästchen sollen auch garnicht von der schwarzen mauer abprallen... hat was mit dem schwierigkeitsgrad zu tuhen. sonst würde man ständig draufgehen...

    @henrick, ok danke, aber wenn du das spiel mal startest, dann ist mir aufgefallen prallen die klötze unnormal von der wand ab.
    schwer zu erklähren. die fliegen sobald die die wand berühren die selbe strecke zurück die sie gekommen sind, und das soll ja nicht passieren, wisst ihr da ne lösung? die klötze sollen abprallen wie beim billard die kugeln an der wand...


  • Das Problem ist, dass Bounce nur direction (oder speed?) umdreht.
    D.h. dass das object immer in die selbe Richtung zurückprallen wird.

    Du müsstest den Winkel berechnen lassen... Aber frag mich bloß nicht wie, ich kenn weder die Funktion noch die passende Rechung :whistling:

    Still wating for Game Maker iPod Edition...
  • winkelberechnung

    hmm gute frage. theoretisch is es bei einer glatten mauer und einem einheitlich objekt in wirklichkeit so:
    Einfallswinkel gleich ausfallswinkel.
    nehmen wir mal eine mauer , sie ist ganz links am bildschirm
    das objekt (ein ball etwa) kommt von rechts oben auf die mauer zu.
    theoretisch würde doch
    h-speed = h-speed *-1
    v-speed = v-speed *-1
    ausreichen um denn ball anschließend nach rechts unten wandern zu lassen.

    allerdigns glaub ich, das das nicht so ganz die lösung für dein proböem ist, aber ich hab das problem auch nicht ganz verstanden.
    deswegen bitte erläutere mir das problem nochmal.
    welchen winkel genau willst du?
    was für ein objekt liegt vor?
    was für eine anwendung? (sorry kann mri das example nicht ansehen wegen download volumen, krieg aber bald flat rate)
    versuch einfach das problem so genau wie möglich zu erklären.

    mfg
    Link
  • das problem is das objekt 1 z.B. mit einem winkel von nehmen wir mal an 30 grad auf die linke wand fällt. aber dann mit einem winkel von 30 grad wieder zurück geschleudert wird statt mit einem winkel von 150 grad. das heißt objekt 1 kommt von rechts oben, trifft auf die linke wand auf, und wird zurückgeschleudert nach rechts oben stadt nach rechts unten abzuprallen...

    h-speed = h-speed *-1
    v-speed = v-speed *-1

    bewirkt das selbe wie das bounce drag&drop dingen
    also keine veränderung



  • Du müsstest irgendwie den Winkel von der roten Linie zur oberen Linie berechnen, also den EInfallswinkel und dann nach unten hin von der roten Linie addieren (Ausfallswinkel), du müsstest quasi die Bahn der Kugel an der roten Linie spiegeln.
    Ich weiß allerdings nicht wie du das machen könntest, ich lass mir aber etwas einfallen.
    Gruß Gamer
  • ...mit einem winkel von nehmen wir mal an 30 grad auf die linke wand fällt. aber dann mit einem winkel von 30 grad wieder zurück geschleudert wird statt mit einem winkel von 150 grad...
    Übrigends, war das verschrieben oder willst du doch nicht wie beim Billard, beim Billard würde er - soweit ich rechnen kann - bei 30° Einfallswinkel mit 330° Ausfallswinkel wieder zurücklaufen oder ich bin zu blöd zum rechnen.


    edit:
    Ach nein, ich denk du hast nur den Winkel falsch berechnet, also nicht an der Orthogonalen sondern an der Bande, kann das sein?
    Gruß Gamer
  • Aus der siehst der Wand arbeite das Skript.
    Hier nochmal der Code:
    Vom Ball aus:

    GML-Quellcode

    1. //Collsion with "Wall"
    2. execute_string("direction=direction"+string(choose("+","-"))+"45")

    Von der Wand aus:

    GML-Quellcode

    1. //Collsion with "Ball"
    2. execute_string("other.direction=other.direction"+string(choose("+","-"))+"45")

    MfG Henrik1235
    #edit: Fehler verbessert
    #edit 1: Alle Fehler verbessert und Code verkleinert
    Dateien
    wupto.net/ Nicht meine Seite!
    We love Koalas.

    GM-D-Spam-o-Meter: 32%

    Dieser Beitrag wurde bereits 2 mal editiert, zuletzt von henrik1235 ()

  • ich habs direckt mal ausprobiert, das is der selbe effekt wie das drag&drop bounce dingen :S

    mist ich hätt da vorher reinschauen sollen, jetzt hab ich da total viel d&d gedöns drin. (ich versuche alles ohne hinzubekommen)aber nicht schlimm hab ja meins eben hochgeladen gehabt :)

    ich will so viel wie möglich als text stehen haben statt d&d zu benutzen


    Dieser Beitrag wurde bereits 2 mal editiert, zuletzt von Gruen ()

  • Henrik, dass kann so übrigends gar nicht gehen.

    Da der x und y punkt der Wand an einer bestimmten Stelle ist, aber er müsste da sein wo der Ball die Wand berührt.


    ps: schau doch mal bei yoyogames, vllt gibts da irgendwo ne Billard Engine oder ähnliches was vllt hilft.
    Gruß Gamer