Kamera in Richtung Mauszeiger bewegen / Mouse Axis Value

  • Tach,

    ich habe eine Top Down Camera. Diese soll, wenn ich meine Maus bewege nur leicht in die selbe Richtung bewegen.
    Die werte zum Bewegen bekomme ich aus den Mouse X / Y Axis Values.




    Nun möchte ich allerdings auch den Maus Cursor aktiv haben. Wenn ich allerdings den Maus Cursor an habe, geben die Inputs keinen Wert mehr bei Axis Value aus.

    Erst bei gedrückter Maustaste...
    Jemand eine Idee wie ich meine gewünschte Camera Steuerung trotz Maus Cursor funktioniert?

    Habe versucht das ganze einfach von der Mausposition abhängig zu machen statt von den Maus Input. Leider noch ohne Erfolg da ich nicht hinter gekommen bin wie man die Werte umrechnet so dass es passt. Weil Maus Position ist bei 0,0 oben links in der Ecke statt zB im Zentrum, was es halt ein wenig schwer gestaltet.

  • Hallo


    Das ist ein Problem mit dem ShowMouseCursor. Der deaktivert das wenn du Klickst.

    Soll sich die Kamera denn immer in die Maus Richtung bewegen wenn sich die Maus bewegt, oder nur wenn sie am Rande vom Bildschirm ist, so wie klassiche RTS Kameras?


    Gruss

  • Die soll sich genau dann bewegen wenn ich auch die Maus bewege. Also nicht wie bei einem RTS erst wenn ich am Bildschirmrand bin.
    Das Szenario ist ein Top Down und die Kamera soll sich immer ein Stück in Richtung Maus bewegen. Quasi ich bin mit der Maus weiter links am Bildschirm, die Kamera geht auch ein ticken nach Links, so dass sich das Sichtfeld ein wenig erweitert.
    Ohne Cursor funktioniert es :( Aber ich möchte auch gerne einen Mauscursor im Spiel haben.

  • Gibt verschiedene Wege das Problem zu lösen. Zum Beispiel kannst du den Input Mode auf Game Only setzen. Das wird das Problem sicher lösen, schafft vermutlich aber neue Probleme mit dem UI je nach Spiel.

    Dazu gibt es Blueprint Nodes, es nennt sich SetInputModeGameOnly. Für die anderen Modi gibt es auch entsprechende Nodes.

  • Musste ich jetzt ausprobieren, klappt bei mir, oder ich habe das Problem falsch verstanden. Aber bei mir gibts den Axis Output korrekt aus.



    Aber eben, wenn du ShowMouseCursor nutzt ist das per Design so.

    Also entweder passt du die Funktion im Code an oder umgehst es anderweitig.



  • Ich habe nun meinen gewünschten Effekt erstmal über den Tick laufen. Wirkt mir sauberer als jedesmal den Input neu zu setzen.
    Musste halt nur einen Weg finden wie ich die Mausposition in einen Wert zwischen 0 und 1 umwandeln und das so, dass 0 in der Mitte ist. Weil normalerweise ist 0 bei der Mausposition obenlinks am Bildschirmrand.

    Obs nun durch einen Tick läuft oder Mouse InputAxis ist wurst.