forked from bartvdbraak/blender
BGE Animations: Removing some redundant pose copies from BL_Action.
This commit is contained in:
parent
e18bea1cfc
commit
b9abe6211f
@ -187,14 +187,9 @@ void BL_Action::Update(float curtime)
|
||||
|
||||
if (m_obj->GetGameObjectType() == SCA_IObject::OBJ_ARMATURE)
|
||||
{
|
||||
bPose* prev_pose = NULL;
|
||||
BL_ArmatureObject *obj = (BL_ArmatureObject*)m_obj;
|
||||
obj->GetPose(&m_pose);
|
||||
|
||||
// Save the old pose if we need to do some layer blending
|
||||
if (m_blendmode != ACT_BLEND_NONE)
|
||||
obj->GetMRDPose(&prev_pose);
|
||||
|
||||
// Extract the pose from the action
|
||||
{
|
||||
struct PointerRNA id_ptr;
|
||||
@ -208,17 +203,6 @@ void BL_Action::Update(float curtime)
|
||||
arm->pose = temp;
|
||||
}
|
||||
|
||||
// Handle blending between layers
|
||||
switch(m_blendmode)
|
||||
{
|
||||
case ACT_BLEND_MIX:
|
||||
game_blend_poses(m_pose, prev_pose, 0.5f);
|
||||
break;
|
||||
case ACT_BLEND_NONE:
|
||||
default:
|
||||
break;
|
||||
}
|
||||
|
||||
// Handle blending between actions
|
||||
if (m_blendin && m_blendframe<m_blendin)
|
||||
{
|
||||
@ -239,21 +223,10 @@ void BL_Action::Update(float curtime)
|
||||
if (m_blendframe>m_blendin)
|
||||
m_blendframe = m_blendin;
|
||||
}
|
||||
else
|
||||
{
|
||||
if (m_blendpose)
|
||||
{
|
||||
game_free_pose(m_blendpose);
|
||||
m_blendpose = NULL;
|
||||
}
|
||||
}
|
||||
|
||||
obj->SetPose(m_pose);
|
||||
|
||||
obj->SetActiveAction(NULL, 0, curtime);
|
||||
|
||||
if (prev_pose)
|
||||
game_free_pose(prev_pose);
|
||||
}
|
||||
else
|
||||
{
|
||||
|
Loading…
Reference in New Issue
Block a user