X-Git-Url: http://git.tdb.fi/?p=libs%2Fgl.git;a=blobdiff_plain;f=source%2Fanimatedobject.cpp;h=3a78110009bc2c47b8cf26e9ab7ee59013444b40;hp=257e1368def51c6c3a40fef4ebd5f04473320ff9;hb=9e384cddaf641f25ce6714327e1b4fadfea4632d;hpb=8ed377139d48a6fc39eeed9f3494bbe41aed4107 diff --git a/source/animatedobject.cpp b/source/animatedobject.cpp index 257e1368..3a781100 100644 --- a/source/animatedobject.cpp +++ b/source/animatedobject.cpp @@ -6,6 +6,7 @@ #include "programdata.h" #include "renderer.h" #include "technique.h" +#include "transform.h" using namespace std; @@ -79,6 +80,9 @@ void AnimatedObject::setup_render(Renderer &renderer, const Tag &) const AnimatedObject::Loader::Loader(AnimatedObject &o): DataFile::ObjectLoader(o) { + add("transform", &Loader::transform); + + // Deprecated; Use the transform statement instead add("position", &Loader::position); add("rotation", &Loader::rotation); add("scale", &Loader::scale); @@ -105,5 +109,12 @@ void AnimatedObject::Loader::scale_uniform(float s) obj.matrix.scale(s); } +void AnimatedObject::Loader::transform() +{ + Transform trn; + load_sub(trn); + obj.matrix = trn.to_matrix(); +} + } // namespace GL } // namespace Msp