查看: 705|回复: 3

求助,关于纹理访问器!

[复制链接]

该用户从未签到

发表于 2014-6-3 01:58:13 | 显示全部楼层 |阅读模式
大家好,我在使用纹理访问器时遇到了问题, 程序就是FlySky写的一个纹理访问器的例子,我运行以后,什么效果都没有,只是出现了一头牛。
问题出现在 virtual void apply( osg::Node& node ) 中的if( node.getStateSet() ) ,无论我在node中放置什么模型(cow.sog,glider.osg,xxx.ive),这个条件判断总不为真,也就没法运行  apply( node.getStateSet() )这一步,请问是什么回事呢?谢谢各位。

//节点纹理访问器
class TextureVisitor : public osg::NodeVisitor
{
public:

        ...................................

          //重载apply方法
          virtual void apply( osg::Node& node )
          {
                  if( node.getStateSet() ) //问题出现在这里
                  {
                          apply( node.getStateSet() );
                  }

                  //实现继续遍历节点
                  traverse(node);
          }
    ...............................................
}

该用户从未签到

发表于 2014-6-3 10:19:22 | 显示全部楼层
TextureVisitor是设置给那个节点?节点的stateset是否有效?是向上遍历还是向下遍历?请调试检查

该用户从未签到

 楼主| 发表于 2014-6-3 11:41:40 | 显示全部楼层
gis_wudi 发表于 2014-6-3 10:19
TextureVisitor是设置给那个节点?节点的stateset是否有效?是向上遍历还是向下遍历?请调试检查

谢谢您的回复,问题已解决,代码没有任何问题,是自己的c++基础不好,没理解好代码的功能。

该用户从未签到

 楼主| 发表于 2014-6-3 11:41:48 | 显示全部楼层
问题已解决,代码没有任何问题,是自己的c++基础不好,没理解好代码的功能。
您需要登录后才可以回帖 登录 | 注册

本版积分规则

OSG中国官方论坛-有您OSG在中国才更好

网站简介:osgChina是国内首个三维相关技术开源社区,旨在为国内更多的技术开发人员提供最前沿的技术资讯,为更多的三维从业者提供一个学习、交流的技术平台。

联系我们

  • 工作时间:09:00--18:00
  • 反馈邮箱:1315785073@qq.com
快速回复 返回顶部 返回列表