Jump to content
Sign in to follow this  
Rolig Loon

Multipose Stand

Recommended Posts

Thanks for the explanation, though. I had changed 

llSitTarget( <0.00, 0.00, 0.80>, ZERO_ROTATION );

to

llSitTarget( <0.00, 0.00, 1.00>, 180_ROTATION );

It didn't work, it just made me sit on the prim, no pose :( lol :P

Share this post


Link to post
Share on other sites

If you hven't declared a variable called

rotation 180_ROTATION = llEuler2Rot(<0, 0, 180> * DEG_TO_RAD);

 

, this won't work. To my knowledge, there is no constant  (loke e.g. ZERO_ROTATION) called 180_ROTATION. If you haven't declared the variable, your script shouldn't compile in the first place ;).

 

So you will have to have either declare and set the variable:

:

180_ROTATION = llEuler2Rot(<0, 0, 180> * DEG_TO_RAD);

  or do it without the variable like Rolig and I demonstrated above.


Share this post


Link to post
Share on other sites

You could certainly remove the restriction in the touch_start event that looks to see if the person who touched it is the person standing on it.

Share this post


Link to post
Share on other sites

This is very cool. I was just thinking about wanting to customize my own pose stand.

But I am getting kicked by the rotation.

When I sit on the stand I enter the default edit position, facing front.

But when I click on the stand to cycle through the animations, I rotate 180 degrees, looking at my back.

I seem unable to stop this.

I tried editing line 28 to: llSitTarget( <0.00, 0.00, 0.80>, llEuler2Rot(<0.0,0.0,PI> );  and got a syntax error.

So I went with:  llSitTarget( <0.00, 0.00, 1.00>, llEuler2Rot(<x, y, z> * DEG_TO_RAD) );

What I get if I make x, y, or z 180,  i.e.,

llSitTarget( <0.00, 0.00, 1.00>, llEuler2Rot(<180, 0.00, 0.00> * DEG_TO_RAD) );

I wind up standing on my head.  It doesn't matter if I do it with the X, Y , or Z.

So I'm stuck here on how to keep my Ava facing forward.

And I'll admit, I'm a dummy on this stuff.

 

Share this post


Link to post
Share on other sites

Well, the syntax error is easy enough.  You're just missing a right parenthesis.

llSitTarget( <0.00, 0.00, 0.80>, llEuler2Rot(<0.0,0.0,PI> ) );

The reason you turn around,of course, is because the internal animation that is triggered when you go in the "Edit Appearance" mode is called "turn_180". That's the one I called in this Multipose Stand too.  If you don't really want that anim, you could always substitute another one like, for example, "stand".  It won't put you into the spread-eagle pose, but it won't turn you around either.  See other possibilties at http://wiki.secondlife.com/wiki/Internal_Animations .

Share this post


Link to post
Share on other sites


Rolig Loon wrote:

Well, the syntax error is easy enough.  You're just missing a right parenthesis.

llSitTarget
( <
0.00
,
0.00
,
0.80
>,
llEuler2Rot
(<
0.0
,
0.0
,
PI
> )
)
;

The reason you turn around,of course, is because the internal animation that is triggered when you go in the "Edit Appearance" mode is called "turn_180". That's the one I called in this Multipose Stand too.  If you don't really want that anim, you could always substitute another one like, for example, "stand".  It won't put you into the spread-eagle pose, but it won't turn you around either.  See other possibilties at
.

Thank You Rolig

 

Share this post


Link to post
Share on other sites

I was thinking it would be nice to have postions and rotations stored for each animation, but I am worried about making the script "over complicated". I guess that would involve having a unique sit target for each animation, right?

If I can figure out some simple way of storing and retrieving the position and rotation information for each script, I might try it.

Share this post


Link to post
Share on other sites


JeremyAtticusFinch wrote:

I was thinking it would be nice to have postions and rotations stored for each animation, but I am worried about making the script "over complicated". I guess that would involve having a unique sit target for each animation, right?

If I can figure out some simple way of storing and retrieving the position and rotation information for each script, I might try it.

I'll be interested to see Rolig's take on this, but, for background, sit targets can't be changed on the fly while an avatar is sitting on the object.   Any changes take effect only after the avatar has got up and when the next avatar sits.

The workround -- and, indeed, the basis for all poseball-free animation systems, like AvSitter, Perfect Sitter and the free nPose -- is to use llSetLinkPrimitiveParamsFast to move the avatar around, depending on what animation is chosen.

The original demonstration of how to do this is to be found in Strife Onizuka's userfunction UpdateSitTarget, which is on the wiki llSitTarget page.  

That does change the sit target, but most of the time you don't need it to do that.    the llSetLinkPrimitiveParamsFast calls take care of the avatar's position and rotation.

 

Share this post


Link to post
Share on other sites

Sorry ... I didn't see Jeremy's post when it came in.  The answer is that that you can probably do what you propose, but it will take a lot of work and the result will not be a simple stand that you can just drop animations into.  The problem is that each anim has its own starting point, defined by the animator.  That's why the sit targets for anims all have to be adjusted individually.  A script that manages several animations needs to store that information for each one and then adjust the position of a "seated" avatar appropriately, as Innula described.  So yes, you could do that with this script, but it would mean rewriting it totally.  If I were doing that, I'd either expect the user to maintain a notecard with sit target info for each anim or I'd take the approach of AvSitter and other scripts that let the user adjust sit targets and then store the information internally for later use. 

Frankly, that's more trouble than it's worth to me.  The appeal of this simple script is that you can drop any anims into it, without any setup, and then zip through them to find the one you need. It's like a texture organizer -- a file sampler with nothing but the basics.  When I'm using the stand to pose for taking a photo, it doesn't bother me that I have to take a few extra seconds to move the pose stand once I've settled on the pose I want. But that's me.

Share this post


Link to post
Share on other sites

i love this script but i would like to know if it is possible that i could change the position ...... my feet are all the way through it and the stand cant be move to change that :(

Share this post


Link to post
Share on other sites

Join the conversation

You can post now and register later. If you have an account, sign in now to post with your account.

Guest
Reply to this topic...

×   Pasted as rich text.   Paste as plain text instead

  Only 75 emoji are allowed.

×   Your link has been automatically embedded.   Display as a link instead

×   Your previous content has been restored.   Clear editor

×   You cannot paste images directly. Upload or insert images from URL.

Sign in to follow this  

×
×
  • Create New...