BoneName record represents a parsed bone name with associated tags. It’s used throughout BetterModel to identify and filter bones based on their naming conventions.
Class Information
Package:kr.toxicity.model.api.boneType: Record
Since: 1.0.0
Record Components
Components
- tags - The set of tags extracted from the raw name (e.g.,
#hitbox,#head) - name - The clean name without tags
- rawName - The original unparsed name string
Creation
Parsing from String
BoneName instance. Tags are extracted based on the configured tag registry.
Example:
JSON Deserialization
Tag Management
Checking for Tags
Getting Item Mapper from Tags
BoneItemMapper.EMPTY if no tags specify a mapper.
Example:
Common Tag Patterns
BetterModel uses tags to define special behaviors for bones:Display Tags
#left_hand- Display as left-hand item#right_hand- Display as right-hand item#head- Display as head/helmet item
Functional Tags
#hitbox- Should create a hitbox#interactive- Interactive element#mount- Mountable bone
Example Usage
Equality and Hashing
Bone names are compared based on theirrawName field:
String Representation
Naming Conventions
When naming bones in your 3D modeling software:- Use descriptive names:
head,left_arm,weapon - Add tags with
#prefix:#hitbox.body,#left_hand.item - Use dot notation for hierarchy:
armor.helmet,weapon.blade - Combine multiple tags:
#hitbox#interactive.door
See Also
- BonePredicate - Filtering bones by name and tags
- RenderedBone - Working with rendered bones
- BoneItemMapper - Item transformation based on tags
