Mantis Bug Tracker

View Issue Details Jump to Notes ] Issue History ] Print ]
IDProjectCategoryView StatusDate SubmittedLast Update
0008182opensim[MISC] DSGpublic2017-05-31 04:062017-05-31 13:09
ReporterManni 
Assigned To 
PrioritynormalSeverityminorReproducibilityalways
StatusnewResolutionopen 
PlatformWindows10, Ubuntu 17.10OSallOS Versionall
Product Versionmaster (dev code) 
Target VersionFixed in Version 
Summary0008182: ScenePresenceAnimator.cs - line 622 - 2x mHipLeft - 0x mSkull
Descriptionoriginal:
            parts.Add("mPelvis"); parts.Add("mHead"); parts.Add("mTorso");
            parts.Add("mHipLeft"); parts.Add("mHipRight"); parts.Add("mHipLeft"); parts.Add("mKneeLeft");
            parts.Add("mKneeRight"); parts.Add("mCollarLeft"); parts.Add("mCollarRight"); parts.Add("mNeck");
            parts.Add("mElbowLeft"); parts.Add("mElbowRight"); parts.Add("mWristLeft"); parts.Add("mWristRight");
            parts.Add("mShoulderLeft"); parts.Add("mShoulderRight"); parts.Add("mAnkleLeft"); parts.Add("mAnkleRight");
            parts.Add("mEyeRight"); parts.Add("mChest"); parts.Add("mToeLeft"); parts.Add("mToeRight");
            parts.Add("mFootLeft"); parts.Add("mFootRight"); parts.Add("mEyeLeft");


exchange for:
/// Torso and Head
parts.Add("mPelvis");
parts.Add("mTorso");
parts.Add("mChest");
parts.Add("mNeck");
parts.Add("mHead");
parts.Add("mSkull");
parts.Add("mEyeRight");
parts.Add("mEyeLeft");
/// Arms
parts.Add("mCollarLeft");
parts.Add("mShoulderLeft");
parts.Add("mElbowLeft");
parts.Add("mWristLeft");
parts.Add("mCollarRight");
parts.Add("mShoulderRight");
parts.Add("mElbowRight");
parts.Add("mWristRight");
/// Legs
parts.Add("mHipLeft");
parts.Add("mKneeLeft");
parts.Add("mAnkleLeft");
parts.Add("mFootLeft");
parts.Add("mToeLeft");
parts.Add("mHipRight");
parts.Add("mKneeRight");
parts.Add("mAnkleRight");
parts.Add("mFootRight");
parts.Add("mToeRight");
///Hands
parts.Add("mHandThumb1Left");
parts.Add("mHandThumb1Right");
parts.Add("mHandThumb2Left");
parts.Add("mHandThumb2Right");
parts.Add("mHandThumb3Left");
parts.Add("mHandThumb3Right");
parts.Add("mHandIndex1Left");
parts.Add("mHandIndex1Right");
parts.Add("mHandIndex2Left");
parts.Add("mHandIndex2Right");
parts.Add("mHandIndex3Left");
parts.Add("mHandIndex3Right");
parts.Add("mHandMiddle1Left");
parts.Add("mHandMiddle1Right");
parts.Add("mHandMiddle2Left");
parts.Add("mHandMiddle2Right");
parts.Add("mHandMiddle3Left");
parts.Add("mHandMiddle3Right");
parts.Add("mHandRing1Left");
parts.Add("mHandRing1Right");
parts.Add("mHandRing2Left");
parts.Add("mHandRing2Right");
parts.Add("mHandRing3Left");
parts.Add("mHandRing3Right");
parts.Add("mHandPinky1Left");
parts.Add("mHandPinky1Right");
parts.Add("mHandPinky2Left");
parts.Add("mHandPinky2Right");
parts.Add("mHandPinky3Left");
parts.Add("mHandPinky3Right");
///Face
parts.Add("mFaceForeheadLeft");
parts.Add("mFaceForeheadCenter");
parts.Add("mFaceForeheadRight");
parts.Add("mFaceEyebrowOuterLeft");
parts.Add("mFaceEyebrowCenterLeft");
parts.Add("mFaceEyebrowInnerLeft");
parts.Add("mFaceEyebrowOuterRight");
parts.Add("mFaceEyebrowCenterRight");
parts.Add("mFaceEyebrowInnerRight");
parts.Add("mFaceEyeLidUpperLeft");
parts.Add("mFaceEyeLidLowerLeft");
parts.Add("mFaceEyeLidUpperRight");
parts.Add("mFaceEyeLidLowerRight");
parts.Add("mFaceEyeAltLeft");
parts.Add("mFaceEyeAltRight");
parts.Add("mFaceEyecornerInnerLeft");
parts.Add("mFaceEyecornerInnerRight");
parts.Add("mFaceEar1Left");
parts.Add("mFaceEar2Left");
parts.Add("mFaceEar1Right");
parts.Add("mFaceEar2Right");
parts.Add("mFaceNoseLeft");
parts.Add("mFaceNoseCenter");
parts.Add("mFaceNoseRight");
parts.Add("mFaceNoseBase");
parts.Add("mFaceNoseBridge");
parts.Add("mFaceCheekUpperInnerLeft");
parts.Add("mFaceCheekUpperOuterLeft");
parts.Add("mFaceCheekUpperInnerRight");
parts.Add("mFaceCheekUpperOuterRight");
parts.Add("mFaceJaw");
parts.Add("mFaceLipUpperLeft");
parts.Add("mFaceLipUpperCenter");
parts.Add("mFaceLipUpperRight");
parts.Add("mFaceLipCornerLeft");
parts.Add("mFaceLipCornerRight");
parts.Add("mFaceTongueBase");
parts.Add("mFaceTongueTip");
parts.Add("mFaceLipLowerLeft");
parts.Add("mFaceLipLowerCenter");
parts.Add("mFaceLipLowerRight");
parts.Add("mFaceTeethLower");
parts.Add("mFaceTeethUpper");
parts.Add("mFaceChin");
///Spine
parts.Add("mSpine1");
parts.Add("mSpine2");
parts.Add("mSpine3");
parts.Add("mSpine4");
///Wings
parts.Add("mWingsRoot");
parts.Add("mWing1Left");
parts.Add("mWing2Left");
parts.Add("mWing3Left");
parts.Add("mWing4Left");
parts.Add("mWing1Right");
parts.Add("mWing2Right");
parts.Add("mWing3Right");
parts.Add("mWing4Right");
parts.Add("mWing4FanRight");
parts.Add("mWing4FanLeft");
///Hind Limbs
parts.Add("mHindLimbsRoot");
parts.Add("mHindLimb1Left");
parts.Add("mHindLimb2Left");
parts.Add("mHindLimb3Left");
parts.Add("mHindLimb4Left");
parts.Add("mHindLimb1Right");
parts.Add("mHindLimb2Right");
parts.Add("mHindLimb3Right");
parts.Add("mHindLimb4Right");
///Tail
parts.Add("mTail1");
parts.Add("mTail2");
parts.Add("mTail3");
parts.Add("mTail4");
parts.Add("mTail5");
parts.Add("mTail6");
Steps To Reproducemy files on github:
https://github.com/wp2opensim/openSIMULATOR-Bento [^]

Please also exchange(openmetaverse_data):
avatar_lad.xml
avatar_skeleton.xml

Alchemy 5 Viewer: https://alchemyviewer.org/pages/downloads.html [^]
Additional Informationtested:
complete Robust Grid opencad.de:8002
Metropolis hypergrid: 24 Regions Windows 2008, 1 Region Ubuntu 17.10
Standalone Windows 10 64bit
TagsNo tags attached.
Git Revision or version numberall
Run Mode Grid (Multiple Regions per Sim)
Physics EngineBulletSim
EnvironmentMono / Linux64
Mono Version4.0
ViewerAlchemy 5.0.0.40120 Beta
Attached Files

- Relationships

-  Notes
(0031983)
UbitUmarov (administrator)
2017-05-31 04:34

we make no use of GenerateRandomAnimation() on main simulators.
but did updated it with your code above.
Not changing the libomv, bc I don't even know why we have it, so leaving that update to someone who kowns
(0031984)
Gavin Hird (reporter)
2017-05-31 12:05
edited on: 2017-05-31 12:06

This really must be tested with existing viewers, and all of them with the exception of the latest version of FS does NOT support the Bento skeleton.

So don't change this without properly testing viewers before pushing to master!

(0031985)
UbitUmarov (administrator)
2017-05-31 12:26

As I said, normal regions don't use this information.
libomv avatar information is present only to support pcampbot
that I personally think should not be part of opensim, but not changing.
(0031986)
Gavin Hird (reporter)
2017-05-31 12:31
edited on: 2017-05-31 12:32

I'll see if there is any CAPS information that is sent to the viewer so that the correct skeleton is sent depending on if the viewer supports the Bento skeleton or not.

In addition legacy avatars (the original that everyone use) cannot be animated with the new rigging, so I will suppose the server will send the correct skeleton depending on which rigging is bound to the mesh (where the original avatar also is a mesh).

I therefore don't think you can just delete the old version and replace it with the Bento one, but need to have both server side, and send to the viewer depending on how the mesh is rigged.

I would revert this one for now till we actually understand how it is handled.

(0031987)
UbitUmarov (administrator)
2017-05-31 13:04

Viewers are already exposed to Bento information.
Bento avatars including Meshs and animations can be uploaded, so all viewers should at least not crash with them.

OpenSim does (or should) support Bento avatars, because it was made more neutral to avatar skeleton details in 0.9.
A reason why we will not go into SSA, etc.


GenerateRandomAnimation() is not used and is possible wrong.
I did not update the libomv part that is only used for pcampbot
imo both should be removed from core, but not doing it.
(0031988)
Gavin Hird (reporter)
2017-05-31 13:09

> OpenSim does (or should) support Bento avatars

Agreed but Ll had a project going for ONE YEAR with multiple server updates in addition to weekly viewer updates to tune it and make it work. Don't blast something onto the server we don't understand the extent of.

This requires a special project that is controlled before we start to ruin people's creations.

Most of the Bento content you will find in OpenSim is copybotted anyway. SL developers hardly understand how to make content for it.

- Issue History
Date Modified Username Field Change
2017-05-31 04:06 Manni New Issue
2017-05-31 04:34 UbitUmarov Note Added: 0031983
2017-05-31 12:05 Gavin Hird Note Added: 0031984
2017-05-31 12:06 Gavin Hird Note Edited: 0031984 View Revisions
2017-05-31 12:26 UbitUmarov Note Added: 0031985
2017-05-31 12:31 Gavin Hird Note Added: 0031986
2017-05-31 12:32 Gavin Hird Note Edited: 0031986 View Revisions
2017-05-31 13:04 UbitUmarov Note Added: 0031987
2017-05-31 13:09 Gavin Hird Note Added: 0031988


Copyright © 2000 - 2012 MantisBT Group
Powered by Mantis Bugtracker