Class RagdollAnim
- Namespace
- VoxelPlayground.Ragdoll
- Assembly
- GamePlay.dll
public class RagdollAnim : MonoBehaviour
- Inheritance
-
objectRagdollAnim
- Extension Methods
Fields
checkColStay
[NonSerialized]
public bool checkColStay
Field Value
- bool
enableEndAnimUpdate
public bool enableEndAnimUpdate
Field Value
- bool
enableLockAngular
public bool enableLockAngular
Field Value
- bool
enableLockLinear
public bool enableLockLinear
Field Value
- bool
enableMiddleAnimUpdate
public bool enableMiddleAnimUpdate
Field Value
- bool
hipLocalPosWeight
public float hipLocalPosWeight
Field Value
- float
hipLocalRotWeight
public float hipLocalRotWeight
Field Value
- float
ignoreListA
public Collider[] ignoreListA
Field Value
- Collider[]
ignoreListB
public Collider[] ignoreListB
Field Value
- Collider[]
localPosWeight
public float localPosWeight
Field Value
- float
localRotWeight
public float localRotWeight
Field Value
- float
muscleStates
public List<RagdollMuscleState> muscleStates
Field Value
- List<RagdollMuscleState>
profile
[NonSerialized]
public RagdollProfile profile
Field Value
rootForwardDir
public Vector3 rootForwardDir
Field Value
rootRightDir
public Vector3 rootRightDir
Field Value
rootUpDir
public Vector3 rootUpDir
Field Value
SkipCopyBones
public static List<Transform> SkipCopyBones
Field Value
- List<Transform>
updateJoints
[NonSerialized]
public bool updateJoints
Field Value
- bool
worldPosWeight
public float worldPosWeight
Field Value
- float
worldRotWeight
public float worldRotWeight
Field Value
- float
Methods
AddForce(Vector3, ForceMode)
public void AddForce(Vector3 force, ForceMode fm = ForceMode.VelocityChange)
Parameters
AddJoint(Rigidbody, Rigidbody, Vector3, Vector3, Quaternion, float)
public ConfigurableJoint AddJoint(Rigidbody source, Rigidbody target, Vector3 anchorPos, Vector3 anotherAnchor, Quaternion desireRot, float rotSpring)
Parameters
sourceRigidbodytargetRigidbodyanchorPosVector3anotherAnchorVector3desireRotQuaternionrotSpringfloat
Returns
AddMuscleMirror(string, RagdollMuscle)
public void AddMuscleMirror(string mirror, RagdollMuscle mu)
Parameters
mirrorstringmuRagdollMuscle
AddMuscleParentRelationship(RagdollMuscle, RagdollMuscle)
public void AddMuscleParentRelationship(RagdollMuscle child, RagdollMuscle parent)
Parameters
childRagdollMuscleparentRagdollMuscle
AddTorque(Vector3, ForceMode)
public void AddTorque(Vector3 torque, ForceMode fm = ForceMode.VelocityChange)
Parameters
ApplyProfile(RagdollProfile)
public void ApplyProfile(RagdollProfile profile)
Parameters
profileRagdollProfile
ApplyVelocityMlp(float)
public void ApplyVelocityMlp(float f)
Parameters
ffloat
BalanceMuscle(float)
public void BalanceMuscle(float miniVal = 0.05)
Parameters
miniValfloat
BuildMiddleAnimPair(Transform, Transform)
public void BuildMiddleAnimPair(Transform animRoot, Transform rb)
Parameters
BuildMuscle(ConfigurableJoint, Transform, Transform, Transform, string)
public RagdollMuscle BuildMuscle(ConfigurableJoint joint, Transform skl, Transform jointParent, Transform sklParent, string muscleName)
Parameters
jointConfigurableJointsklTransformjointParentTransformsklParentTransformmuscleNamestring
Returns
BuildPureAnimPair(Transform, Transform)
public void BuildPureAnimPair(Transform animRoot, Transform rb)
Parameters
ChangeVelocity(Vector3)
public void ChangeVelocity(Vector3 vel)
Parameters
velVector3
ClearInfo()
public void ClearInfo()
CopyEndAnim(bool)
public void CopyEndAnim(bool local = true)
Parameters
localbool
CopyMiddleAnim(bool)
public void CopyMiddleAnim(bool local = true)
Parameters
localbool
CreateSklForJoint(string, ConfigurableJoint, Vector3, Quaternion)
public Transform CreateSklForJoint(string name, ConfigurableJoint cfg, Vector3 desiredLocalPos, Quaternion desiredLocalRot)
Parameters
namestringcfgConfigurableJointdesiredLocalPosVector3desiredLocalRotQuaternion
Returns
CrossFadeBegin(RagdollProfile, float)
public void CrossFadeBegin(RagdollProfile target, float crossTime)
Parameters
targetRagdollProfilecrossTimefloat
CrossFadeProfile(RagdollProfile, float)
public void CrossFadeProfile(RagdollProfile target, float percent)
Parameters
targetRagdollProfilepercentfloat
DoRemoveMuscle(RagdollMuscle)
public void DoRemoveMuscle(RagdollMuscle mu)
Parameters
FindInChildren(Transform, string)
public static Transform FindInChildren(Transform tran, string name)
Parameters
tranTransformnamestring
Returns
GetAllMuscles()
public RagdollAnim.StringMuscleDictionary GetAllMuscles()
Returns
GetChildren(string)
public List<RagdollMuscle> GetChildren(string mirror)
Parameters
mirrorstring
Returns
- List<RagdollMuscle>
GetChildren(RagdollMuscle)
public List<RagdollMuscle> GetChildren(RagdollMuscle mu)
Parameters
Returns
- List<RagdollMuscle>
GetCols()
public Collider[] GetCols()
Returns
- Collider[]
GetDismemberMuscles()
public List<RagdollMuscle> GetDismemberMuscles()
Returns
- List<RagdollMuscle>
GetDismemberRootMuscle(RagdollMuscle)
public RagdollMuscle GetDismemberRootMuscle(RagdollMuscle mu)
Parameters
Returns
GetMuscle(string)
public RagdollMuscle GetMuscle(string name)
Parameters
namestring
Returns
GetMuscle(Transform)
public RagdollMuscle GetMuscle(Transform tran)
Parameters
tranTransform
Returns
GetMuscleByCol(Collider)
public RagdollMuscle GetMuscleByCol(Collider col)
Parameters
colCollider
Returns
GetMuscleBySkl(Transform)
public RagdollMuscle GetMuscleBySkl(Transform skl)
Parameters
sklTransform
Returns
GetMusclesFromRootMuscle(RagdollMuscle)
public List<RagdollMuscle> GetMusclesFromRootMuscle(RagdollMuscle muSet)
Parameters
muSetRagdollMuscle
Returns
- List<RagdollMuscle>
GetParent(RagdollMuscle)
public RagdollMuscle GetParent(RagdollMuscle mu)
Parameters
Returns
GetRippedMuscles()
public List<string> GetRippedMuscles()
Returns
- List<string>
GetRoot()
public RagdollMuscle GetRoot()
Returns
GetRootForward()
public Vector3 GetRootForward()
Returns
GetRootRight()
public Vector3 GetRootRight()
Returns
GetRootUp()
public Vector3 GetRootUp()
Returns
GetRuntimeMuscle(string)
public RagdollMuscle GetRuntimeMuscle(string name)
Parameters
namestring
Returns
GetUpdateJointEnabled()
public bool GetUpdateJointEnabled()
Returns
- bool
HasBeenRipped()
public bool HasBeenRipped()
Returns
- bool
IsAnimBone(Transform)
public bool IsAnimBone(Transform bone)
Parameters
boneTransform
Returns
- bool
IsAnimEndingBone(Transform)
public bool IsAnimEndingBone(Transform bone)
Parameters
boneTransform
Returns
- bool
IsChildMuscle(RagdollMuscle, RagdollMuscle)
public bool IsChildMuscle(RagdollMuscle root, RagdollMuscle child)
Parameters
rootRagdollMusclechildRagdollMuscle
Returns
- bool
IsMuscleRipped(string)
public bool IsMuscleRipped(string muscleName)
Parameters
muscleNamestring
Returns
- bool
IsPureAnimEnding(Transform)
public bool IsPureAnimEnding(Transform bone)
Parameters
boneTransform
Returns
- bool
JointRipped(string)
public void JointRipped(string muscleName)
Parameters
muscleNamestring
MakeABListIgnore(bool)
public void MakeABListIgnore(bool ig = true)
Parameters
igbool
OnMuscleCollisionEvent(Collision, RagdollMuscle)
public void OnMuscleCollisionEvent(Collision c, RagdollMuscle mu)
Parameters
cCollisionmuRagdollMuscle
OnMuscleCollisionStayEvent(Collision, RagdollMuscle)
public void OnMuscleCollisionStayEvent(Collision c, RagdollMuscle mu)
Parameters
cCollisionmuRagdollMuscle
RemoveJoint(RagdollMuscle)
public void RemoveJoint(RagdollMuscle mu)
Parameters
RemoveMuscle(Transform, bool)
public void RemoveMuscle(Transform rbTrans, bool removeChild = true)
Parameters
rbTransTransformremoveChildbool
RemoveMuscleMirror(string, RagdollMuscle)
public void RemoveMuscleMirror(string mirror, RagdollMuscle mu)
Parameters
mirrorstringmuRagdollMuscle
RemoveMuscleParentRelationship(RagdollMuscle, RagdollMuscle)
public void RemoveMuscleParentRelationship(RagdollMuscle child, RagdollMuscle parent)
Parameters
childRagdollMuscleparentRagdollMuscle
ResetAllRefs()
public void ResetAllRefs()
ResetMuscles()
public void ResetMuscles()
ScaleJoint(ConfigurableJoint, Vector3)
public void ScaleJoint(ConfigurableJoint joint, Vector3 scaleTarget)
Parameters
jointConfigurableJointscaleTargetVector3
SetAllMusclesToPosition()
public void SetAllMusclesToPosition()
SetCollisionIgnoreWith(Collider[], bool)
public void SetCollisionIgnoreWith(Collider[] cols, bool ignore)
Parameters
colsCollider[]ignorebool
SetLODLevel(int)
public void SetLODLevel(int level)
Parameters
levelint
SetRoot(RagdollMuscle)
public void SetRoot(RagdollMuscle mu)
Parameters
SetSelfCollisionIgnore(bool)
public void SetSelfCollisionIgnore(bool ignore)
Parameters
ignorebool
SetSelfIgnore(bool)
public void SetSelfIgnore(bool ig = true)
Parameters
igbool
SetSyncHipEnable(bool)
public void SetSyncHipEnable(bool enable)
Parameters
enablebool
SetUpdateJointEnabled(bool)
public void SetUpdateJointEnabled(bool e)
Parameters
ebool
SyncHipLocalPosition(Rigidbody, Transform, Transform, float)
public void SyncHipLocalPosition(Rigidbody hipRb, Transform hipTrans, Transform hipAnim, float deltaTime)
Parameters
SyncHipLocalRotation(Rigidbody, Transform, Transform, float)
public void SyncHipLocalRotation(Rigidbody hipRb, Transform hipTrans, Transform hipAnim, float deltaTime)
Parameters
TickMuscles()
public void TickMuscles()
UpdateAll(float)
public void UpdateAll(float delta)
Parameters
deltafloat
UpdateCols()
public void UpdateCols()
UpdateMuscles(float, bool)
更新ragdoll肌肉状态 animatorUpdated: true=允许CopyMiddleAnim/CopyEndAnim,false=跳过
public void UpdateMuscles(float delta, bool animatorUpdated = true)
Parameters
deltafloatanimatorUpdatedbool
Events
MuscleChangedEvent
public event Action<RagdollMuscle, bool> MuscleChangedEvent
Event Type
- Action<RagdollMuscle, bool>
MuscleCollisionEvent
public event Action<Collision, RagdollMuscle> MuscleCollisionEvent
Event Type
- Action<Collision, RagdollMuscle>
MuscleCollisionStayEvent
public event Action<Collision, RagdollMuscle> MuscleCollisionStayEvent
Event Type
- Action<Collision, RagdollMuscle>
MuscleJointBrokeEvent
public event Action<RagdollAnim, string> MuscleJointBrokeEvent
Event Type
- Action<RagdollAnim, string>