42 lines
1.7 KiB
Ucode
42 lines
1.7 KiB
Ucode
//=============================================================================
|
|
// KFAnim_BlendFacialExpression
|
|
//=============================================================================
|
|
// Facial expression blend node. Could be modified to extend
|
|
// AnimNode_MultiBlendPerBone which would add several features without a
|
|
// significant performance cost. For now just use the lightweight version.
|
|
//=============================================================================
|
|
// Killing Floor 2
|
|
// Copyright (C) 2015 Tripwire Interactive LLC
|
|
// - Andrew "Strago" Ladenberger
|
|
//=============================================================================
|
|
|
|
class KFAnim_BlendFacialExpression extends AnimNodeBlendPerBone
|
|
native(Anim);
|
|
|
|
/** If the LOD of this skeletal mesh is at or above this LOD, then this BlendNode will not be applied. */
|
|
var(Performance) int IgnoreAtOrAboveLOD;
|
|
|
|
cpptext
|
|
{
|
|
virtual void GetBoneAtoms(FBoneAtomArray& Atoms, const TArray<BYTE>& DesiredBones, FBoneAtom& RootMotionDelta, INT& bHasRootMotion, FCurveKeyArray& CurveKeys);
|
|
};
|
|
|
|
defaultproperties
|
|
{
|
|
NodeName="Blend Facial Expression"
|
|
|
|
Children(1)=(Name="Face")
|
|
IgnoreAtOrAboveLOD=2
|
|
|
|
// AnimNodeBlendPerBone settings
|
|
bForceLocalSpaceBlend=true
|
|
BranchStartBoneName={(Center_Lip_Upper, Left_Eyebrow, Right_Eyebrow, Left_Lip_Corner,
|
|
Right_Lip_Corner, Eyelid_Lower, Eyelid_Upper, Jaw)}
|
|
|
|
// AnimNode_MultiBlendPerBone settings
|
|
//MaskList(0)={(
|
|
// BranchList={((BoneName=Center_Lip_Upper), (BoneName=Left_Eyebrow), (BoneName=Right_Eyebrow), (BoneName=Left_Lip_Corner),
|
|
// (BoneName=Right_Lip_Corner), (BoneName=Eyelid_Lower), (BoneName=Eyelid_Upper), (BoneName=Jaw))}
|
|
// )}
|
|
}
|