Package com.jme3.bullet.animation
Class BoneLink
java.lang.Object
com.jme3.bullet.animation.PhysicsLink
com.jme3.bullet.animation.BoneLink
- All Implemented Interfaces:
Savable
,JmeCloneable
,Cloneable
Link an animated bone in a skeleton to a jointed rigid body in a ragdoll.
This class is shared between JBullet and Native Bullet.
-
Field Summary
Fields inherited from class com.jme3.bullet.animation.PhysicsLink
logger
-
Constructor Summary
ModifierConstructorDescriptionprotected
BoneLink()
No-argument constructor needed by SavableClassUtil. -
Method Summary
Modifier and TypeMethodDescriptionvoid
blendToKinematicMode
(KinematicSubmode submode, float blendInterval) Begin blending this link to a purely kinematic mode.void
cloneFields
(Cloner cloner, Object original) Callback fromCloner
to convert this shallow-cloned link into a deep-cloned one, using the specified cloner and original to resolve copied fields.protected void
Update this link in Dynamic mode, setting the linked bone's transform based on the transform of the rigid body.jmeClone()
Create a shallow clone for the JME cloner.protected void
kinematicUpdate
(float tpf) Update this link in blended Kinematic mode.name()
Unambiguously identify this link by name, within its DynamicAnimControl.void
read
(JmeImporter im) De-serialize this link, for example when loading from a J3O file.void
setDynamic
(Vector3f uniformAcceleration) Immediately put this link into dynamic mode and update the range of motion of its joint.void
write
(JmeExporter ex) Serialize this link, for example when saving to a J3O file.Methods inherited from class com.jme3.bullet.animation.PhysicsLink
blendToKinematicMode, boneName, countChildren, getBone, getControl, getJoint, getParent, getRigidBody, isKinematic, kinematicWeight, listChildren, localOffset, physicsTransform, setJoint, setParent, setRigidBody
-
Field Details
-
logger2
message logger for this class
-
-
Constructor Details
-
BoneLink
protected BoneLink()No-argument constructor needed by SavableClassUtil. Do not invoke directly!
-
-
Method Details
-
blendToKinematicMode
Begin blending this link to a purely kinematic mode.- Parameters:
submode
- enum value (not null)blendInterval
- the duration of the blend interval (in seconds, ≥0)
-
cloneFields
Callback fromCloner
to convert this shallow-cloned link into a deep-cloned one, using the specified cloner and original to resolve copied fields.- Specified by:
cloneFields
in interfaceJmeCloneable
- Overrides:
cloneFields
in classPhysicsLink
- Parameters:
cloner
- the cloner that's cloning this link (not null)original
- the instance from which this link was shallow-cloned (unused)
-
dynamicUpdate
protected void dynamicUpdate()Update this link in Dynamic mode, setting the linked bone's transform based on the transform of the rigid body.- Specified by:
dynamicUpdate
in classPhysicsLink
-
jmeClone
Create a shallow clone for the JME cloner.- Specified by:
jmeClone
in interfaceJmeCloneable
- Overrides:
jmeClone
in classPhysicsLink
- Returns:
- a new instance
-
kinematicUpdate
protected void kinematicUpdate(float tpf) Update this link in blended Kinematic mode.- Overrides:
kinematicUpdate
in classPhysicsLink
- Parameters:
tpf
- the time interval between frames (in seconds, ≥0)
-
name
Unambiguously identify this link by name, within its DynamicAnimControl.- Specified by:
name
in classPhysicsLink
- Returns:
- a brief textual description (not null, not empty)
-
read
De-serialize this link, for example when loading from a J3O file.- Specified by:
read
in interfaceSavable
- Overrides:
read
in classPhysicsLink
- Parameters:
im
- importer (not null)- Throws:
IOException
- from importer
-
setDynamic
Immediately put this link into dynamic mode and update the range of motion of its joint.- Overrides:
setDynamic
in classPhysicsLink
- Parameters:
uniformAcceleration
- the uniform acceleration vector (in physics-space coordinates, not null, unaffected)
-
write
Serialize this link, for example when saving to a J3O file.- Specified by:
write
in interfaceSavable
- Overrides:
write
in classPhysicsLink
- Parameters:
ex
- exporter (not null)- Throws:
IOException
- from exporter
-