{
animation.SetDuration( *duration );
}
- else
- {
- animation.SetDuration( durationSum );
- }
if( OptionalBoolean looping = constant.IsBoolean( IsChild(child, "loop" ) ) )
{
{
animation.SetEndAction( Animation::Discard );
}
+ else if("BAKE_FINAL" == *endAction)
+ {
+ animation.SetEndAction( Animation::BakeFinal );
+ }
}
if( OptionalString endAction = constant.IsString( IsChild(child, "destroy-action" ) ) )
{
animation.SetDestroyAction( Animation::Discard );
}
+ else if("BAKE_FINAL" == *endAction)
+ {
+ animation.SetDestroyAction( Animation::BakeFinal );
+ }
}
OptionalChild propertiesNode = IsChild(child, "properties" );
}
}
+ if( !duration )
+ {
+ animation.SetDuration( durationSum );
+ }
+
return animation;
}