For a more complete 3d engine implementation checkout my other project: https://github.com/idanmaman2/ISE5782_6941_3797 that uses ray tracing.
The idea of the project is based on the game "Pin art 3d".
Unlike many 3D engines that use triangles similarity or ray tracing, here I take a simpler approach by just sending straight rays from the XY plane and mapping the Z value to color and char.
The program enables rotating the shape in all axes and moving it in space.
https://github.com/autopawn/3d-ascii-viewer - which has a similar goal but uses a different technique.
Used its obj models to compare results.