Mantis Bug Tracker

View Issue Details Jump to Notes ] Issue History ] Print ]
IDProjectCategoryView StatusDate SubmittedLast Update
0006743opensim[REGION] Script Functionspublic2013-08-16 22:152017-05-31 14:51
ReporterKayaker Magic 
Assigned Tojustincc 
PrioritynormalSeverityminorReproducibilityalways
StatusassignedResolutionfixed 
PlatformWin/.NETOS0.7.5 Post_fixes b163540-1373047OS Version0.7.5
Product Version 
Target VersionFixed in Version0.9.0 
Summary0006743: llGetRot incorrect from an attachment on a seated avatar
Description    There is a page in the LL Wiki about what the different llGetRot functions return:
http://wiki.secondlife.com/wiki/Rotation#Single_or_Root_Prims_vs_Linked_Prims_vs_Attachments [^]
    It tells you what a ground rezzed root, child, root or child prim of an attached object will return.
    This works correctly for many situations, but fails when called from the root prim of an attachment worn by an avatar sitting on a chair. Both llGetRot and llGetRootRotation are supposed to return the avatar global rotation when called from an attachment. They do this correctly when the avatar is walking arout. But then when the avatar sits on any object, both of those functions stop returning the global rotation. It looks like they both return the rotation of the attachment relative to the attach point.
Steps To Reproduce    Put the following script into a prim, attach the prim to the HUD (center is good). The prim will display an angle that changes as your avatar turns.
    Then sit on any object, the number will freeze and a constant no matter what direction the seat is facing. Try turning your seat with the build dialog, the number does not change as the seat turns. In SL the number changes for a seated avatar on a turning seat, just like it does for a free range avatar turning with the motion controls. If the seat is in a vehicle, as the vehicle turns the number should change (it does in SL) but in OpenSim the number stays fixed.
Additional Informationdefault
{
    state_entry()
    {
        llSetTimerEvent(0.5); //display heading every 0.5 seconds
    }
    timer()
    { //displays 0 for N, 180 for S, -90 for E and 90 for W (which is backwards, so sue me!)
        vector face=<0,1,0>*llGetRot(); //direction avatar is facing
        float ang=llAngleBetween(llGetRot(),llAxes2Rot(<0,1,0>,<-1,0,0>,<0,0,1>));
        if (face.y>0) ang= -ang;
        ang = 180.0*ang/PI;
        llSetText((string)((integer)ang),<0,1,0>,1.0);

    }
}
TagsNo tags attached.
Git Revision or version number
Run Mode Grid (Multiple Regions per Sim)
Physics EngineBulletSim
EnvironmentMono / Windows
Mono VersionOther
ViewerAny
Attached Files

- Relationships
related to 0005941assignedjustincc llGetObjectDetails returns ZERO_ROTATION for OBJECT_ROTATION of a seated avatar in mouselook mode 

-  Notes
(0024281)
Kayaker Magic (reporter)
2013-08-16 22:18

Probably the same bug as mantix 5941, but the LL Wiki is unclear about what llGetRot is supposed to return in mouselook mode. The Wiki is very clear in the case of an attachment, and OpenSim does not return the correct value in this case.
(0031360)
Kayaker Magic (reporter)
2016-11-30 21:03

I tested this today in Kitely (OpenSim 0.8.2.1 Release) and it is working correctly now! Sometime in the last 3 years this has been fixed! I don't see any notes about this in the mantis, but as far as I am concerned this one can be closed.

- Issue History
Date Modified Username Field Change
2013-08-16 22:15 Kayaker Magic New Issue
2013-08-16 22:16 Kayaker Magic Relationship added related to 0005941
2013-08-16 22:18 Kayaker Magic Note Added: 0024281
2013-12-05 18:05 justincc Assigned To => justincc
2013-12-05 18:05 justincc Status new => assigned
2016-11-30 21:03 Kayaker Magic Note Added: 0031360
2017-05-31 14:51 Kayaker Magic Resolution open => fixed
2017-05-31 14:51 Kayaker Magic Fixed in Version => 0.9.0


Copyright © 2000 - 2012 MantisBT Group
Powered by Mantis Bugtracker