|
发表于 2008-3-9 22:07:24
|
显示全部楼层
原帖由 thb8177 于 2008-3-9 20:50 发表
array可不可以把你写的代码贴出来呀?我是一个新手,想学一学。非常感谢了!!!
呵呵,这个没什么特别的代码吧,您的程序中应该已经实现了树叶图形节点及纹理的读入(我从截图中看到的),那么下面的工作就是设置AlphaFunc参数了,比如:- osg::Image* myimage = osgDB::readImageFile( "tree.png" );
- osg::Texture2D* mytex = new osg::Texture2D;
- mytex->setImage( 0, myimage );
- osg::AlphaFunc* alphaFunc = new osg::AlphaFunc;
- alphaFunc->setFunction(osg::AlphaFunc::GEQUAL, 0.05f);
- osg::StateSet* mystate = geode->getOrCreateStateSet();
- mystate->setTextureAttributeAndModes( 0, mytex, osg::StateAttribute::ON );
- mystate->setAttributeAndModes( alphaFunc, osg::StateAttribute::ON );
复制代码 这里geode就是您的树叶节点了,代码所做的就是创建新的AlphaFunc渲染属性,设置Alpha检验函数,添加到StateSet~~ |
|