Ruckeln, Flimmern während view scrolling

  • GM 8

    Ruckeln, Flimmern während view scrolling

    Hallo ihr Lieben :),

    seit ein paar Tagen werkle ich jetzt schon mit dem GameMaker herum (habe mich von den komplizierten Programmiersprachen wie Java ersteinmal abgewendet) und bastle schon fröhlich vor mich hin, bis ich heute ein teschnisches Problem feststellen muss.

    Die Suchfunktion ergab, das Problem gab es offensichtlich schon (ein paar) mal vor (ein paar) Jahren, eine eindeutige Antwort und Hilfestellung habe ich dabei nicht gefunden, evtl. ist der Kenntnisstand vorangeschritten. Ich bin für jede Hilfe dankbar.

    Nun zu meinem Problem:
    Ich arbeite an einem side scrolling platformer. Logischerweise bleibt dabei die Spielfigur immer im Zentrum des Geschehens. Den view dafür habe ich in den roomsettings eingestellt und nicht im step-event o.ä. meine bevorzugte Raumgschwindigkeit liegt bei 60, diese ändert sich nur, wenn ich mal was testen will, dazu unten mehr. Da ich ja noch viel lernen will, und ich den pixeligen Stil mag, habe ich mich auf eine sehr geringe Auflösung festgelegt, sodass jeder Pixel gut erkennbar ist, dazu meine Raumeinstellungen:

    View in Room:
    W: 160
    H: 120

    Port on Screen:
    W: 640
    H: 480

    object following: obj_player
    Hbor: 120
    Vbor: 100

    Bewege ich nun also meine Spielfigur und der das Bild fängt an zu scrollen, fängt meine Spielfigur an zu flimmern und zu ruckeln. Bei meinem custom-mousecursor ist es das gleiche Spiel, er ruckelt wie bescheuert das einem die Augen schmerzen. Je höher ich den Room-Speed stelle, desto schneller und "intensiver" wird das ruckeln, wie z.B. bei einem room-speed von 120. Interessanterweise entdecke ich bei dem room-speed von 120 folgendes Phänomen:

    manchmal ruckelt die Spielfigur NICHT sondern nur der mouse-cursor oder andersherum (also der mouse-cursor bleibt schön ruhig dafür zappelt meine Spielfigur wie ein verreckendes Huhn :rage::rage2: ), was für mich schonmal der Beweis ist, dass das Problem irgendwie zu lösen ist.

    Schonmal vorweg: Das anpassen des room-speeds an die hertz-zahl, das Einstellen von synchronization oder gar das Einschalten der "Interpolate colors"-Funktion bringen gar nüx bzw verschlechtern das Spielerlebnis in anderen Belangen.

    Habe mal irgendwas von irgendwelchen Halbschritten (2.5 // 3232323232 ??? WAT?) gelesen. Jedenfalls frage ich jetzt hier mal, wie ich dieses Augenkrebs-verursachende Problem eleminieren kann.

    Ich wäre euch unendlich dankbar :)

    Dieser Beitrag wurde bereits 1 mal editiert, zuletzt von „Xyarvius“ ()

    hi, ich habe herausgefunden, dass dein problem an der steuerung des spielers liegt, denn wenn ich ein anderes objekt im raum platziere, das man einfach nach links und rechts bewegen kann, ruckelt es nicht...

    kann dir aber leider nicht sagen wo der fehler liegt :(
    musst du halt auf eine expertenmeinung warten oder deinen code nochmal genau durchgehen!

    ach übrigens, setze lieber deine maus mit dem :action_mouse: fest (unter extra) ^^



    mfg.snake5

    Es liegt an den Kommazahlen im Movement

    Wenn du den Spieler und den Cursor im Draw Event auf gerundet x und gerundet y zeichnen lässt ist das Problem gelöst.

    :event_draw: Draw Event:

    GML-Quellcode

    1. draw_sprite(sprite_index,image_index,round(x),round(y));
    Ihr seid die BESTEN! Vielen Dank, das Problem ist hiermit gelöst ... zumindest fast. Ich habe nun den Code von Funcestor eingefügt und meine Spielfigur ist nun ruckelfrei (endlich können meine Augen entspannen) und auch den Tipp mit dem Mousecursor habe ich befolgt, danke snake5. Klappt soweit auch gut, aber hin und wieder fängt mein cursor mit dieser Einstellung (obj_cursor ohne sprite, im draw event weise ich den cursor zu) dennoch an rumzuzappeln, aber nur manchmal. Mit dieser Einstellung kann ich den Code von Funcestor aber nicht anwenden, da das objekt selbst keinen sprite besitzt. Wie kann ich das lösen?

    Edit: Edit: Problem besteh weiterhin *lach*

    Dieser Beitrag wurde bereits 2 mal editiert, zuletzt von „Xyarvius“ ()