forked from bartvdbraak/blender
Material Diffuse Color animation COLLADA import.
This commit is contained in:
parent
4a32691416
commit
90b64737f1
@ -112,7 +112,7 @@ void AnimationExporter::exportAnimations(Scene *sce)
|
|||||||
transformName = extract_transform_name( fcu->rna_path );
|
transformName = extract_transform_name( fcu->rna_path );
|
||||||
|
|
||||||
if ((!strcmp(transformName, "specular_hardness"))||(!strcmp(transformName, "specular_color"))
|
if ((!strcmp(transformName, "specular_hardness"))||(!strcmp(transformName, "specular_color"))
|
||||||
||(!strcmp(transformName, "diffuse")))
|
||(!strcmp(transformName, "diffuse_color")))
|
||||||
dae_animation(ob ,fcu, transformName, true, ma );
|
dae_animation(ob ,fcu, transformName, true, ma );
|
||||||
fcu = fcu->next;
|
fcu = fcu->next;
|
||||||
}
|
}
|
||||||
|
@ -934,6 +934,12 @@ void AnimationImporter::translate_Animations_NEW ( COLLADAFW::Node * node ,
|
|||||||
const COLLADAFW::UniqueId& listid = cot->getColor().getAnimationList();
|
const COLLADAFW::UniqueId& listid = cot->getColor().getAnimationList();
|
||||||
Assign_color_animations( listid, AnimCurves , "specular_color" );
|
Assign_color_animations( listid, AnimCurves , "specular_color" );
|
||||||
}
|
}
|
||||||
|
|
||||||
|
if((animType->material & MATERIAL_DIFF_COLOR) != 0){
|
||||||
|
const COLLADAFW::ColorOrTexture *cot = &(efc->getDiffuse());
|
||||||
|
const COLLADAFW::UniqueId& listid = cot->getColor().getAnimationList();
|
||||||
|
Assign_color_animations( listid, AnimCurves , "diffuse_color" );
|
||||||
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
@ -1002,6 +1008,7 @@ AnimationImporter::AnimMix* AnimationImporter::get_animation_type ( const COLLAD
|
|||||||
COLLADAFW::EffectCommon *efc = commonEffects[0];
|
COLLADAFW::EffectCommon *efc = commonEffects[0];
|
||||||
types->material = setAnimType(&(efc->getShininess()),(types->material), MATERIAL_SHININESS);
|
types->material = setAnimType(&(efc->getShininess()),(types->material), MATERIAL_SHININESS);
|
||||||
types->material = setAnimType(&(efc->getSpecular().getColor()),(types->material), MATERIAL_SPEC_COLOR);
|
types->material = setAnimType(&(efc->getSpecular().getColor()),(types->material), MATERIAL_SPEC_COLOR);
|
||||||
|
types->material = setAnimType(&(efc->getDiffuse().getColor()),(types->material), MATERIAL_DIFF_COLOR);
|
||||||
|
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
@ -109,7 +109,8 @@ private:
|
|||||||
enum matAnim
|
enum matAnim
|
||||||
{
|
{
|
||||||
MATERIAL_SHININESS = 2,
|
MATERIAL_SHININESS = 2,
|
||||||
MATERIAL_SPEC_COLOR = 4
|
MATERIAL_SPEC_COLOR = 4,
|
||||||
|
MATERIAL_DIFF_COLOR = 1 << 3
|
||||||
};
|
};
|
||||||
|
|
||||||
enum AnimationType
|
enum AnimationType
|
||||||
|
Loading…
Reference in New Issue
Block a user