Hello Carsten,
sorry, i was mistaken, clearing is not the issue. My problem now is that
the scene gets rendered to only one FBO's texture. I have three FBOs, one
for initial rendering and two that get rendered to in turns
("ping-ponging"). The setup is simply in pseudo-code:

renderEnter()
{
    beginPartitionGroup

    setupPartitionForRenderScene(FBO1)

    for (number of peel passes)
    {
        if (even)
            setupPartitionForRenderScene(FBO2)
            setupPartitionForPostProcess()
        else
            setupPartitionForRenderScene(FBO3)
            setupPartitionForPostProcess()
    }
    setupPartitionForFinalPostProcess()

    endPartitionGroup
}

setupPartitionForRenderScene() pushes the partition, sets background and
projection like in the HDRStage implementation and finally calls
recurseFromThis(); basically only the renderTarget changes between calls.
I copied the real code to Pastebin, see http://pastebin.com/PnH45iKU

However only the initial call results in the scene getting rendered to the
first FBO's texture. The textures of the other FBOs get cleared but remain
empty otherwise.
I removed the calls that setup the render partitions for postProcessing
and viewed the textures in gDEBugger, but no matter what FBO i start with
only the initial one gets rendered to.
Looking at the OpenGL code with GLIntercept also shows that the calls to
the display lists of the scene objects are only called once for the first
FBO.
My question therefore is: Can Stage::recurseFromThis() only be called once
per Frame? Does OpenSG put a restriction here?
Thank you for your time.
Kind regards,
Alexander Lang



>       Hello Alexander,
>
> On 09/13/2012 07:46 AM, Alexander Lang wrote:
>> I looked at the code of the RenderPartition class and the
>> OSG::RenderPartition::setupExecution() function calls
>> _pBackground->clear(&_oDrawEnv); if the RenderPartition::BackgroundSetup
>> flag is set. Therefore i tried:
>>
>> DepthPeelingStage::renderEnter()
>> {
>>      //init setup similar to HDRStage implementation
>>
>>      pPart->setRenderTarget(<myFBO>);
>>
>>      pPart->setBackground(pBack);
>>
>>      pPart->addSetupModeBit(RenderPartition::BackgroundSetup);
>>
>>      //if not first pass pushState()


------------------------------------------------------------------------------
Everyone hates slow websites. So do we.
Make your web apps faster with AppDynamics
Download AppDynamics Lite for free today:
http://ad.doubleclick.net/clk;258768047;13503038;j?
http://info.appdynamics.com/FreeJavaPerformanceDownload.html
_______________________________________________
Opensg-users mailing list
Opensg-users@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/opensg-users

Reply via email to