Hmmm - i've had a further look at it, and I can't work out why the camera should be moving in an ellipse. Also, the player doesn't rotate, unless I remove the cameraHolder rotation. If I remove that line, the player rotates correctly, but obviously then the camera doesn't! I'm wondering if this is related to the way i'm setting the rotation pivot? I tried setting it to player.getYAxis(), but then the camera doesn't rotate at all. I have posted my code below in case i'm being an idiot, (very likely
)
playerRotation = xDif * rotationMultiplier;
// Rotate the player and cameraHolder
cameraHolder.setRotationPivot(player.getTransformedCenter());
player.rotateY((float)Math.toRadians(playerRotation));
cameraHolder.rotateY((float)Math.toRadians(playerRotation));
// Move the camera back to the cameraHolder and look at the player
theWorld.getCamera().setPosition( cameraHolder.getTransformedCenter());
theWorld.getCamera().lookAt(player.getTransformedCenter());