Get cursor position in LIBGDX

CodeAndWave picture CodeAndWave · May 5, 2013 · Viewed 21.2k times · Source

How to get cursor position in libgdx and apply it to sprite? Like this? enter image description here

I want my sprite to have the direction pointed wherever my cursor is in the screen.I search libgdx examples but i cant find any examples related to that.

Answer

P.T. picture P.T. · May 5, 2013

Get cursor position

If you're polling for input, use Gdx.input.getX() and Gdx.input.getY() to get the current mouse x and y coordinates. (The doc says its only relevant for touch, but the code looks like it reports raw mouse values regardless of button state.)

If you're using an InputProcessor you can use one of:

to receive input events from a mouse with no buttons pressed.

Apply position to sprite

Update a Vector2 that points from the current sprite position to the cursor position. This can be your Sprite's heading. You'll want to rotate the sprite's heading to match this vector.

Use Vector2.angle() to compute the angle of this vector, and set your sprite's rotation to this. (This is relative to the positive X axis,so you may need to add a constant if you want it relative to the Y axis.)