Am 25.08.2011 17:31, schrieb Carsten Neumann:
>       Hello Michael,
>
> On 08/25/2011 08:21 AM, Michael Raab wrote:
>> I think I solved this issue. Indeed the problem was that the OSGTreeRenderer 
>> calls win->frameInit() directly. In case of a ClusterWindow, frameInit means 
>> sending the sync packet from client to server. As ClusterWindow itself sends 
>> the packet before, the server is waiting for the swap command but receives 
>> the sync message. That caused the crash.
>> As I derive from ClusterWindow I simply separated the sync code from the 
>> frameInit call and now it works. Nevertheless may be someone who knows the 
>> ShadowViewport code may have a look if directly calling win->frameInit() 
>> there is necessary.
> glad to hear you found a solution/workaround. Sorry for being
> unresponsive at the moment, but I have some work that is on a tight
> deadline...
> FWIW the frameInit call from the ShadowViewport looks suspicious,
> normally it is a Window's responsibility to call frameInit before
> passing control to the viewports - I'm not familiar enough with the
> details of ShadowViewport to say if it needs special handling here.

Who knows about the ShadowViewport implementation?

>> The bad news is I have another problem. I'm able turn on shadow rendering 
>> during run-time by creating new ShadowViewports. But when I try to turn 
>> shadow rendering off (by destroying the shadow viewports) the application 
>> crashes again. The crash arises when the sync arrives at the server side. 
>> The server tries to delete the appropriate shadow viewports. The shadow 
>> viewport destructor is called. The crash happens in function clearLights() 
>> line 1372 (OSGShadowViewport.cpp)
>>
>> getRoot()->subChild(_lightCamBeacons[i]);
>>
>> Seems that either getRoot() or _lightCamBeacons[i] points to something 
>> wrong. Have someone ever tried to use ShadowViewports in cluster 
>> configurations (and tried to sync the destruction of such a viewport)?
> my guess would be that root has already been set to NullFC by the sync,
> it should be checked before being accessed in clearLights.
> If _lightCamBeacons[i] does not point to something valid I'd say the
> ShadowViewport is missing addRefCP calls when adding light beacons to
> this vector.
>
>       Cheers,
>               Carsten

I'll try tomorrow.

Thanks,
Michael


> ------------------------------------------------------------------------------
> EMC VNX: the world's simplest storage, starting under $10K
> The only unified storage solution that offers unified management
> Up to 160% more powerful than alternatives and 25% more efficient.
> Guaranteed. http://p.sf.net/sfu/emc-vnx-dev2dev
> _______________________________________________
> Opensg-users mailing list
> Opensg-users@lists.sourceforge.net
> https://lists.sourceforge.net/lists/listinfo/opensg-users
>


------------------------------------------------------------------------------
EMC VNX: the world's simplest storage, starting under $10K
The only unified storage solution that offers unified management 
Up to 160% more powerful than alternatives and 25% more efficient. 
Guaranteed. http://p.sf.net/sfu/emc-vnx-dev2dev
_______________________________________________
Opensg-users mailing list
Opensg-users@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/opensg-users

Reply via email to