Remove dynamic_cast in GeomMorpherController

This commit is contained in:
scrawl 2015-11-22 20:33:22 +01:00
parent 94e8560bf8
commit 28b20428b9
2 changed files with 15 additions and 17 deletions

View file

@ -221,9 +221,7 @@ GeomMorpherController::GeomMorpherController(const Nif::NiMorphData *data)
void GeomMorpherController::update(osg::NodeVisitor *nv, osg::Drawable *drawable) void GeomMorpherController::update(osg::NodeVisitor *nv, osg::Drawable *drawable)
{ {
osgAnimation::MorphGeometry* morphGeom = dynamic_cast<osgAnimation::MorphGeometry*>(drawable); osgAnimation::MorphGeometry* morphGeom = static_cast<osgAnimation::MorphGeometry*>(drawable);
if (morphGeom)
{
if (hasInput()) if (hasInput())
{ {
if (mKeyFrames.size() <= 1) if (mKeyFrames.size() <= 1)
@ -243,7 +241,6 @@ void GeomMorpherController::update(osg::NodeVisitor *nv, osg::Drawable *drawable
morphGeom->transformSoftwareMethod(); morphGeom->transformSoftwareMethod();
} }
}
UVController::UVController() UVController::UVController()
{ {

View file

@ -97,6 +97,7 @@ namespace NifOsg
virtual float getMaximum() const; virtual float getMaximum() const;
}; };
/// Must be set on an osgAnimation::MorphGeometry.
class GeomMorpherController : public osg::Drawable::UpdateCallback, public SceneUtil::Controller, public ValueInterpolator class GeomMorpherController : public osg::Drawable::UpdateCallback, public SceneUtil::Controller, public ValueInterpolator
{ {
public: public: