Skip to content
This repository was archived by the owner on Mar 28, 2024. It is now read-only.

[BUG-229032] [Mesh Uploader] Use Joint Positions Option causes "Collapsed Joints/Bones" for some Files. #6983

Closed
sl-service-account opened this issue Jul 5, 2020 · 0 comments

Comments

@sl-service-account
Copy link

sl-service-account commented Jul 5, 2020

What just happened?

Oftentimes when creating content, mPelvis is not parented directly to world in the source 3D software~ meaning in the section of the uploaded DAE file, mPelvis is not the first xml node to be read. Ordinarily the mesh uploader handles this just fine, and yields a functional object in world. However~ if the "Use Joint Positions" option is checked, the mesh will appear to be just fine in the uploader ( well sometimes anyways ) ~ and will actually upload just fine~ charging the user correctly ~ for what is about to be a useless mesh ~~ Although this is a lesser part of this issue simply because the beta-grid exists to iron out these sorts of issues, it can be somewhat discouraging... But ~ presuming all of this happens, the mesh is uploaded ~ However: the moment the mesh is worn, every single joint that is weighted to / specified in the source DAE file will immediately be moved to mPelvis 0,0,0 Effectively completely collapsing the entire avatar to a single ( rather horrifying ) point. https://gyazo.com/0203a2c62b27aff668210704e9bb7c6d
^ the legs and head aren't specified in the DAE file, but the hips are.. so that's ... just enjoy the sunset... Oh wait where'd the sun go?

Chase the sun into the next bug report...https://jira.secondlife.com/browse/BUG-229033

This can be mitigated in the manner I mentioned above ~ to make 100% sure your scene file has no obstructions between mPelvis and scene-root ~ or by creating extra code post-export to muddle through the XML code in the DAE and clean out all the parts between <visual_scene> and mPelvis ~ but... it'd be nice if we didn't have to...

What were you doing when it happened?

I've appended two different DAE Files : Upload DAE twice: Once without "Use Joint Positions" option checked and another time with it set.

The "_Cleaned" DAE file has the XML code of all the junk between and mPelvis cleared out ( and the appropriate tags taken out later on as well.

The "Cleaned" file behaves ideally whether "Use Joint Positions" is checked or not ~ whereas the non "Cleaned" version is what I wore in the Gyazo posted above.

What were you expecting to happen instead?

I'm hoping the uploader will be changed so that the non-"Cleaned" version of the DAE can be uploaded as-is ~ and not cause any unwanted problems~ hopefully making mesh uploading have one fewer hurdle to clear for new users.

Other information

I'm not entirely sure whether this is a bug report or a feature request.

This problem has existed within SL since the days I started learning how to rig meshes, ( so ~ 6 years or so ago at least? ) Since the problem is relatively "easily avoided" I simply assumed for this entire time that it was entirely "working as intended." Sort of a "Well just don't do that in your mesh files" sort of thing. But in light of the recent mesh uploader improvements, I got to thinking ~ this is arguably something that should be very easily handled by a slight code change in lldaeloader.cpp when the XML files are being processed.

Attachments

Original Jira Fields
Field Value
Issue BUG-229032
Summary [Mesh Uploader] Use Joint Positions Option causes "Collapsed Joints/Bones" for some Files.
Type Bug
Priority Unset
Status Closed
Resolution Triaged
Created at 2020-07-05T07:24:23Z
Updated at 2020-10-14T18:48:27Z
{
  'Build Id': 'unset',
  'Business Unit': ['Platform'],
  "Is there anything you'd like to add?": 'I\'m not entirely sure whether this is a bug report or a feature request.\r\n\r\nThis problem has existed within SL since the days I started learning how to rig meshes, ( so ~ 6 years or so ago at least? ) Since the problem is relatively "easily avoided" I simply assumed for this entire time that it was entirely "working as intended."   Sort of a "Well just don\'t do that in your mesh files" sort of thing.  But in light of the recent mesh uploader improvements, I got to thinking ~  this is arguably something that should be very easily handled by a slight code change in lldaeloader.cpp when the XML files are being processed.',
  'ReOpened Count': 0.0,
  'Severity': 'Unset',
  'System': 'SL Viewer',
  'Target Viewer Version': 'viewer-development',
  'What just happened?': 'Oftentimes when creating content, mPelvis is not parented directly to world in the source 3D software~ meaning in the <visual scene> section of the uploaded DAE file, mPelvis is not the first xml node to be read.  Ordinarily the mesh uploader handles this just fine, and yields a functional object in world.  However~  if the "Use Joint Positions" option is checked, the mesh will appear to be just fine in the uploader ( well sometimes anyways ) ~ and will actually upload just fine~ charging the user correctly ~ for what is about to be a useless mesh ~~ Although this is a lesser part of this issue simply because the beta-grid exists to iron out these sorts of issues, it can be somewhat discouraging...  But ~ presuming all of this happens, the mesh is uploaded ~ However: the moment the mesh is worn, every single joint that is weighted to / specified in the source DAE file will immediately be moved to mPelvis 0,0,0  Effectively completely collapsing the entire avatar to a single ( rather horrifying ) point.  https://gyazo.com/0203a2c62b27aff668210704e9bb7c6d\r\n^  the legs and head aren\'t specified in the DAE file, but the hips are.. so that\'s ... just enjoy the sunset... Oh wait where\'d the sun go? >>> that\'s the next bug report...\r\n\r\nThis can be mitigated in the manner I mentioned above ~ to make 100% sure your scene file has no obstructions between mPelvis and scene-root ~  or by creating extra code post-export to muddle through the XML code in the DAE and clean out all the parts between <visual_scene> and mPelvis ~ but... it\'d be nice if we didn\'t have to... ',
  'What were you doing when it happened?': 'I\'ve appended two different DAE Files : Upload DAE twice: Once without "Use Joint Positions" option checked and another time with it set.\r\n\r\nThe "_Cleaned" DAE file has the XML code of all the junk between <visual scene> and <node>mPelvis cleared out ( and the appropriate </node> tags taken out later on as well.\r\n\r\nThe "Cleaned" file behaves ideally whether "Use Joint Positions" is checked or not ~ whereas the non "Cleaned" version is what I wore in the Gyazo posted above.',
  'What were you expecting to happen instead?': 'I\'m hoping the uploader will be changed so that the non-"Cleaned" version of the DAE can be uploaded as-is ~ and not cause any unwanted problems~  hopefully making mesh uploading have one fewer hurdle to clear for new users.',
}
Sign up for free to subscribe to this conversation on GitHub. Already have an account? Sign in.
Projects
None yet
Development

No branches or pull requests

1 participant