[osg-users] #pragmatic composition : setDefine

Sebastian Messerschmidt sebastian.messerschmidt at gmx.de
Mon Apr 20 22:33:35 PDT 2015


Hi Nick,

> Hi Robert, all,
>
> I finally ported all my shaders to the this new thing. I have a 
> question. Probably simple but will go anyway
>
> in my shader I have something like
>
> #define MYDEFINE
> .. do stuff here ...
> #endif
>
> at the root of the scene I have
> stateSet->setDefine("MYDEFINE");
>
> how can I fornid this define somewhere down the tree ? Simple removing 
> it is not helping (as expected I guess).
Do you mean "unsetting"?
Then simply do setDefines("MYDEFINE", osg::StateAttribute::OFF) where 
you like it to have it disabled.
The rules for the overriding / protecting apply to this as well.

>
> Any sample how the defines with Values set works?
Simply by setDefine("MY_VALUE_DEFINE", "42", osg::StateAttribute::ON)

or Roberts example defining a function:

stateset->setDefine("VERTEX_FUNC(v)" , "vec4(v.x, v.y, v.z * 
sin(osg_SimulationTime), v.w)");

>
> Thanks a bunch !
>
> Nick
>
> -- 
> trajce nikolov nick
>
>
> _______________________________________________
> osg-users mailing list
> osg-users at lists.openscenegraph.org
> http://lists.openscenegraph.org/listinfo.cgi/osg-users-openscenegraph.org

-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://lists.openscenegraph.org/pipermail/osg-users-openscenegraph.org/attachments/20150421/449c6f16/attachment-0003.htm>


More information about the osg-users mailing list