Coordinate Systems

 

Survey of Tool Default Coordinate System Update

Table 1. Authortime Default Coordinate spaces: Global, Scene, Model

More Candidates: 

 

Vulkan 2D uses a coordinate system where (-1, -1) is in the top left quadrant.  So (-1, 1) is in the bottom left quadrant

Vulkan 3D defaults to a left-handed coordinate system with +Y down, +Z out of the screen (behind the default view) and +X to the right. 

 

X3D Edit 
Rhino 
AgiSoft 
ArcScene
SketchUp 
Creoform 
PointFuze 
MayAvi
Titania 
Unity
POV-Ray, 
VRM

Matlab
Paraview
Modo
polytrans 
Meshlab 
Vivaty Studio 

Table 2 Art Work and listing of RunTime tools Not Complete

Right-Hand +Yup +Z forward   X3D SAI

Left-Hand  +Zup   UNREAL Engine

Table 2. RunTime Default World Coordinate Space 

 

Hi All, 

An important topic, one that I hope I can tell 
about here and that this wg can develop as the 
basis for a recommendation for a 
"Standard" Interoperable Avatar suitable as 
development platform of Digital Twin concept. 
      
First, it is the opportunity of defining a 
"Standard" Host environment for the user 
to employ the character in any and all "Standard" 
realtime anytime interactive alive applications 
available via our beloved WWW. 
  
The target is is the "Standard" World in which 
a "Standard" twin is expected to be practical. 
That is, the model carries some "Standard" identification 
intended for the host and can produce certain expected 
"Standard" actions and interactions with the host 
scene graph and other characters locally or distributed 
into scenes of other Worlds also via our beloved WWW. 
  
The normative content is intended to be platform agnostic. 
It is possible that a virtual interactor character 
that does not conform to "Standard" 
structures and processes is Interoperable 
in a "Standard" scene if the entity can reproduce the 
required interactions using the "Standard" interfaces. 
Extensions and Innovations to these "Standard" features 
are negotiable with the host and other entities. 
Generally, the user and the model should adapt to 
the host "Standard" feature set and not require 
extensive conversion operations by the host. 
  
So the first step in this is defining global features of 
the Host authortime. For consistency with intentions of the WWW this must be open and free of 
license restrictions for the "Standard" features. 
Likewise, for the runtime, it must recognize and execute 
certain "Standard" structures and interfaces to support 
activities under control of the user. 
    
Developing the scene graph delivered to the host runtime 
is the authortime, where the user generates the user code. 
The organization and functions of the authortime 
must accommodate certain functions of the runtime 
and can include many syntax and structural validation 
steps that may not be desirable of a runtime 
that expects to process error-free user code. 
  
To deliver a standardized authortime and resultant 
user code certain basic environmental determinations 
must be made. 
Of first priority is matching the most basic definitions 
of the target host environment. 
Most basic of that is defining the World, or Global, 
coordinate system. At first thought, at least mine anyway, 
says of course, it is the GL, most probably the WebGL, and 
anything else GL related. 
  
Or, since 2D and 3D computer graphics has been around 
a long, long time, maybe it is best to survey the 
current field of authoring tools. And, as was done at 
the infancy of the GL, find if best practices lead 
instead to an alternative form.  
    
These tables show definitions of default Global and Model 
coordinate systems used in a collection of 3D authoring tools. 
  
As shown, the major distinctions are whether the space is 
y-up or y-down or z-up and either right- or left-hand positive rotation of 
each axis. It seems safe to say +x is always to the model left, viewer right. 


Another factor is the default viewpoint camera, which is pointing toward -z, aimed at the model at 0 0 0. 
In this case, forward is how the model gaze is oriented. 

Probably important to see that some of the 
authoring tools listed can set their global and model local 
space to any of the choices. 
Also important to see that although a model can be 
converted from drawn and animated in one space 
to any other space at authortime, some conversions 
are obvious and straight forward and some can be 
exhaustive and require some special tips and tricks 
only reasonable to implement at authortime. 
  
  
Table of Global and local coordinate systems with added z direction (gaze of model).  
....................Left-Handed........Right-Handed.....+Z Forward.....-Z Forward
Y is UP...................................webGL............webGL 
  
Z is UP 
  

Also see Table 1 supplied by Zeno.  
  
Overall, it is important that the user code  
be delivered ready to run in the "Standard" 
environment.  
On the other hand, it is possible that given 
accurate and complete documentation of the 
content of the current user code 
and of the "Standard" model expected 
by the execution context, that an 
on-board the model intelligence could configure 
most any model for desired functions 
in whatever target runtime.  

 
metaverse