Hi Silvia, nice post. Thought to add a note, since I've been on this topic lately.
Usually setting ViewVertical & ViewPoint is enough to get a good result. ViewVertical defines a directed line in space, and ViewPoint a point (obviously). Looking from the point there is one rotational degree of freedom, which is then fixed to the vector of ViewVertical. Perspective can be controlled by taking near or far ViewPoints, with limit to infinity approaching ViewProjection->"Orthographic" (?). The problem is with bounding box. Using some of the previous chess assets:
glist1 = Show[GameState[TwoKnights],
Graphics3D[{Black, Sphere[{0, 0, 2}],
Sphere[RotationMatrix[Pi/50 #, {0, 0, 1}].{0, 64, 0}] & /@
Range[100]}],
ViewPoint -> 100 ({Sqrt[2] Cos[Pi/50 *#], Sqrt[2] Sin[Pi/50 *#], 1}),
Boxed -> True, ViewVertical -> {0, 0, 1},
PlotRange -> {{-65, 65}, {-65, 65}, {-2, 16}},
ImageSize -> 500] & /@ Range[0, 100];
ListAnimate[glist1]
This is not what we want, and setting Boxed->False does not change much. According to stack exchange, there is another option to set "ShrinkWrap"?? Anyways, here's an improved rotation:
glist2 = Show[GameState[TwoKnights],
Graphics3D[{Black, Sphere[{0, 0, 2}],
Sphere[RotationMatrix[Pi/50 #, {0, 0, 1}].{0, 64, 0}] & /@
Range[100]}],
Boxed -> False, Method -> {"ShrinkWrap" -> True},
ViewPoint -> 100 ({Sqrt[2] Cos[Pi/50 *#], Sqrt[2] Sin[Pi/50 *#], 1}),
ViewVertical -> {0, 0, 1},
PlotRange -> {{-65, 65}, {-65, 65}, {-2, 16}},
ImageSize -> 500] & /@ Range[0, 100];
ListAnimate[glist2]
This looks much better, though the animation still has a bit of jitter. If I were to mask out the black spheres on the boundary, probably it would look slightly more smooth.