This really belongs on the newbie forum but it has not been brought back up yet so i am posting it here. I hope this forum is not only for the Java3D API but rather for doing 3D with Java. If not please let me know where i should repost this question.
I’m really just started to learn how to do 3D programming and to do that i’ve started working/learning on a small custom 3D engine. I can load models and place them in my small game graph, but now i’m to the point where i need to orient the objects. I really need help in this area. I see so many different ways to orient an object in 3D space and i’m confused about exactly which one i should use, and how i should use it. As I understand it there are 4 main ways to store orientation:
Matrix
Euler Angles
Angle Axis
Quaternion
I have seen a lot of information on how to convert each of these to each other format, so the conversion issues are not too much of a problem. What I need help with is which one should I use to store my object orientations? From what I read there are a lot of people that think Quaternion are great and they always talk about using them for the Camera orientation, but I have not read much about using them for general object orientation. Are the conversions to usable formats (the other 3 actually) just too costly to do and thus nobody uses them for anything except where it is very critical like the camera?
If you had an Entity type in your game graph, what would you use to specify the orientation of that entity in the 3d world? Any insight would be great.