Hi
I have a script to aim a turret with the mouse (in a first person view) and it works ok, the problem is that the turret is in a spaceship and this one can also rotate so when this happens, the turret’s platform starts aiming in weird directions. This is a sample of my code:
public void AimTurret(){
ray = turretCamera.ViewportPointToRay(new Vector3(0.5f, 0.5f, 0.0f));
//Horizontal
targetPosition = ray.GetPoint(range);
targetPosition.y = 0.0f;
hRotation = Quaternion.LookRotation((targetPosition - hPlatform.position).normalized);
aux = Mathf.Min(hRotationSpeed * Time.deltaTime, 1.0f);
hPlatform.rotation = Quaternion.Lerp(hPlatform.rotation, hRotation, aux);
}
I’m pretty sure the problem is that I’m putting a 0 in the y axis (so the turret platform rotates in a single axis) so what I need to know is what should I put here instead of a zero if I want the platform’s turret to keep parallel/horizontal to the ship while conserving it’s axis.
I hope I was clear,
Thanks.