← All ideas
  • Published 24 Feb 2020

Projection Space: A Proposal to Simplify Global Axis Orientation Variability

Proposal Add a new level of orientation above Blender’s world. For the sake of this discussion, I’ll refer to this level of orientation as a ‘universal projection.’ This universal projection would act as a parent container for Blender’s 3D world and by rotating the universe (parent), the world (child) can have any axis orientation desired. And because the axis gizmo remains part of the world, not the universe, both preferences for the up axis can be accommodated with minimal coding effort. Origin of the Idea for a Universal Projection While re-watching Nathan Vegdahl’s Humane Rigging video series (specifically, the Building a Better Ball Rig with Empties video) I watched as Nathan illustrated parenting as a rigging tool when he made a ball the child of a cube. He then reoriented the cube to 90 degrees and when he subsequently moved the ball along its x-axis, it moved in world space along the z-axis.

This made me wonder if Blender could encapsulate the entire 3D world inside a new higher-level entity—a 3D universal projection—that could be rotated. Once the universal projection is rotated, the world (as a child of the universe) will have its axes oriented in whichever way makes the user feel most comfortable. But Why Bother? Blender users have been discussing the relative merits of axis-orientation for at least two decades. Some prefer the z-axis as the vertical orientation while others prefer the y-axis. Maya offered the World Coordinate System option (switching from y-up—the default—to z-up) as early as 2008 and may well be unique in having this feature. But why do these two differing orientations exist to begin with and why do some prefer one over the other? Also, can understanding the differences in viewpoint help clarify why certain users believe it’s important to have a choice while others don’t? Where these Divergent Perspectives Originated Math and physics have, for thousands of years, worked with the z-axis oriented vertically. As far as can be ascertained, this began with Euclid and this orientation is known as absolute, unitary space. In the 17th century, Sir Isaac Newton concluded that absolute, unitary space is inaccessible to the senses (The Hippocampus as a Cognitive Map, section 1.2 Newton, Leibniz, and Berkley, p.11). From this we can extrapolate that there is another way to perceive space which, in the book just cited, is referred to as psychological or egocentric space.

Other fields that use the absolute, unitary space model are architecture and, more recently, some game engines. In these professions, the z-axis is vertical.

Studies at Harvard University’s Center on the Developing Child implicate that awareness of egocentric space derives from two systems in our brains. The first of these is our proprioceptive sense which allows us to differentiate between right and left. In concert with that, the vestibular system uses fluid in the inner ear to make us aware of gravity and therefore gives us our sense of which way is up. The result of this is that our awareness grows from these two systems to give us a sense of right and left, up and down.

Professions that use the egocentric space model as defined by Newton are film, animation, and UI programming. The latter is, of course, because the computer display can only be measured in two dimensions.

Based on this, I submit that the difference between the two user viewpoints is:

  • z-up users are more oriented to absolute, unitary space, and
  • y-up users are more oriented to egocentric space.

Which came first, Absolute or Egocentric Spatial Orientation? Conceptually, absolute space has been around since Euclid. Of the two spatial orientations, it’s the more advanced because it was conceived by a scientific mind to better understand our world and our universe.

Developmentally, our proprioceptive and vestibular senses orient us to egocentric space while we’re still in the cradle. It follows that unless or until a person is indoctrinated into the more scientific viewpoint, she may very well feel awkward in a z-up world.

gizmo.png

33.3%

Development Status: Open

Upvote 1 Downvote 2
rontarrant
24 Feb 2020

1 Comment

IIIFGIII

Z up today is more ecosystem then just some isolated thing to visualize axis in viewport. Shaders use Z up, normals use Z up, lot of things bound each other with this Z up. And it work same way in lot of different software.

To add Y up is to bring god damn ton of work and headache for potential developers to make all things work together without conflicts and all this for very questionable goal...

PS better to use less words and cleaner suggestions. I spent some time to get what exactly you suggested. If you wrote just that you propose to add Y up option - it would had same impact.