3d transform gizmo without perspective distortion


I’ve recently coded a transform gizmo to my simple editor. All is working great, rotating scaling and translating works pretty well.
However the visualization of the gizmo, mainly the rotate one is still of a concern to me. If it is close to the center of the viewport,
all looks fine, however the more the gizmo moves towards one of the edges of the screen, the more it become distorted.
Lowering the FOV, does reduce the problem of course, as does switching to orthographic projection. But this is not entirely what I want.
I tried several differnent modelling packages, and they doesn’t seem to have this problem e.g. the ‘arcball circles’ don’t get distorded en
resemble still a ‘sphere’ while maintaining a correct perspective look.
Can someone give me some tips on how to do this?



Well, it’s kinda hard to answer a question when you don’t explain what it is that’s wrong with the solutions you have.

The “correct perspective look” requires “distortion”. A sphere doesn’t look like a sphere when it’s at the edge of your view. It will look ovate.

Narrowing the FOV, and moving the object further from the camera, will reduce the distortion. But you never said what was wrong with doing this.