Monday, May 27, 2013

Modeling Monday 3

Locating an Object

There are 6 things required to properly locate an object in a 3D world.  X, Y, and Z, of course, but also X rotation, Y rotation, and Z rotation.  In navigating systems like in robotics, games, missiles and submarines this is called the "pose".  In a humanoid centric system like DAZ Studio that term is already taken.  Traditionally position only covers the X, Y, Z translations and not the orientations.  I am going to use "location" for now.  I will probably learn that there is already a better more widely used term, but I don't know it now.  When I do learn, I will pass it on.

The X, Y, and Z describe space that contains all of the objects in the scene. In DAZ Studio we build a scene. (An animation is a series of scenes where each scene is a frame in the animation.)  At any time there is only one scene and only one world space.  Because of parenting, fit-to, and other indispensable features.  The exact location of all objects is not so clear cut.  When one object becomes parented to another its "space" becomes relative to the parent.

Here is a small experiment to make this clearer:

Start DAZ Studio and Create New Primitive   cube  1 m  twice  one on top of the other. Only one cube is visible because both cubes are in the same "location". Check the parameters of each cube and you will see they are at 0,0,0 and rotations are also 0,0,0.

Now X translate cube 2 250 and adjust your view until both are clearly seen.  Color them by changing the diffuse color in the surfaces tab.  Pick any two colors, just make it easy to tell the cubes apart.

Parent cube 2 to cube by drag-dropping cube 2 on top of cube in the scene tab. Cube now has a small triangle beside the small icon and name.  When the triangle has the base to the left and the apex to the right the cube is "collapsed" so its children don't show.  When the triangle base is on top and the apex points down cube is expanded and all of its children (now cube 2) become visible in the scene tab and the children icon-names are indented.

Select cube (the parent) and Y rotate 90

Both cubes have moved and cube 2 is now behind cube.  Select cube 2 and X translate 200.

Select cube and Y rotate 0  then Z rotate 90.  This will place cube 2 above cube.  Select cube 2 and Y rotate 45

cube 2 has rotated, but on world space X axis not Y.  This occurs because the location of cube 2 is now relative to cube at the time cube 2 was parented.

Go to the screen tab and right click on cube 2 and choose change parent, when the dialog box opens offering objects choose None.  Now check the parameters.  They reflect what you would expect for world space.  The algebra for what is happening here is not complex, but keeping the details straight can be tough.  As you see DAZ Studio is, naturally, keeping track exactly.  It can be hard to locate child objects by parameters, but fortunately it's not hard to do visually.

<< Screen 05 >>

If you computer is low powered like mine consider unparenting the prop you have to place in a hand etc and using world space to move it where it needs to be then parenting it again.