Wed, Nov 20, 11:26 AM CST

Renderosity Forums / Poser - OFFICIAL



Welcome to the Poser - OFFICIAL Forum

Forum Coordinators: RedPhantom

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



Subject: Poser 6: 'Goto' poses for props?


3dcheapskate ( ) posted Sat, 03 March 2012 at 9:27 AM · edited Wed, 20 November 2024 at 9:01 AM

'Goto' poses (i.e. setting nothing but xTran/yTran/zTran) seem to work for figures but not for props. Am I missing something?

(I realized I can do it in Python with, e.g. act.SetParameter("xTran",1.0), but if I specify 1.0 the parameter dial is set to 8.6 - Why's that?)


The 3Dcheapskate* occasionally posts sensible stuff. Usually by accident.
And it usually uses Poser 11, with units set to inches. Except when it's using Poser 6 or PP2014, or when its units are set to PNU.

*also available in ShareCG, DAZ, and HiveWire3D flavours (the DeviantArt and CGBytes flavour have been discontinued).



PhilC ( ) posted Sat, 03 March 2012 at 9:33 AM

Python will work in native Poser units whereas your dials may be in empirical units depending on what you have set in preferences.


lesbentley ( ) posted Sat, 03 March 2012 at 4:14 PM

Quote - 'Goto' poses (i.e. setting nothing but xTran/yTran/zTran) seem to work for figures but not for props. Am I missing something?

You probably are missing something. Poses work differently for props, it's all rather complex. First off, no pz2 (pose) file will work unless there is a figure in the scene. Second, even if there is a figure in the scene, a normal pose won't work on a prop unless the prop is parented to a figure.

To overcome the problem of a pose not working on a prop without a figure in the scene, you can change the file extension to cm2 and place the file in a camera folder.

To overcome the problem of a pose not working unless the prop is parented to a figure you can edit the pose file to address the prop as "actor", eg:

actor box_1

not

prop box_1

A third problem is that a pose for "box_1" will not work on "box_2" (a second instance). This can be overcome by using "actor $CURRENT", then the pose will work on any selected element, but care must be taken to have the right thing selected before applying the pose.


3dcheapskate ( ) posted Sat, 03 March 2012 at 8:51 PM · edited Sat, 03 March 2012 at 8:52 PM

PhilC - thanks. Obvious once you know!

lesbentley - Of course! I knew that! I've used 'actor $CURRENT' for many MAT poses, and the 'pz2 not working unless there's a figure in the scene' rings a bell too (I think I even mentioned it in one of my readmes)

That solves my problem anyway - I'll always have a figure in the scene for the specific goto poses I'm looking at, and with 'actor $CURRENT' the goto poses work fine. (I've just created a new sword prop, with smartprop versions to put it in the left/right hand of Apollo, Antonia, Jessi, James, A3, H3,etc. Hand poses for each character too. I now want to do the same with the scabbard. It struck me that a set of 'Goto A3 Left Hand' type poses would be more general purpose and less work than having a smartprop version of each prop for each hand of every figure. The user would have to parent the prop of course. Also seems a good candidate for a Python script - AskMenu() to select the character, but how do I do the left/right hand buttons?)


The 3Dcheapskate* occasionally posts sensible stuff. Usually by accident.
And it usually uses Poser 11, with units set to inches. Except when it's using Poser 6 or PP2014, or when its units are set to PNU.

*also available in ShareCG, DAZ, and HiveWire3D flavours (the DeviantArt and CGBytes flavour have been discontinued).



PhilC ( ) posted Sat, 03 March 2012 at 9:13 PM

Follow that with a second AskMenu() the list for which is ["Right Hand","Left Hand"]


lesbentley ( ) posted Sun, 04 March 2012 at 9:01 AM

Quote - with 'actor $CURRENT' the goto poses work fine

One problem with 'actor $CURRENT' is that if you have the hand selected by mistake instead of the sword, it's the hand that will end up being translated, and if IK is off, the result might be quite bizarre. Using 'actor BigSharpSword" has the advantage that only the sword can be affected, and 'actor $CURRENT' gives no advantage unless there is going to be more than one instance of the sword in the scene, which is probably not very likely with a sword.

Quote - It struck me that a set of 'Goto A3 Left Hand' type poses would be more general purpose and less work than having a smartprop version of each prop for each hand of every figure. The user would have to parent the prop of course.

No, the user would not necessarily need to parent the prop. You can change the parent via a pose. So if if the sword is set up to be smart parented to the right hand when it loads, a pose can used a to change its parent to the left hand, eg:

{

version
    {
    number 5
    }

actor $CURRENT
    {
    smartparent lHand
    }
}

The pose above should work to parent any selected item to the left hand. Of course you would still need to add the positioning data to the pose.


3dcheapskate ( ) posted Sun, 04 March 2012 at 10:33 AM · edited Sun, 04 March 2012 at 10:37 AM

Thanks again Phil/Les.

Prop Goto Poses - Yes, I've already had that "Whoa! Where did Mike just go? (and why's the sword not moved?)" moment! Also noticed that Edit > Undo Change doesn't put it back.

There's very likely to be multiple instances of the same sword in the scene (the ones I'm working on were historically often used in pairs) so the actor $CURRENT approach definitely seems the way to go. Just tried that smartparent lHand/rHand and it works fine even if the prop was loaded unparented.

I've already worked out the xyz rotation/translations necessary to position/orient the prop correctly for a dozen or so zeroed figures (luckily I started with M3, whose default pose is asymmetrical, and realised I needed to use the zero pose instead!) so the goto poses are coming along nicely.

Prop Goto Script - For the script I'm already using a second AskMenu which is fine, but I was hoping to find an undocumented PoserPython method to create that three-button (left, right, and cancel) "Which hand?" dialog.

I guess that if both the figure and prop were selected (figure as figure, and prop as actor) then it should be quite easy to smartprop using the actor.SetParent() method?

Using a script also avoids accidentally using the goto on the figure itself - I've already got an if actor.IsBodyPart(): check in there to abort it.

A new oddity I noticed - I'm running the script from a very simple poser file:

{
version
    {
    number 6
    }
runPythonScript ":Runtime:Python:poserScripts:3DCheapskate:PropGoto.py"
}

If I make this file a pp2 in the Props folder it runs fine. But if I make it a pz2 in the Pose folder it runs twice every time! Can't figure that one out.


The 3Dcheapskate* occasionally posts sensible stuff. Usually by accident.
And it usually uses Poser 11, with units set to inches. Except when it's using Poser 6 or PP2014, or when its units are set to PNU.

*also available in ShareCG, DAZ, and HiveWire3D flavours (the DeviantArt and CGBytes flavour have been discontinued).



lesbentley ( ) posted Sun, 04 March 2012 at 6:44 PM · edited Sun, 04 March 2012 at 6:47 PM

Quote - A new oddity I noticed - I'm running the script from a very simple poser file:

{
version
    {
    number 6
    }
runPythonScript ":Runtime:Python:poserScripts:3DCheapskate:PropGoto.py"
}

If I make this file a pp2 in the Props folder it runs fine. But if I make it a pz2 in the Pose folder it runs twice every time! Can't figure that one out.

Try using this syntax:

{

version
    {
    number 6
    }
}
{
version
    {
    number 6
    }
runPythonScript :Runtime:Python:poserScripts:ScriptsMenu:NameOfScript.py
}

Don't know why it works, but it does.


3dcheapskate ( ) posted Sun, 04 March 2012 at 9:06 PM · edited Sun, 04 March 2012 at 9:07 PM

Thanks Les, that fixes it. (I'd noticed that trying to save a prop, parented or not, to the PZ2 library created that duplicate version thing. But it didn't save any any of the rotation/translation data though. My inability to create a prop goto pose this way was the initial reason for this thread)

Thanks to the advice here I'm more than happy now. I've got a set of simple PZ2 goto poses (one per hand per character) that smartparent the prop correctly. I've also got a Python script (run from another PZ2) that lets me select the character and hand and then does the same as the goto poses.

Plenty of testing and fine-tuning of the script and goto poses still to do. Then proper models of the sword and scabbard (my current one's just a very simple placeholder to get the smartproping and hand poses right), some textures, and some sample poses. Then it'll all be up on the Renderosity Freestuff.


The 3Dcheapskate* occasionally posts sensible stuff. Usually by accident.
And it usually uses Poser 11, with units set to inches. Except when it's using Poser 6 or PP2014, or when its units are set to PNU.

*also available in ShareCG, DAZ, and HiveWire3D flavours (the DeviantArt and CGBytes flavour have been discontinued).



lesbentley ( ) posted Mon, 05 March 2012 at 6:42 AM

Quote - I'd noticed that trying to save a prop, parented or not, to the PZ2 library created that duplicate version thing. But it didn't save any any of the rotation/translation data though.

I'm very surprised that you say "parented or not". It's my experience in P6 and previous, that I can save a pose for a prop that is parented to a figure, using 'Select Subset' to include only the prop.


3dcheapskate ( ) posted Mon, 05 March 2012 at 10:58 PM · edited Mon, 05 March 2012 at 10:59 PM

Sorry, I just got muddled up! Saving a prop as a PZ2 if it's parented (to e.g. Mike3) works fine, just as you said.

Trying to save an unparented prop as a PZ2 is a different matter - there's no sign of the prop in the PZ2 file at all, regardless of whether I use select subset (and which subset I select). So I don't know where my "it didn't save any any of the rotation/translation data though" came from. Like I said, I think I got muddled up.

(I know this is the Poser forum, but I just tried my prop goto poses in DAZ Studio 3. Works fine, except the smartparenting doesn't work.)


The 3Dcheapskate* occasionally posts sensible stuff. Usually by accident.
And it usually uses Poser 11, with units set to inches. Except when it's using Poser 6 or PP2014, or when its units are set to PNU.

*also available in ShareCG, DAZ, and HiveWire3D flavours (the DeviantArt and CGBytes flavour have been discontinued).



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.