Carsten Neumann wrote:
> Hello Antonio,
>
> Antonio Bleile wrote:
>> > You can override an Action's callbacks on a per instance basis
>> > (registerEnterFunction, registerLeaveFunction), so you can create a
>> > regular RenderAction and register a different callback for geometry.
>> > That callback would basically do the same as the regular one, but only
>> > after testing that the node has no children.
>>
>> OK, and here's the problem:
>>
>> Action::ResultE myTraverse(CNodePtr & Cnode, Action *action)
>> {
>> OSG::NodePtr node = action->getActNode();
>>
>> if( node->getNChildren() )
>> return Action::Skip;
>> else
>> return Action::Continue;
>> }
>
> ah, well it is a bit more work than that ;)
> You need to duplicate and modify the callback for Geometry, which is
> MaterialDrawable::renderActionHandler (see below). In there you check
> the node for children and if it has any you just return Action::Continue
> otherwise do the usual thing:
Mh... Not sure if I got it. That means I have to hardcode that into
a custom OpenSG version? Don't see how I could register such a
callback at run-time. Or derive a custom Geometry node...Mh... Ok, if
it's not possible in a more elegant/dynamic way I'll have to do the
whole thing a bit different.
Thank you,
Toni
-------------------------------------------------------------------------
This SF.net email is sponsored by: Microsoft
Defy all challenges. Microsoft(R) Visual Studio 2005.
http://clk.atdmt.com/MRT/go/vse0120000070mrt/direct/01/
_______________________________________________
Opensg-users mailing list
[email protected]
https://lists.sourceforge.net/lists/listinfo/opensg-users