Fri, Nov 22, 1:15 PM CST

Renderosity Forums / Poser - OFFICIAL



Welcome to the Poser - OFFICIAL Forum

Forum Coordinators: RedPhantom

Poser - OFFICIAL F.A.Q (Last Updated: 2024 Nov 21 6:06 am)



Subject: Plz help on How to set figure Zero Rotation orientation ( reorient to axis, not


dreamcutter ( ) posted Fri, 16 March 2012 at 11:43 PM · edited Fri, 22 November 2024 at 12:45 PM

Attached Link: Hormel Hog poser figure

file_479597.JPG

I'm trying to fix the poses in a Hormel Hog, a pig figure CR2 and its complement of pose PZ2.  Problem is that the initial obj that was rigged not oriented properly and was corrected (my bad) by transformation and memorizing the default (menorize/restore figure) at 0,0,0 then rigged.  The thought was, hit drop to ground and your ready to go.  I see this is not the proper method.  It appears that the OBJ needs to be IMPORTED or oriented to 0,0,0 or the or repositioned and Zero reestablished  so that the feet are on the ground at 0.00.  Its trickier to determine with a quadroped.   How can you reset the ZERO position of a complete figure? 

Please tell me there is a way other that Export / Import mesh and re-rig...

Problem I'm having  with relying Memorize/Restore to default zero, is that your figure will jump around (world transformation) from the OBJ Zero to where the pose or morph was at the time it was created. (Figure at Default or Zero doesnt work).

I figgured out that I need to Isolate props to just the child/parent grops effected BUT IT always resets the whole figure BODY to the Zero point and the fiigure sinks into the ground,  tilts slightly forward.  Its that effect I want to counter.



PhilC ( ) posted Sat, 17 March 2012 at 3:14 AM

To go from where you are now to where you want to be:-

Ensure that the figure contains no bends, scaling or translation.

Select the BODY

If the pig is facing forward, X rotate so that all four feet are level. (If facing left or right then Z rotate.)

Manually Y translate onto ground.

Open joint editor and select Center. I think that is the only option available for the BODY.

Set the xrot orientation value to be the negative of your X rotation.

Go to Edit > Memorize > Figure

Save the figure to the library.

Although convention has become that the fully zero pose puts the figure on the floor it is not essential. Following the above will allow the figure to arrive in the scene correctly orientated and on the floor each time it is loaded.

Hope that helps.


dreamcutter ( ) posted Sat, 17 March 2012 at 10:33 AM

Thanks (again) Phil, this is the guidance I needed.  :) Happy Saturday!



lesbentley ( ) posted Sat, 17 March 2012 at 10:51 AM

file_479616.png

> Quote - [getting all four feet on the ground] Its trickier to determine with a quadroped.

Yes it is harder with a quadruped. These tips may help you to get the correct positioning.

Make sure the GROUND plain is visible (Ctrl+G to toggle its visibility).

Change the Document Display Style to Outline.

Select the Left (or Right) Camera view. This camera will give you an orthogonal view that is always parallel to the ground, so it is much easier to to position the figure. Position the camera to get a good view of the front and back feet. Now you can easily see when the feet are parallel with, and on the GROUND.

Note that the GROUND plain that we used in the above is very slightly below zero altitude (by -0.001 PNU), but probably close enough for your current purpose. If you want an exact guide to zero altitude, you can follow the steps below.

Hide the GROUND plain (Ctrl+G to toggle its visibility). Create a Walk Path (Figure menu > Create Walk Path). Set the xScale of the path to 0.100, and the zTran to -1.000. Memorize and lock the path. Create a second Walk Path, set xSale to 0.100, yRotate to 90.0, and xTran to -1.000. Memorize and lock the path. This creates a good visual reference for exact zero altitude. You may want to save this set up as a prop for future use, use 'Select Subset' when saving to include both paths in the one prop file.


lesbentley ( ) posted Sat, 17 March 2012 at 11:18 AM · edited Sat, 17 March 2012 at 11:21 AM

file_479617.png

The image above shows the difference in altitude of a Walk path at zero altitude, and the Poser GROUND plain, which is 0.001 PNU (2.621 mm) below zero.


dreamcutter ( ) posted Sat, 17 March 2012 at 11:30 AM

With respect to the method PhilC suggested, while improved due to the inclusion of the XROT adjustment I had omitted, I get the similar results.  Its not tilted, but a partial pose saved from the figur (memoriozed at Zero with the XROT adjustment and Z, Zero X with Y at DROP to ground hight), will cause same figure restored, to sink into ground to ZERO Y when the partial pose is loaded.  By partial pose, I am saving the pigs ears in teh back position, and adding to pose library with just head, and both ear (and ear hair) groupings as selected subset.  I woudlnt think a loading a partial pose affects body world translations.

Wondering as I write this... Could there be something in this CR2, like an errant morph channel that is causing this translation upon load? 



dreamcutter ( ) posted Sat, 17 March 2012 at 11:36 AM

Good stuff there Les.  I need to rework the walk animation in this Pig... The walk path hight makes sence to use, because a creatures feet will conform to the terrain anyways I suppose.  My issue is that the figure seems to want to Zero mid torso rather than the feet.  While XROT in teh Body Center fixed the rotational, not seeing where top set Y trans adjustment.  yOFFSET in parameters of Body parameters... is thsi it?



lesbentley ( ) posted Sat, 17 March 2012 at 11:59 AM

Best practice is to model the mesh so that if you import the obj into Poser (with all import options turned off), it loads in the correct position (centered with feet on the floor), and at the correct scale.

But from where you are at now, changing the obj as above would probably require you to re-rig from scratch.

Quote - Its not tilted, but a partial pose saved from the figure (memoriozed at Zero with the XROT adjustment and Z, Zero X with Y at DROP to ground hight), will cause same figure restored, to sink into ground to ZERO Y when the partial pose is loaded.

That should not be happening with a partial pose that that does not include the BODY or base geometry actor (eg hip).

Quote - Wondering as I write this... Could there be something in this CR2, like an errant morph channel that is causing this translation upon load?

I guess that is not absolutely impossible, but highly unlikely in the circumstances as you describe. I would rather suspect that the pose is not as "partial" as you think it is.

If the pose includes the hip (or what ever the base geometry actor is), or the BODY, than the results you are getting are more understandable. I suggest you inspect the pz2 file in a text editor to make sure it only includes the parts you think it does (eg head and ears).


lesbentley ( ) posted Sat, 17 March 2012 at 12:49 PM · edited Sat, 17 March 2012 at 12:56 PM

Quote - My issue is that the figure seems to want to Zero mid torso rather than the feet.  While XROT in teh Body Center fixed the rotational, not seeing where top set Y trans adjustment.  yOFFSET in parameters of Body parameters... is thsi it?

All the translations of the BODY should be set to zero. The translations of the hip should also be zero, except if, in a zeroed pose, the feet are not on the ground, in which case the yTran of the hip (or base geometry part, if it is not hip) should be adjusted to place the feet on the ground. The figure needs to be memorized (Alt+Ctrl+F) in this configuration.

I see in Phil's post, that he suggests that you place the feet on the ground by translating the BODY, rather than the hip. That's not the way I would do it. Of course I think my way is better, but then I would, wouldn't I? ;)

When saving a pose the yTran of the BODY should be zero (with Phil's method it should be at the memorized value), and the yTran of the hip (or base geometry actor, if it is not hip) should be whatever is necessary to place the feet (or lowest part) on the ground. Note that the translations of the BODY will not be saved in a normal pose, but they are none the less important when saving a pose, because they affect your perception of when the feet are on the ground.

When saving a pose, never include the "Body transformation" unless you have a very good reason for doing so, and fully understand what the affects will be!


lesbentley ( ) posted Sat, 17 March 2012 at 1:13 PM · edited Sat, 17 March 2012 at 1:24 PM

file_479620.jpg

> Quote - not seeing where to set Y trans adjustment.

You set the yTran from the Parameters Palette of the actor you want to translate.

The "Offset" stuff does not relate directly to the translation. It is for moving the 'origin' (a.k.a. "Center Point" or "axis of rotatioion") of the actor.


dreamcutter ( ) posted Sat, 17 March 2012 at 2:34 PM · edited Sat, 17 March 2012 at 2:36 PM

Using a "No Nonsense Utility" (always makes me grin)  to edit the PZ2, I only see Actors for the coorsponding to the selected subset.   Dont see anything affecting figure translation.  Is there an option in PP2012 that I may have set that zeros a figure upon partial prop load?

I examined various poses, with simmilar results.  following is the pz2 for a simple 22 degree rotation of the right hand. Note I dont see any body translations.    What is "refactor" mean?

Pz2 Format edited to simplify reading here...

version
number 9
thighLength 0.417316
targetFigure Hormel Hog
refFigure JamesG2
actor rHand:1
  channels
      rotateY yrot
         keys:                k 0 0
      rotateZ zrot
         keys:                 k 0 0
      rotateX xrot
         keys:                 k 0 60
      translateX xtran
         keys:                 k 0 -0.000140305
   trackingScaleMult 1
       translateY ytran
          keys;                  k 0 0.485201
    trackingScaleMult 1.000000
         translateZ ztran
            keys:                  k 0 0.0357903
     trackingScaleMult 1.000000
 figure
 refactor rHand:2
    channels
       rotateX xrot
         keys:            k 0 60
        rotateY yrot
          keys;            k 0 0
      rotateZ zrot
          keys:            k 0 0
      translateX xtran
          keys:            k 0 -0.128259
      trackingScaleMult 1
      translateY ytran
          keys:            k 0 0.530797
      trackingScaleMult 1.000000
      translateZ ztran
          keys:            k 0 0.0338803
      trackingScaleMult 1.000000
figure
version
number 9
thighLength 0.417316
targetFigure Hormel Hog
figure
figure



dreamcutter ( ) posted Sat, 17 March 2012 at 3:09 PM · edited Sat, 17 March 2012 at 3:15 PM

The hip X & Y are Zero, and so is Body based on Phil's suggestion. I just double checked and created a loaded a new figure CR2 to the library with hip and body at z&x=0. XRot is set to -4 roll correction. Body xROT=+4 to counter.  From that same CR2 Create a simple 1 joint rotational pose  PZ2.  Close and restart, just to be sure all is clear.   Now I load in the new cr2 base figure, hes on the floor looking fine.  Then add the simple partial pose.... his hand waves BUT HE ALSO SINKS into the floor.    Hitting Drop to floor from there does 2 things... it raises the figure with Y=4.171 (ok enough) but also moves him bach with zTra=.309 (???)

WHat can I check for in the base CR2 that may be causing this if not in the PZ2...

[BTW Yes, in PZ2 saves no Morph Channels or Body transformation.  THIS is NOT the case with the Hormel Hogs beta download at FarmPeeps.com, his poses are all messed up and may infcat have morph channels or transformations.  Fixing that.]



lesbentley ( ) posted Sat, 17 March 2012 at 4:52 PM · edited Sat, 17 March 2012 at 4:54 PM

Quote - What is "refactor" mean?

I think it is only used when the pose is applied as a universal pose. P6 did not have this.

Quote - Dont see anything affecting figure translation.  Is there an option in PP2012 that I may have set that zeros a figure upon partial prop load?

No. A normal pose does not, and should not, contain any data for the BODY actor. If a pose contained translation data for the BODY, much of the time applying a pose would change the location of the figure in the scene. That is not normally what you want. You should be able to apply a pose to a figure, and it just assumes a pose... without going on a trip to the moon.

Quote - Hitting Drop to floor from there does 2 things... it raises the figure with Y=4.171 (ok enough) but also moves him bach with zTra=.309 (???)

If,  Drop to Floor (DTF) is used, and the BODY has its x or z rotation set at anything other than zero, this can cause the hip to translate in z or x.

When you use DTF, Poser moves the hip in such a way that it moves straight up from its current position (very clever), but if the BODY has been rotated, in order for the hip to move straight up relieve to the UNIVERSE, it needs to translate relative to the BODY. The hip's translations shown on its dials, are always relative to the BODY.


dreamcutter ( ) posted Sat, 17 March 2012 at 9:05 PM · edited Sat, 17 March 2012 at 9:08 PM

Ok, I can accept how DTF is used and how this explains the small Z translation. But  why does the figure sink to floor with a verified partial PZ2 pose (like above) applied??  I'm out of luck on transferring rigs too. It fails...trying to load it on another obj, even one exported from same. I think something with the weight maps may be causing incompatabilities (?) Can obj's be swapped out easily using PZ3 Editor or such?



lesbentley ( ) posted Sat, 17 March 2012 at 11:59 PM · edited Sun, 18 March 2012 at 12:07 AM

Quote - But  why does the figure sink to floor with a verified partial PZ2 pose (like above) applied??

That one has me baffled. I can't think of a plausible reason why that would happen.

Quote - Can obj's be swapped out easily using PZ3 Editor or such?

Yes, it is very easy to use a different obj in an existing cr2 file. Normally there are two lines in the cr2 that begin with 'figureResFile', the rest of the line contains the path to the obj file. An example would be:

figureResFile :Runtime:Geometries:GreyAlien:GreyAlien2-5.obj

To make the cr2 use a different obj file, (assuming that the old and new obj files use the same grouping) all you need to do is edit the path in the two figureResFile lines so that they point to the new obj file. Occasionally you might come across a different system where the cr2 does not have figureResFile lines, and instead uses embedded geometry in a 'geomCustom' code block. In those situations, saving the figure from a Poser scene back to the library palette, will convert it into a normal figure that uses a 'figureResFile'.

There is one big catch to all this. It is easy to replace the geometry in a cr2, but that does not mean that the existing rigging will work well with the new obj file. Unless the new obj file is fairly similar to the old one, in shape, and even more critically in position, it will not work well with the old rigging. If you were to use the V4 obj in the GreyAlien cr2, the result would probably be totally useless.


dreamcutter ( ) posted Sun, 18 March 2012 at 6:47 PM

Re-rigged the pig, and reverse engineered the old cr2.  What happened is, somehow the pig's BODY geometry scaled to 200%, I believe before it was JP & weightmapped.  You cant tell because body scale now says 100%.  This causes figure to sink into floor when zeroed or a partial pose applied.  Replacing the obj even with the same mesh reposituioned to Zero wouldnt fix it as the maps and skeleton are for an oversized frame, that caused rippiling problems thatare uncorectable.  Explains why I cant copy the figure/jp's to another rig (in poser, whitescreen).  This also explains some motion translation attenuations I had to make for BHV exports to work.  I am rebuilding the pig rig from the obj import forward in poser including hair. 



Privacy Notice

This site uses cookies to deliver the best experience. Our own cookies make user accounts and other features possible. Third-party cookies are used to display relevant ads and to analyze how Renderosity is used. By using our site, you acknowledge that you have read and understood our Terms of Service, including our Cookie Policy and our Privacy Policy.