Well the title pretty much says it.
I imported a ship model from blender and I made it so that if I press the up arrow key the ship moves forward and left and right arrows rotate her, using the analog listener. Now I want her to move the same direction she’s looking at.
My idea was to split the total speedvalue into the z and x axis. For example, if i rotate the ship 45° to the left, I would give the z translation 50% of the total speedvalue and 50% to the x translation, but I don’t even now how I could do this.
Any ideas?? Maybe this is way too complicated and there’s is probably a better way, i’m just a noob
If someone has already done something like this it’d be good if i could see some code snippets or an example.
I’d appreciate any help.
The usual way to get the vector the “forward” vector of an object is getLocalRotation().getRotationColumn(2).
1 Like
Nice, that´s work, but I have another question.
How could I let the ship move faster, now?
Once you have the rotation/direction you want do go, you multiply that by some scalar to increase the speed. You may want to call normalize() on the rotational vector first so that it’s a unit vector (length equal to 1), and then multiply by the scalar (speed you want to go), for more precise calculations.
Cheers!
~FlaH