Hacker Newsnew | past | comments | ask | show | jobs | submitlogin

Interesting but lacking some information. First up, of course, most people are familiar with rotating the camera rather than a single object. This is how most 3d viewers work, even if the orbit point is locked to the center of an object (e.g. in a 3d product display). So it's important to specific which we're talking about in an introductory article on 3d rotation methods.

But, ok. We're talking about schemes to rotate a single object rather than the camera.

The turntable controls they talk about are a special case of gimbal controls where we lock rotation to one or two axes. But in my personal experience, when it's two or three axes people still call it gimbal controls whereas turntable controls is rotation in a single axis (as if on a turntable, hence the name). But then again, 3d terminology is so mixed up across different fields that maybe some people have only heard the two axes version called a turntable. Not a big deal, but why no mention at all of gimbal controls?

Then, trackballs. In my experience, when it's limited to a single hemisphere of rotation, these are called arcball controls. Trackballs are supposed to emulate a trackball mouse which don't have this limitation.

And finally, no mention at all of the dreaded gimbal lock (where two of axes end up overlaid on each other and the controls loses a degree of freedom), which is a major reason for choosing one type over another.

Overall, not an amazing article. I checked it again to see if I missed anything and realized it's a blog post for some app - so, basically an ad - which probably explains the lack of effort.



Gimbal lock purely a consequence of implementation detail, completely independent from the three modes of interaction. Otherwise, I agree with the rest of your comment.


> Trackballs are supposed to emulate a trackball mouse which don't have this limitation.

Some systems implement a trackball UI that behaves like a real trackball, i.e. it also has inertia, so you can give an impulse towards a direction and the 3D model will continue to rotate after you no longer click the mouse button, until you stop the rotation.

I do not remember using any trackball UI where the rotation was limited. When the trackball UI did not have inertia, than you would need to do 3 pushes for a rotation over 360 degrees or 2 pushes for a rotation over 180 degrees, but you could still reach any angles.


Gimbal lock happens based on how you calculate the rotations, and it could happen to both these methods if you do it incorrectly. It is not inherent to any particular style of translating user input into a rotation.


Yeah the very first comparison in the article between Blender and Mesh lab is mixing camera rotation vs object rotation.

It's also missing the absolute most natural user interface for rotating objects, which is when you are in VR or with hand tracking. If you have only one hand controller you attach the object to it so you can simply inspect it under any angle, and if you have two-hand tracking you can have translation, scale and rotation based on a virtual segment between the hands. The little Leap motion device worked like this it was very natural.




Guidelines | FAQ | Lists | API | Security | Legal | Apply to YC | Contact

Search: