X-Git-Url: http://git.tdb.fi/?p=libs%2Fgl.git;a=blobdiff_plain;f=source%2Fanimatedobject.cpp;h=390b90b869ce6acc9eb5a5a93a6fbe701776429e;hp=269665f6d12ff834a6f2827fba10c444bfb2fad5;hb=81e0e39fefd8f50ae2367fe821d58af6273bcea2;hpb=3f7c493e13b7108098539078b729cffc095c304b diff --git a/source/animatedobject.cpp b/source/animatedobject.cpp index 269665f6..390b90b8 100644 --- a/source/animatedobject.cpp +++ b/source/animatedobject.cpp @@ -26,11 +26,6 @@ AnimatedObject::~AnimatedObject() delete shdata; } -void AnimatedObject::set_matrix(const Matrix &m) -{ - matrix = m; -} - void AnimatedObject::set_pose_matrix(unsigned link, const Matrix &m) { if(shdata) @@ -42,6 +37,20 @@ void AnimatedObject::set_pose_matrix(unsigned link, const Matrix &m) } } +ProgramData &AnimatedObject::get_shader_data() +{ + if(!shdata) + throw invalid_operation("AnimatedObject::get_shader_data"); + return *shdata; +} + +const ProgramData &AnimatedObject::get_shader_data() const +{ + if(!shdata) + throw invalid_operation("AnimatedObject::get_shader_data"); + return *shdata; +} + void AnimatedObject::set_uniform(const string &name, const KeyFrame::AnimatedUniform &uni) { if(!shdata) @@ -68,8 +77,9 @@ void AnimatedObject::setup_render(Renderer &renderer, const Tag &) const AnimatedObject::Loader::Loader(AnimatedObject &o): - DataFile::ObjectLoader(o) + DataFile::DerivedObjectLoader(o) { + // Deprecated; Use the transform statement defined in ObjectInstance instead add("position", &Loader::position); add("rotation", &Loader::rotation); add("scale", &Loader::scale);