You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
Problem
We've identified two issues affecting emote playback in wearables:
Non-standard node naming:
Some wearables use non-standard names for skeleton nodes (e.g., "Armature.001" instead of "Armature")
This breaks compatibility with emotes that expect standard node names
While we've patched the preview to handle numeric suffixes, other naming variations could still cause issues
Animation dependency on skeleton hierarchy:
Some emotes (like the DAO Pony emote) use a mixed animation approach:
Main motion is applied to the Armature node
Short positioning animations are applied to individual bones
This approach relies on proper skeleton hierarchy for bone inheritance
If the Armature node isn't found or properly named, the entire animation fails
Solution
The Wearable Editor should automatically validate these issues before allowing wearable publication:
Node Name Validation:
Scan the GLB file's node hierarchy
Check for standard DCL node naming convention
Flag any deviations from the standard naming (e.g., "Armature.001", "Avatar_Head.001")
Prevent users from publishing such GLB and show them the faulty names of the nodes.
Animation Baking Validation:
Analyze animation data in the GLB
Detect if animations are properly baked to all relevant bones
Flag animations that only target the Armature without full bone baking
Warn users that this approach of animation could not work on legacy emotes that don't have a propery skeleton hierarchy, encourage them to bake animations in all bones.
Implementation Path
GLB Inspection:
Use existing GLB parsing libraries (like @babylonjs/core) to load and inspect models
Create a validation module that:
Lists all nodes in the hierarchy
Identifies standard DCL node names vs non-standard ones
Maps animation targets and their keyframes
Validation Rules:
Define a list of standard DCL node names
Create rules for valid node naming patterns
Define requirements for animation baking coverage
UI Integration:
Add validation step in the import provess
Show clear error messages for naming issues
Show warning messages for animation issues
Documentation:
Update wearable creation guidelines
Document standard node naming requirements
Explain animation baking best practices
This enhancement will improve wearable compatibility and reduce animation issues in the platform. It can be tested using the BabylonJS Sandbox (https://sandbox.babylonjs.com) to verify proper node naming and animation baking.
Problem
We've identified two issues affecting emote playback in wearables:
Non-standard node naming:
Animation dependency on skeleton hierarchy:
Solution
The Wearable Editor should automatically validate these issues before allowing wearable publication:
Node Name Validation:
Animation Baking Validation:
Implementation Path
GLB Inspection:
Validation Rules:
UI Integration:
Documentation:
This enhancement will improve wearable compatibility and reduce animation issues in the platform. It can be tested using the BabylonJS Sandbox (https://sandbox.babylonjs.com) to verify proper node naming and animation baking.
Related
The text was updated successfully, but these errors were encountered: