BonePredicate interface extends Predicate<RenderedBone> to provide advanced filtering capabilities with child bone propagation control. It’s the primary way to select specific bones for operations.
Class Information
Package:kr.toxicity.model.api.util.functionType: Interface
Extends:
Predicate<RenderedBone>Since: 1.0.0
Core Methods
Factory Methods
By Name
By Tag
From Custom Predicate
BonePredicate.
Example:
Constants
Child State Control
TheState enum controls whether predicates apply to child bones:
State Behavior Examples
Builder Interface
TheBonePredicate.Builder provides fluent methods to configure child state:
Building Predicates
Example:Common Usage Patterns
Filtering Bone Streams
Conditional Operations
Hierarchical Matching
Animation Control
Hitbox Creation
Advanced Combinations
Performance Tips
- Reuse predicates - Create once, use multiple times
- Use
withoutChildren()when possible - Reduces unnecessary checks - Combine filters efficiently - Put most restrictive conditions first
- Cache results - Store filtered bone lists if used repeatedly
See Also
- RenderedBone - Bone operations accepting predicates
- BoneName - Bone identification and tagging
- BoneTag - Tag system for bones
