Hi Robert;

I have tried all your advices and osg::Fog effect works the invisibility 
problem. I try to other ;

1 - changing setNearFarRatio' value,

2 - adding 
viewer.getCamera()->setComputeNearFarMode(osg::CullSettings::DO_NOT_COMPUTE_NEAR_FAR
 ); pattern and

3 - osg::CullStack::CullingMode cullingMode = sceneview->getCullingMode();
     cullingMode &= ~ ( osg::CullStack::SMALL_FEATURE_CULLING  );
     sceneview->setCullingMode( cullingMode );
     // You can also control the size of the screen space that is used to cull
     // small features with
     sceneview->setSmallFeatureCullingPixelSize( minimumSize );

but any of them didn't help me. So why the osg::fog effect fix the problem? 
I guess; it reduce the detail of scene and so this has resulted of protecting 
the models visibility. Does it could be right ?

Thanks so much Robert :)

ÜMİT UZUN

----------------------------------------
> Date: Wed, 7 May 2008 09:38:08 +0100
> From: [EMAIL PROTECTED]
> To: [email protected]
> Subject: Re: [osg-users] Aircraft Getting Invisible ?
> 
> Hi Umit,
> 
> I'd guess that you are probably coming across a near plane clipping
> issue, rather than a culling issue.  Unfortunately its easy to confuse
> clipping with culling when you just see disappearing, but its too very
> different mechanisms at play so its important to work out whether it
> is clipping or culling that is at play.  The way to know is study how
> the object disappears - does it slowly get eaten away or does it just
> pop out of existance - the former will be near plane clipping down on
> the GPU, the later most likely culling.
> 
> Both clipping and culling problems can be caused by incorrect bounding
> volume computations - if your plane was a custom drawable or you'd
> just a shader to modify its geometry then this might be a candidate.
> If you are using standard osg::Geometry then its very unlikely that
> culling as at fault as the OSG's native codes for computing bounding
> volumes and doing cull testing are very well established and tested.
> 
> My guess is that most likely you have an issue with near plane
> clipping, and if you have a very large model extents this can be very
> common - as the far plane will be pushed out so far.  The OSG does
> have support for cluster culling, and this will be used by default in
> geocentric databases built by VPB, this will cull out tiles beyond the
> horizon line and pull in the max far distance, but it doesn't solve
> all the potential problems as the furtherest tile can still be a long
> way out.   If you want to pull it in further you could manually
> control it but then you'll need to make sure you use glFog/osg::Fog on
> the terrain to make sure that you can only see up to a set maximum
> distanace.   If you use this trick then disabling the compute of near
> far will be required.   You should be able to enable the far clipping
> plane as well.
> 
> The other thing you can do is to reduce the NearFarRatio by setting
> setNearFarRatio to something lower than it's default of 0.0005f ( see
> src/osg/CullSettings.cpp's setDefaults() method where it's set.)
> 
> Robert.
> 
> Robert.
> 
> 2008/5/5 ümit uzun :
>>
>>  Hi all,
>>
>>  I have an aircraft. I resize it and add scene on the earth but it get 
>> invisible when I resized much smaller like that,
>>
>>  float size = 0.0005f / mAircraftModel.get( )->getBound( ).radius( );
>>
>>  mAircraftTransform->setDataVariance( osg::Object::STATIC );
>>  mAircraftTransform->setMatrix( osg::Matrix::scale( size, size, size ) *
>>  osg::Matrix::rotate( osg::DegreesToRadians( 90.0f ), 1.0f, 0.0f, 0.0f ) *
>>  osg::Matrix::rotate( osg::DegreesToRadians( -90.0f ), 0.0f, 0.0f, 1.0f ) *
>>  osg::Matrix::rotate( osg::DegreesToRadians( 5.0f ), 1.0f, 0.0f, 0.0f ) );
>>
>>  Earth size is,
>>
>>  float size = 2000.0f / mTerrainModel.get( )->getBound( ).radius( );
>>
>>  mTerrainTransform->setDataVariance( osg::Object::STATIC );
>>  mTerrainTransform->setMatrix( osg::Matrix::scale( size, size, size ) );
>>
>>  What can I do for protect the aircraft visibility?
>>
>>  Thanks so much!
>>
>>
>>  ÜMİT UZUN
>>
>>  _________________________________________________________________
>>  Şimdi aileye katılmanın tam zamanı - Yeni nesil Ücretsiz Windows Live 
>> Hizmetlerini şimdi edinin!
>>  http://get.live.com
>> _______________________________________________
>>  osg-users mailing list
>>  [email protected]
>>  http://lists.openscenegraph.org/listinfo.cgi/osg-users-openscenegraph.org
>>
>>
> _______________________________________________
> osg-users mailing list
> [email protected]
> http://lists.openscenegraph.org/listinfo.cgi/osg-users-openscenegraph.org

_________________________________________________________________
Şimdi aileye katılmanın tam zamanı - Yeni nesil Ücretsiz Windows Live 
Hizmetlerini şimdi edinin!
http://get.live.com
_______________________________________________
osg-users mailing list
[email protected]
http://lists.openscenegraph.org/listinfo.cgi/osg-users-openscenegraph.org

Reply via email to