Hi Community,

this is really simple, but for a reason it is not working on my end. I have
simple model with animation (a cube that scales over time). On load I
launch a NodeVisitor to collect all the Materials. I can see one Material
in the text file but the parser is not hitng it. Here is my Visitor code:
Any clue? And thanks a bunch as always!

struct MaterialFinderVisitor : public osg::NodeVisitor
{
    MaterialFinderVisitor()
        : osg::NodeVisitor(osg::NodeVisitor::TRAVERSE_ALL_CHILDREN)
    {
    }

    virtual void apply( osg::Node& node )
    {
        osg::StateAttribute* attr =
node.getOrCreateStateSet()->getAttribute(osg::StateAttribute::MATERIAL);
        if (attr)
        {
            std::cout << "ATTRIBUTE: " << attr->getName() << std::endl;

            osg::Material* material = dynamic_cast<osg::Material*>(attr);
            if (material && (material->getName() != "@RootMaterial@"))
            {
                std::cout << "MATERIAL: " << material->getName() <<
std::endl;
            }
        }
        traverse(node);
    }


-- 
trajce nikolov nick

Attachment: scaledanim4.osgt.tar.gz
Description: GNU Zip compressed data

_______________________________________________
osg-users mailing list
osg-users@lists.openscenegraph.org
http://lists.openscenegraph.org/listinfo.cgi/osg-users-openscenegraph.org

Reply via email to