2D Kameraposition verändern



  • hi,

    Ich nutze C++/Directx11

    ich würd gern die "Kamera" verschieben in meinem 2D Spiel.

    Wie wird das realisiert?

    Das hatte mir Google gegeben(versuchs umzusetzen)
    http://zfx.info/viewtopic.php?f=7&t=3282

    Der Auszug um den es mir geht:

    wir bauen ein Offset ein, also quasi eine kleine Kamera. Wir sagen, dass die Mitte des Bildschirms auf einen bestimmten Punkt der Karte zeigen soll. Also müssen wir alle Zeichenaufrufe um (KameraFokusPunkt minus Bildschirmmitte) verschieben. Den Kamerafokuspunkt schnell mit ein paar Tasten änderbar gemacht und schon können wir scrollen.

    Da ist die rede vom Kamerafokuspunkt?was ist das?und wie verschieb ich ihn?
    Und Zeichenaufrufe verschieben? im VertexShader?

    Bin für jede Idee , eine bewegliche "Kamera" einzurichten offen.



  • Du wirst in deinem Code wohl so was wie drawTile(tileX, tileY); haben.
    Zum scrollen subtrahierst du einfach die Kameraposition von der Tile-Position ab. drawTile(tileX - camX, tileY - camY);

    Die Kamera wird einfach als (invertierter) Offset der Zeichenposition verwendet.


Log in to reply