gwaldron / osgearth

3D Maps for OpenSceneGraph / C++14
https://www.pelicanmapping.com/home-1/opensource
Other
1.51k stars 779 forks source link

FeatureModelGraph depth-offset crash (master and Oct/2015) Win64, osg 3.4.0 / 3.2.3 #727

Closed remoe closed 8 years ago

remoe commented 8 years ago

Sorry, I don't have more details.

Installing depth offset shaders
_shaderMap of VirtualProgram is invalid ?!

(msvcr120d.dll) in sample.exe: 0xC0000005: Access violation reading location 0xFFFFFFFFFFFFFFFF.
    msvcr120d.dll!00007ffbfd39d164()    Unknown
    osgEarthd.dll!std::allocator<osgEarth::vector_map<unsigned int,osgEarth::VirtualProgram::ShaderEntry>::ENTRY>::deallocate(osgEarth::vector_map<unsigned int,osgEarth::VirtualProgram::ShaderEntry>::ENTRY * _Ptr, unsigned __int64 __formal) Line 574   C++
    osgEarthd.dll!std::_Wrap_alloc<std::allocator<osgEarth::vector_map<unsigned int,osgEarth::VirtualProgram::ShaderEntry>::ENTRY> >::deallocate(osgEarth::vector_map<unsigned int,osgEarth::VirtualProgram::ShaderEntry>::ENTRY * _Ptr, unsigned __int64 _Count) Line 859  C++
    osgEarthd.dll!std::vector<osgEarth::vector_map<unsigned int,osgEarth::VirtualProgram::ShaderEntry>::ENTRY,std::allocator<osgEarth::vector_map<unsigned int,osgEarth::VirtualProgram::ShaderEntry>::ENTRY> >::_Reallocate(unsigned __int64 _Count) Line 1605 C++
    osgEarthd.dll!std::vector<osgEarth::vector_map<unsigned int,osgEarth::VirtualProgram::ShaderEntry>::ENTRY,std::allocator<osgEarth::vector_map<unsigned int,osgEarth::VirtualProgram::ShaderEntry>::ENTRY> >::_Reserve(unsigned __int64 _Count) Line 1619    C++
    osgEarthd.dll!std::vector<osgEarth::vector_map<unsigned int,osgEarth::VirtualProgram::ShaderEntry>::ENTRY,std::allocator<osgEarth::vector_map<unsigned int,osgEarth::VirtualProgram::ShaderEntry>::ENTRY> >::resize(unsigned __int64 _Newsize) Line 1106    C++
    osgEarthd.dll!osgEarth::vector_map<unsigned int,osgEarth::VirtualProgram::ShaderEntry>::operator[](const unsigned int & key) Line 120   C++
    osgEarthd.dll!osgEarth::VirtualProgram::setFunction(const std::basic_string<char,std::char_traits<char>,std::allocator<char> > & functionName, const std::basic_string<char,std::char_traits<char>,std::allocator<char> > & shaderSource, osgEarth::ShaderComp::FunctionLocation location, osgEarth::ShaderComp::AcceptCallback * accept, float ordering) Line 1006 C++
>   osgEarthd.dll!osgEarth::ShaderLoader::load(osgEarth::VirtualProgram * vp, const std::basic_string<char,std::char_traits<char>,std::allocator<char> > & filename, const osgEarth::ShaderPackage & package, const osgDB::Options * dbOptions) Line 343    C++
    osgEarthd.dll!osgEarth::ShaderPackage::load(osgEarth::VirtualProgram * vp, const std::basic_string<char,std::char_traits<char>,std::allocator<char> > & filename, const osgDB::Options * dbOptions) Line 428    C++
    osgEarthd.dll!osgEarth::DepthOffsetAdapter::setGraph(osg::Node * graph) Line 204    C++
    osgEarthd.dll!osgEarth::DepthOffsetAdapter::setDepthOffsetOptions(const osgEarth::DepthOffsetOptions & options) Line 247    C++
    osgEarthd.dll!osgEarth::ClampableNode::setDepthOffsetOptions(const osgEarth::DepthOffsetOptions & options) Line 56  C++
    osgEarthFeaturesd.dll!osgEarth::Features::FeatureModelGraph::checkForGlobalStyles(const osgEarth::Symbology::Style & style) Line 1540   C++
    osgEarthFeaturesd.dll!osgEarth::Features::FeatureModelGraph::getOrCreateStyleGroupFromFactory(const osgEarth::Symbology::Style & style) Line 1589   C++
    osgEarthFeaturesd.dll!osgEarth::Features::FeatureModelGraph::createStyleGroup(const osgEarth::Symbology::Style & style, std::list<osg::ref_ptr<osgEarth::Features::Feature>,std::allocator<osg::ref_ptr<osgEarth::Features::Feature> > > & workingSet, const osgEarth::Features::FilterContext & contextPrototype, const osgDB::Options * readOptions) Line 1419    C++
    osgEarthFeaturesd.dll!osgEarth::Features::FeatureModelGraph::queryAndSortIntoStyleGroups(const osgEarth::Symbology::Query & query, const osgEarth::Symbology::StringExpression & styleExpr, osgEarth::Features::FeatureIndexBuilder * index, osg::Group * parent, const osgDB::Options * readOptions) Line 1362 C++
    osgEarthFeaturesd.dll!osgEarth::Features::FeatureModelGraph::build(const osgEarth::Symbology::Style & defaultStyle, const osgEarth::Symbology::Query & baseQuery, const osgEarth::GeoExtent & workingExtent, osgEarth::Features::FeatureIndexBuilder * index, const osgDB::Options * readOptions) Line 1176 C++
    osgEarthFeaturesd.dll!osgEarth::Features::FeatureModelGraph::buildTile(const osgEarth::Features::FeatureLevel & level, const osgEarth::GeoExtent & extent, const osgEarth::TileKey * key, const osgDB::Options * readOptions) Line 1038 C++
    osgEarthFeaturesd.dll!osgEarth::Features::FeatureModelGraph::load(unsigned int lod, unsigned int tileX, unsigned int tileY, const std::basic_string<char,std::char_traits<char>,std::allocator<char> > & uri, const osgDB::Options * readOptions) Line 672  C++
    osgEarthFeaturesd.dll!osgEarthFeatureModelPseudoLoader::readNode(const std::basic_string<char,std::char_traits<char>,std::allocator<char> > & uri, const osgDB::Options * readOptions) Line 160 C++
    osg130-osgDBd.dll!osgDB::Registry::ReadNodeFunctor::doRead(osgDB::ReaderWriter & rw) Line 946   C++
    osg130-osgDBd.dll!osgDB::Registry::read(const osgDB::Registry::ReadFunctor & readFunctor) Line 1171 C++
    osg130-osgDBd.dll!osgDB::Registry::readImplementation(const osgDB::Registry::ReadFunctor & readFunctor, osgDB::Options::CacheHintOptions cacheHint) Line 1299   C++
    osg130-osgDBd.dll!osgDB::Registry::readNodeImplementation(const std::basic_string<char,std::char_traits<char>,std::allocator<char> > & fileName, const osgDB::Options * options) Line 1501  C++
    osg130-osgDBd.dll!osgDB::Registry::readNode(const std::basic_string<char,std::char_traits<char>,std::allocator<char> > & fileName, const osgDB::Options * options, bool buildKdTreeIfRequired) Line 239 C++
    osg130-osgDBd.dll!osgDB::DatabasePager::DatabaseThread::run() Line 911  C++
    ot20-OpenThreadsd.dll!OpenThreads::ThreadPrivateActions::StartThread(void * data) Line 113  C++
remoe commented 8 years ago

I see something similar with osgEarth Oct/2015 and OSG 3.2.3:

    osgEarthd.dll!osgEarth::vector_map<unsigned int,osgEarth::VirtualProgram::ShaderEntry>::operator[](const unsigned int & key) Line 115   C++
    osgEarthd.dll!osgEarth::VirtualProgram::setFunction(const std::basic_string<char,std::char_traits<char>,std::allocator<char> > & functionName, const std::basic_string<char,std::char_traits<char>,std::allocator<char> > & shaderSource, osgEarth::ShaderComp::FunctionLocation location, osgEarth::ShaderComp::AcceptCallback * accept, float ordering) Line 1006 C++
>   osgEarthd.dll!osgEarth::ShaderLoader::load(osgEarth::VirtualProgram * vp, const std::basic_string<char,std::char_traits<char>,std::allocator<char> > & filename, const osgEarth::ShaderPackage & package, const osgDB::Options * dbOptions) Line 343    C++
    osgEarthd.dll!osgEarth::ShaderPackage::load(osgEarth::VirtualProgram * vp, const std::basic_string<char,std::char_traits<char>,std::allocator<char> > & filename, const osgDB::Options * dbOptions) Line 428    C++
    osgEarthd.dll!osgEarth::DepthOffsetAdapter::setGraph(osg::Node * graph) Line 204    C++
    osgEarthd.dll!osgEarth::DepthOffsetAdapter::setDepthOffsetOptions(const osgEarth::DepthOffsetOptions & options) Line 247    C++
    osgEarthd.dll!osgEarth::ClampableNode::setDepthOffsetOptions(const osgEarth::DepthOffsetOptions & options) Line 56  C++
    osgEarthFeaturesd.dll!osgEarth::Features::FeatureModelGraph::checkForGlobalStyles(const osgEarth::Symbology::Style & style) Line 1447   C++
    osgEarthFeaturesd.dll!osgEarth::Features::FeatureModelGraph::getOrCreateStyleGroupFromFactory(const osgEarth::Symbology::Style & style) Line 1483   C++
    osgEarthFeaturesd.dll!osgEarth::Features::FeatureModelGraph::createStyleGroup(const osgEarth::Symbology::Style & style, std::list<osg::ref_ptr<osgEarth::Features::Feature>,std::allocator<osg::ref_ptr<osgEarth::Features::Feature> > > & workingSet, const osgEarth::Features::FilterContext & contextPrototype) Line 1353    C++
    osgEarthFeaturesd.dll!osgEarth::Features::FeatureModelGraph::queryAndSortIntoStyleGroups(const osgEarth::Symbology::Query & query, const osgEarth::Symbology::StringExpression & styleExpr, osgEarth::Features::FeatureIndexBuilder * index, osg::Group * parent) Line 1297 C++
    osgEarthFeaturesd.dll!osgEarth::Features::FeatureModelGraph::build(const osgEarth::Symbology::Style & defaultStyle, const osgEarth::Symbology::Query & baseQuery, const osgEarth::GeoExtent & workingExtent, osgEarth::Features::FeatureIndexBuilder * index) Line 1126 C++
    osgEarthFeaturesd.dll!osgEarth::Features::FeatureModelGraph::buildLevel(const osgEarth::Features::FeatureLevel & level, const osgEarth::GeoExtent & extent, const osgEarth::TileKey * key) Line 992 C++
    osgEarthFeaturesd.dll!osgEarth::Features::FeatureModelGraph::load(unsigned int lod, unsigned int tileX, unsigned int tileY, const std::basic_string<char,std::char_traits<char>,std::allocator<char> > & uri) Line 727  C++
    osgEarthFeaturesd.dll!osgEarthFeatureModelPseudoLoader::readNode(const std::basic_string<char,std::char_traits<char>,std::allocator<char> > & uri, const osgDB::Options * options) Line 160 C++
    osg100-osgDBd.dll!osgDB::Registry::ReadNodeFunctor::doRead(osgDB::ReaderWriter & rw) Line 937   C++
    osg100-osgDBd.dll!osgDB::Registry::read(const osgDB::Registry::ReadFunctor & readFunctor) Line 1150 C++
    osg100-osgDBd.dll!osgDB::Registry::readImplementation(const osgDB::Registry::ReadFunctor & readFunctor, osgDB::Options::CacheHintOptions cacheHint) Line 1278   C++
    osg100-osgDBd.dll!osgDB::Registry::readNodeImplementation(const std::basic_string<char,std::char_traits<char>,std::allocator<char> > & fileName, const osgDB::Options * options) Line 1480  C++
    osg100-osgDBd.dll!osgDB::Registry::readNode(const std::basic_string<char,std::char_traits<char>,std::allocator<char> > & fileName, const osgDB::Options * options, bool buildKdTreeIfRequired) Line 238 C++
    osg100-osgDBd.dll!osgDB::DatabasePager::DatabaseThread::run() Line 854  C++
remoe commented 8 years ago

The setGraph is called many times and "install" is also true:

>   osgEarthd.dll!osgEarth::DepthOffsetAdapter::setGraph(osg::Node * graph) Line 201    C++
    osgEarthd.dll!osgEarth::DepthOffsetAdapter::setDepthOffsetOptions(const osgEarth::DepthOffsetOptions & options) Line 247    C++
    osgEarthd.dll!osgEarth::ClampableNode::setDepthOffsetOptions(const osgEarth::DepthOffsetOptions & options) Line 56  C++
    osgEarthFeaturesd.dll!osgEarth::Features::FeatureModelGraph::checkForGlobalStyles(const osgEarth::Symbology::Style & style) Line 1447   C++
    osgEarthFeaturesd.dll!osgEarth::Features::FeatureModelGraph::getOrCreateStyleGroupFromFactory(const osgEarth::Symbology::Style & style) Line 1483   C++
    osgEarthFeaturesd.dll!osgEarth::Features::FeatureModelGraph::createStyleGroup(const osgEarth::Symbology::Style & style, std::list<osg::ref_ptr<osgEarth::Features::Feature>,std::allocator<osg::ref_ptr<osgEarth::Features::Feature> > > & workingSet, const osgEarth::Features::FilterContext & contextPrototype) Line 1353    C++
    osgEarthFeaturesd.dll!osgEarth::Features::FeatureModelGraph::queryAndSortIntoStyleGroups(const osgEarth::Symbology::Query & query, const osgEarth::Symbology::StringExpression & styleExpr, osgEarth::Features::FeatureIndexBuilder * index, osg::Group * parent) Line 1297 C++
    osgEarthFeaturesd.dll!osgEarth::Features::FeatureModelGraph::build(const osgEarth::Symbology::Style & defaultStyle, const osgEarth::Symbology::Query & baseQuery, const osgEarth::GeoExtent & workingExtent, osgEarth::Features::FeatureIndexBuilder * index) Line 1126 C++
    osgEarthFeaturesd.dll!osgEarth::Features::FeatureModelGraph::buildLevel(const osgEarth::Features::FeatureLevel & level, const osgEarth::GeoExtent & extent, const osgEarth::TileKey * key) Line 992 C++
    osgEarthFeaturesd.dll!osgEarth::Features::FeatureModelGraph::load(unsigned int lod, unsigned int tileX, unsigned int tileY, const std::basic_string<char,std::char_traits<char>,std::allocator<char> > & uri) Line 727  C++
    osgEarthFeaturesd.dll!osgEarthFeatureModelPseudoLoader::readNode(const std::basic_string<char,std::char_traits<char>,std::allocator<char> > & uri, const osgDB::Options * options) Line 160 C++
    osg100-osgDBd.dll!osgDB::Registry::ReadNodeFunctor::doRead(osgDB::ReaderWriter & rw) Line 937   C++

Is this correct?

remoe commented 8 years ago

More about the state:

-       shaders {AlphaEffectFragment="AlphaEffect.frag.glsl" DepthOffsetVertex="DepthOffset.vert.glsl" DrapingVertex=...}   osgEarth::Shaders
+       osgEarth::ShaderPackage {_sources={ size=8 } _defines={ size=0 } _replaces={ size=0 } } osgEarth::ShaderPackage
+       AlphaEffectFragment "AlphaEffect.frag.glsl" std::basic_string<char,std::char_traits<char>,std::allocator<char> >
+       DepthOffsetVertex   "DepthOffset.vert.glsl" std::basic_string<char,std::char_traits<char>,std::allocator<char> >
+       DrapingVertex   "Draping.vert.glsl" std::basic_string<char,std::char_traits<char>,std::allocator<char> >
+       DrapingFragment "Draping.frag.glsl" std::basic_string<char,std::char_traits<char>,std::allocator<char> >
+       GPUClampingVertex   "GPUClamping.vert.glsl" std::basic_string<char,std::char_traits<char>,std::allocator<char> >
+       GPUClampingFragment "GPUClamping.frag.glsl" std::basic_string<char,std::char_traits<char>,std::allocator<char> >
+       GPUClampingVertexLib    "GPUClamping.vert.lib.glsl" std::basic_string<char,std::char_traits<char>,std::allocator<char> >
+       InstancingVertex    "Instancing.vert.glsl"  std::basic_string<char,std::char_traits<char>,std::allocator<char> >

VP after VirtualProgram::getOrCreate(s):

-       vp  0x000002374b35e5f0 {_template={_ptr=0xfdfdfdfd00f83144 {_pcpList={_array={...} } _attribBindingList=...} } ...} osgEarth::VirtualProgram *
+       osg::StateAttribute {_parents={ size=1738216449877125343 } _shaderComponent={_ptr=0x0000000000000000 <NULL> } _updateCallback=...}  osg::StateAttribute
+       _template   {_ptr=0xfdfdfdfd00f83144 {_pcpList={_array={...} } _attribBindingList={ size=??? } _fragDataBindingList=...} }  osg::ref_ptr<osg::Program>
        _mask   1189556944  unsigned int
+       _attribBindingList  { size=2436436036240 }  std::map<std::basic_string<char,std::char_traits<char>,std::allocator<char> >,unsigned int,std::less<std::basic_string<char,std::char_traits<char>,std::allocator<char> > >,std::allocator<std::pair<std::basic_string<char,std::char_traits<char>,std::allocator<char> > const ,unsigned int> > >
+       _functions  { size=2436436050912 }  std::map<enum osgEarth::ShaderComp::FunctionLocation,std::multimap<float,osgEarth::ShaderComp::Function,std::less<float>,std::allocator<std::pair<float const ,osgEarth::ShaderComp::Function> > >,std::less<enum osgEarth::ShaderComp::FunctionLocation>,std::allocator<std::pair<enum osgEarth::ShaderComp::FunctionLocation const ,std::multimap<float,osgEarth::ShaderComp::Function,std::less<float>,std::allocator<std::pair<float const ,osgEarth::ShaderComp::Function> > > > > >
        _inherit    true (80)   bool
+       _shaderMap  {_container={ size=576460676164796410 } }   osgEarth::vector_map<unsigned int,osgEarth::VirtualProgram::ShaderEntry>
+       _apply  {_array={ size=164703050332611191 } }   osg::buffered_object<osgEarth::VirtualProgram::ApplyVars>
+       _dataModelMutex {_prvData=0x000002374b3f18f0 _mutexType=8 } OpenThreads::Mutex
+       _programCache   {_data={ size=96076782923765077 } _lastKey={ size=1537263305452625695 } }   osgEarth::fast_map<std::vector<osg::ref_ptr<osgEarth::PolyShader>,std::allocator<osg::ref_ptr<osgEarth::PolyShader> > >,osgEarth::VirtualProgram::ProgramEntry>
+       _programCacheMutex  {_prvData=0xfeeefeeefeeefeee _mutexType=-17891602 } OpenThreads::Mutex
+       _active {_set=false _value=false _defaultValue=false }  osgEarth::optional<bool>
        _inheritSet true (68)   bool
        _logShaders false   bool
+       _logPath    ""  std::basic_string<char,std::char_traits<char>,std::allocator<char> >
+       _attribAliases  { size=270549058 }  std::map<std::basic_string<char,std::char_traits<char>,std::allocator<char> >,std::basic_string<char,std::char_traits<char>,std::allocator<char> >,std::less<std::basic_string<char,std::char_traits<char>,std::allocator<char> > >,std::allocator<std::pair<std::basic_string<char,std::char_traits<char>,std::allocator<char> > const ,std::basic_string<char,std::char_traits<char>,std::allocator<char> > > > >
        _useStackMemory true    bool
        _acceptCallbacksVaryPerFrame    false   bool
+       _vpStackMemory  {_item={_array={ size=384307168202221119 } } }  osgEarth::VirtualProgram::AttrStackMemory

style:

{ stroke: #3b0d72; stroke-opacity: 0.7; stroke-width: 2; stroke-stipple-pattern: 7967; stroke-stipple-factor: 1; render-depth-offset-min-bias: 2; altitude-clamping: terrain; altitude-technique: gpu; }
jasonbeverage commented 8 years ago

Thanks for looking into this Remo, can you reproduce this with a simple earth file or give us a little more detail about the data you are loading with the style you specified so we can look into it?

remoe commented 8 years ago

Jason, sorry another large dataset :) But I found this in the osgearth log file:

[osgEarth]  [DepthOffset] bias=[100, 10000] ... range=[1000, 10000000]
[osgEarth]  [DepthOffset] bias=[100, 10000] ... range=[1000, 10000000]
[osgEarth]  [DepthOffset] bias=[100, 10000] ... range=[1000, 10000000]
[osgEarth]  [DepthOffset] bias=[100, 10000] ... range=[1000, 10000000]
[osgEarth]  [DepthOffset] bias=[100, 10000] ... range=[1000, 10000000]
[osgEarth]  [DepthOffset] bias=[100, 10000] ... range=[1000, 10000000]
[osgEarth]  [DepthOffset] bias=[100, 10000] ... range=[1000, 10000000]
[osgEarth]  [DepthOffset] bias=[100, 10000] ... range=[1000, 10000000]
[osgEarth]  [DepthOffset] bias=[100, 10000] ... range=[1000, 10000000]
[osgEarth]  [DepthOffset] bias=[100, 10000] ... range=[1000, 10000000]
[osgEarth]  [DepthOffset] bias=[100, 10000] ... range=[1000, 10000000]
[osgEarth]  [DepthOffset] bias=[100, 10000] ... range=[1000, 10000000]
[osgEarth]  [DepthOffset] bias=[100, 10000] ... range=[1000, 10000000]
[osgEarth]  [DepthOffset] bias=[100, 10000] ... range=[1000, 10000000]
[osgEarth]  [DepthOffset] bias=[100, 10000] ... range=[1000, 10000000]
[osgEarth]  [DepthOffset] bias=[100, 10000] ... range=[1000, 10000000]
[osgEarth]  [DepthOffset] bias=[100, 10000] ... range=[1000, 10000000]
[osgEarth]  [DepthOffset] bias=[100, 10000] ... range=[1000, 10000000]
[osgEarth]  [DepthOffset] bias=[100, 10000] ... range=[1000, 10000000]
[osgEarth]  [DepthOffset] bias=[100, 10000] ... range=[1000, 10000000]
[osgEarth]  [DepthOffset] bias=[100, 10000] ... range=[1000, 10000000]
[osgEarth]  [DepthOffset] bias=[100, 10000] ... range=[1000, 10000000]
[osgEarth]  [DepthOffset] bias=[100, 10000] ... range=[1000, 10000000]
[osgEarth]  [DepthOffset] bias=[100, 10000] ... range=[1000, 10000000]
[osgEarth]  [DepthOffset] Installing depth offset shaders
[osgEarth]  [DepthOffset] Recalcluated.
[osgEarth]  [DepthOffset] bias=[100, 10000] ... range=[19, 10000000]
[osgEarth]  [DepthOffset] Installing depth offset shaders
[osgEarth]  [DepthOffset] bias=[70, 10000] ... range=[1000, 10000000]
[osgEarth]  [DepthOffset] Installing depth offset shaders
[osgEarth]  [DepthOffset] Installing depth offset shaders
[osgEarth]  [DepthOffset] bias=[70, 10000] ... range=[1000, 10000000]
[osgEarth]  [DepthOffset] Installing depth offset shaders
[osgEarth]  [DepthOffset] bias=[70, 10000] ... range=[1000, 10000000]
[osgEarth]  [DepthOffset] Installing depth offset shaders
[osgEarth]  [DepthOffset] Installing depth offset shaders
[osgEarth]  [DepthOffset] bias=[70, 10000] ... range=[1000, 10000000]
[osgEarth]  [DepthOffset] Installing depth offset shaders
[osgEarth]  [DepthOffset] bias=[70, 10000] ... range=[1000, 10000000]
[osgEarth]  [DepthOffset] Installing depth offset shaders
[osgEarth]  [DepthOffset] Installing depth offset shaders
[osgEarth]  [DepthOffset] Installing depth offset shaders
[osgEarth]  [DepthOffset] bias=[70, 10000] ... range=[1000, 10000000]
[osgEarth]  [DepthOffset] bias=[70, 10000] ... range=[1000, 10000000]
[osgEarth]  [DepthOffset] Installing depth offset shaders
[osgEarth]  [DepthOffset] Installing depth offset shaders
[osgEarth]  [DepthOffset] Installing depth offset shaders
[osgEarth]  [DepthOffset] bias=[70, 10000] ... range=[1000, 10000000]
[osgEarth]  [DepthOffset] Installing depth offset shaders
[osgEarth]  [DepthOffset] bias=[70, 10000] ... range=[1000, 10000000]
[osgEarth]  [DepthOffset] Installing depth offset shaders
[osgEarth]  [DepthOffset] Installing depth offset shaders
[osgEarth]  [DepthOffset] Installing depth offset shaders
[osgEarth]  [DepthOffset] Installing depth offset shaders
[osgEarth]  [DepthOffset] bias=[70, 10000] ... range=[1000, 10000000]
[osgEarth]  [DepthOffset] Installing depth offset shaders
[osgEarth]  [DepthOffset] bias=[70, 10000] ... range=[1000, 10000000]
[osgEarth]  [DepthOffset] bias=[70, 10000] ... range=[1000, 10000000]
[osgEarth]  [DepthOffset] bias=[70, 10000] ... range=[1000, 10000000]
[osgEarth]  [DepthOffset] Installing depth offset shaders
[osgEarth]  [DepthOffset] Installing depth offset shaders
[osgEarth]  [DepthOffset] bias=[70, 10000] ... range=[1000, 10000000]
[osgEarth]  [DepthOffset] Installing depth offset shaders
[osgEarth]  [DepthOffset] Installing depth offset shaders
[osgEarth]  [DepthOffset] Installing depth offset shaders
[osgEarth]  [DepthOffset] bias=[70, 10000] ... range=[1000, 10000000]
[osgEarth]  [DepthOffset] bias=[70, 10000] ... range=[1000, 10000000]
[osgEarth]  [DepthOffset] Installing depth offset shaders
[osgEarth]  [DepthOffset] Installing depth offset shaders
[osgEarth]  [DepthOffset] bias=[70, 10000] ... range=[1000, 10000000]
[osgEarth]  [DepthOffset] Installing depth offset shaders
[osgEarth]  [DepthOffset] Installing depth offset shaders
[osgEarth]  [DepthOffset] bias=[70, 10000] ... range=[1000, 10000000]
[osgEarth]  [DepthOffset] Installing depth offset shaders
[osgEarth]  [DepthOffset] Installing depth offset shaders
[osgEarth]  [DepthOffset] bias=[70, 10000] ... range=[1000, 10000000]
[osgEarth]  [DepthOffset] bias=[70, 10000] ... range=[1000, 10000000]
[osgEarth]  [DepthOffset] Installing depth offset shaders
[osgEarth]  [DepthOffset] bias=[70, 10000] ... range=[1000, 10000000]
[osgEarth]  [DepthOffset] Installing depth offset shaders
[osgEarth]  [DepthOffset] Installing depth offset shaders
[osgEarth]  [DepthOffset] Installing depth offset shaders
[osgEarth]  [DepthOffset] bias=[70, 10000] ... range=[1000, 10000000]
[osgEarth]  [DepthOffset] Installing depth offset shaders
[osgEarth]  [DepthOffset] bias=[70, 10000] ... range=[1000, 10000000]
[osgEarth]  [DepthOffset] bias=[70, 10000] ... range=[1000, 10000000]
[osgEarth]  [DepthOffset] Installing depth offset shaders
[osgEarth]  [DepthOffset] bias=[70, 10000] ... range=[1000, 10000000]
[osgEarth]  [DepthOffset] Installing depth offset shaders
[osgEarth]  [DepthOffset] bias=[70, 10000] ... range=[1000, 10000000]
[osgEarth]  [DepthOffset] Installing depth offset shaders
[osgEarth]  [DepthOffset] Installing depth offset shaders
[osgEarth]  [DepthOffset] Installing depth offset shaders
[osgEarth]  [DepthOffset] bias=[70, 10000] ... range=[1000, 10000000]
[osgEarth]  [DepthOffset] bias=[70, 10000] ... range=[1000, 10000000]
[osgEarth]  [DepthOffset] Installing depth offset shaders
[osgEarth]  [DepthOffset] Installing depth offset shaders
[osgEarth]  [DepthOffset] Installing depth offset shaders
[osgEarth]  [DepthOffset] bias=[70, 10000] ... range=[1000, 10000000]
[osgEarth]  [DepthOffset] Installing depth offset shaders
[osgEarth]  [DepthOffset] Installing depth offset shaders
[osgEarth]  [DepthOffset] bias=[70, 10000] ... range=[1000, 10000000]
[osgEarth]  [DepthOffset] bias=[70, 10000] ... range=[1000, 10000000]
[osgEarth]  [DepthOffset] Installing depth offset shaders
[osgEarth]  [DepthOffset] Installing depth offset shaders
[osgEarth]  [DepthOffset] Installing depth offset shaders
[osgEarth]  [DepthOffset] Installing depth offset shaders
[osgEarth]  [DepthOffset] bias=[70, 10000] ... range=[1000, 10000000]
[osgEarth]  [DepthOffset] bias=[70, 10000] ... range=[1000, 10000000]
[osgEarth]  [DepthOffset] Installing depth offset shaders
[osgEarth]  [DepthOffset] bias=[70, 10000] ... range=[1000, 10000000]
[osgEarth]  [DepthOffset] Installing depth offset shaders
[osgEarth]  [DepthOffset] bias=[70, 10000] ... range=[1000, 10000000]
[osgEarth]  [DepthOffset] Installing depth offset shaders
[osgEarth]  [DepthOffset] bias=[70, 10000] ... range=[1000, 10000000]
[osgEarth]  [DepthOffset] Installing depth offset shaders
[osgEarth]  [DepthOffset] Installing depth offset shaders
[osgEarth]  [DepthOffset] Installing depth offset shaders
[osgEarth]  [DepthOffset] bias=[70, 10000] ... range=[1000, 10000000]
[osgEarth]  [DepthOffset] bias=[70, 10000] ... range=[1000, 10000000]
[osgEarth]  [DepthOffset] Installing depth offset shaders
[osgEarth]  [DepthOffset] Installing depth offset shaders
[osgEarth]  [DepthOffset] Installing depth offset shaders
[osgEarth]  [DepthOffset] bias=[70, 10000] ... range=[1000, 10000000]
[osgEarth]  [DepthOffset] Installing depth offset shaders
[osgEarth]  [DepthOffset] bias=[70, 10000] ... range=[1000, 10000000]
[osgEarth]  [DepthOffset] Installing depth offset shaders
[osgEarth]  [DepthOffset] Installing depth offset shaders
[osgEarth]  [DepthOffset] bias=[70, 10000] ... range=[1000, 10000000]
[osgEarth]  [DepthOffset] Installing depth offset shaders
[osgEarth]  [DepthOffset] Installing depth offset shaders
[osgEarth]  [DepthOffset] bias=[70, 10000] ... range=[1000, 10000000]
[osgEarth]  [DepthOffset] bias=[70, 10000] ... range=[1000, 10000000]
[osgEarth]  [DepthOffset] Installing depth offset shaders
[osgEarth]  [DepthOffset] Installing depth offset shaders
[osgEarth]  [DepthOffset] Installing depth offset shaders
[osgEarth]  [DepthOffset] Installing depth offset shaders
[osgEarth]  [DepthOffset] bias=[70, 10000] ... range=[1000, 10000000]
[osgEarth]  [DepthOffset] Installing depth offset shaders
[osgEarth]  [DepthOffset] bias=[70, 10000] ... range=[1000, 10000000]
[osgEarth]  [DepthOffset] Installing depth offset shaders
[osgEarth]  [DepthOffset] bias=[70, 10000] ... range=[1000, 10000000]
[osgEarth]  [DepthOffset] bias=[70, 10000] ... range=[1000, 10000000]
[osgEarth]  [DepthOffset] Installing depth offset shaders
[osgEarth]  [DepthOffset] Installing depth offset shaders
[osgEarth]  [DepthOffset] Installing depth offset shaders
[osgEarth]  [DepthOffset] Installing depth offset shaders
[osgEarth]  [DepthOffset] bias=[70, 10000] ... range=[1000, 10000000]
[osgEarth]  [DepthOffset] bias=[70, 10000] ... range=[1000, 10000000]
[osgEarth]  [DepthOffset] Installing depth offset shaders
[osgEarth]  [DepthOffset] bias=[70, 10000] ... range=[1000, 10000000]
[osgEarth]  [DepthOffset] Installing depth offset shaders
[osgEarth]  [DepthOffset] Installing depth offset shaders
[osgEarth]  [DepthOffset] bias=[70, 10000] ... range=[1000, 10000000]
[osgEarth]  [DepthOffset] bias=[70, 10000] ... range=[1000, 10000000]
[osgEarth]  [DepthOffset] Installing depth offset shaders
[osgEarth]  [DepthOffset] Installing depth offset shaders
[osgEarth]  [DepthOffset] bias=[70, 10000] ... range=[1000, 10000000]
[osgEarth]  [DepthOffset] Installing depth offset shaders
[osgEarth]  [DepthOffset] bias=[70, 10000] ... range=[1000, 10000000]
[osgEarth]  [DepthOffset] Installing depth offset shaders
[osgEarth]  [DepthOffset] Installing depth offset shaders
[osgEarth]  [DepthOffset] bias=[70, 10000] ... range=[1000, 10000000]
[osgEarth]  [DepthOffset] Installing depth offset shaders
[osgEarth]  [DepthOffset] bias=[70, 10000] ... range=[1000, 10000000]
[osgEarth]  [DepthOffset] Installing depth offset shaders
[osgEarth]  [DepthOffset] Installing depth offset shaders
[osgEarth]  [DepthOffset] Installing depth offset shaders
[osgEarth]  [DepthOffset] bias=[70, 10000] ... range=[1000, 10000000]
[osgEarth]  [DepthOffset] Installing depth offset shaders
[osgEarth]  [DepthOffset] bias=[70, 10000] ... range=[1000, 10000000]
[osgEarth]  [DepthOffset] Installing depth offset shaders
[osgEarth]  [DepthOffset] bias=[70, 10000] ... range=[1000, 10000000]
[osgEarth]  [DepthOffset] Installing depth offset shaders
[osgEarth]  [DepthOffset] bias=[70, 10000] ... range=[1000, 10000000]
[osgEarth]  [DepthOffset] Installing depth offset shaders
[osgEarth]  [DepthOffset] Installing depth offset shaders
[osgEarth]  [DepthOffset] bias=[70, 10000] ... range=[1000, 10000000]
[osgEarth]  [DepthOffset] bias=[70, 10000] ... range=[1000, 10000000]
[osgEarth]  [DepthOffset] Installing depth offset shaders
[osgEarth]  [DepthOffset] Installing depth offset shaders
[osgEarth]  [DepthOffset] Installing depth offset shaders
[osgEarth]  [DepthOffset] Installing depth offset shaders
[osgEarth]  [DepthOffset] bias=[70, 10000] ... range=[1000, 10000000]
[osgEarth]  [DepthOffset] bias=[70, 10000] ... range=[1000, 10000000]
[osgEarth]  [DepthOffset] Installing depth offset shaders
[osgEarth]  [DepthOffset] bias=[70, 10000] ... range=[1000, 10000000]
[osgEarth]  [DepthOffset] Installing depth offset shaders
[osgEarth]  [DepthOffset] bias=[70, 10000] ... range=[1000, 10000000]
[osgEarth]  [DepthOffset] Installing depth offset shaders
[osgEarth]  [DepthOffset] bias=[70, 10000] ... range=[1000, 10000000]
[osgEarth]  [DepthOffset] Installing depth offset shaders
[osgEarth]  [DepthOffset] Installing depth offset shaders
[osgEarth]  [DepthOffset] bias=[70, 10000] ... range=[1000, 10000000]
[osgEarth]  [DepthOffset] Installing depth offset shaders
[osgEarth]  [DepthOffset] bias=[70, 10000] ... range=[1000, 10000000]
[osgEarth]  [DepthOffset] Installing depth offset shaders
[osgEarth]  [DepthOffset] Installing depth offset shaders
[osgEarth]  [DepthOffset] bias=[70, 10000] ... range=[1000, 10000000]
[osgEarth]  [DepthOffset] Installing depth offset shaders
[osgEarth]  [DepthOffset] bias=[70, 10000] ... range=[1000, 10000000]
[osgEarth]  [DepthOffset] Installing depth offset shaders
[osgEarth]  [DepthOffset] Installing depth offset shaders
[osgEarth]  [DepthOffset] bias=[70, 10000] ... range=[1000, 10000000]
[osgEarth]  [DepthOffset] Installing depth offset shaders
[osgEarth]  [DepthOffset] bias=[70, 10000] ... range=[1000, 10000000]
[osgEarth]  [DepthOffset] Installing depth offset shaders
[osgEarth]  [DepthOffset] Installing depth offset shaders
[osgEarth]  [DepthOffset] bias=[70, 10000] ... range=[1000, 10000000]
[osgEarth]  [DepthOffset] bias=[70, 10000] ... range=[1000, 10000000]
[osgEarth]  [DepthOffset] Installing depth offset shaders
[osgEarth]  [DepthOffset] bias=[70, 10000] ... range=[1000, 10000000]
[osgEarth]  [DepthOffset] Installing depth offset shaders
[osgEarth]  [DepthOffset] Installing depth offset shaders
[osgEarth]  [DepthOffset] bias=[70, 10000] ... range=[1000, 10000000]
[osgEarth]  [DepthOffset] Installing depth offset shaders
[osgEarth]  [DepthOffset] bias=[70, 10000] ... range=[1000, 10000000]
[osgEarth]  [DepthOffset] Installing depth offset shaders
[osgEarth]  [DepthOffset] Installing depth offset shaders
[osgEarth]  [DepthOffset] bias=[70, 10000] ... range=[1000, 10000000]
[osgEarth]  [DepthOffset] Installing depth offset shaders
[osgEarth]  [DepthOffset] bias=[70, 10000] ... range=[1000, 10000000]
[osgEarth]  [DepthOffset] Installing depth offset shaders
[osgEarth]  [DepthOffset] Installing depth offset shaders
[osgEarth]  [DepthOffset] bias=[70, 10000] ... range=[1000, 10000000]
[osgEarth]  [DepthOffset] Installing depth offset shaders
[osgEarth]  [DepthOffset] bias=[70, 10000] ... range=[1000, 10000000]
[osgEarth]  [DepthOffset] Installing depth offset shaders
[osgEarth]  [DepthOffset] Installing depth offset shaders
[osgEarth]  [DepthOffset] bias=[70, 10000] ... range=[1000, 10000000]
[osgEarth]  [DepthOffset] Installing depth offset shaders
[osgEarth]  [DepthOffset] bias=[70, 10000] ... range=[1000, 10000000]
[osgEarth]  [DepthOffset] Installing depth offset shaders
[osgEarth]  [DepthOffset] Installing depth offset shaders
[osgEarth]  [DepthOffset] bias=[70, 10000] ... range=[1000, 10000000]
[osgEarth]  [DepthOffset] Installing depth offset shaders
[osgEarth]  [DepthOffset] bias=[70, 10000] ... range=[1000, 10000000]
[osgEarth]  [DepthOffset] Installing depth offset shaders
[osgEarth]  [DepthOffset] Installing depth offset shaders
[osgEarth]  [DepthOffset] bias=[70, 10000] ... range=[1000, 10000000]
[osgEarth]  [DepthOffset] Installing depth offset shaders
[osgEarth]  [DepthOffset] bias=[70, 10000] ... range=[1000, 10000000]
[osgEarth]  [DepthOffset] Installing depth offset shaders
[osgEarth]  [DepthOffset] Installing depth offset shaders
[osgEarth]  [DepthOffset] Installing depth offset shaders
[osgEarth]  [DepthOffset] bias=[70, 10000] ... range=[1000, 10000000]
[osgEarth]  [DepthOffset] bias=[70, 10000] ... range=[1000, 10000000]
[osgEarth]  [DepthOffset] Installing depth offset shaders
[osgEarth]  [DepthOffset] Installing depth offset shaders
[osgEarth]  [DepthOffset] bias=[70, 10000] ... range=[1000, 10000000]
[osgEarth]  [DepthOffset] bias=[70, 10000] ... range=[1000, 10000000]
[osgEarth]  [DepthOffset] Installing depth offset shaders
[osgEarth]  [DepthOffset] Installing depth offset shaders
[osgEarth]  [DepthOffset] bias=[70, 10000] ... range=[1000, 10000000]
[osgEarth]  [DepthOffset] Installing depth offset shaders
[osgEarth]  [DepthOffset] bias=[70, 10000] ... range=[1000, 10000000]
[osgEarth]  [DepthOffset] Installing depth offset shaders
[osgEarth]  [DepthOffset] Installing depth offset shaders
[osgEarth]  [DepthOffset] Installing depth offset shaders
[osgEarth]  [DepthOffset] bias=[70, 10000] ... range=[1000, 10000000]
[osgEarth]  [DepthOffset] bias=[70, 10000] ... range=[1000, 10000000]
[osgEarth]  [DepthOffset] Installing depth offset shaders
[osgEarth]  [DepthOffset] bias=[70, 10000] ... range=[1000, 10000000]
[osgEarth]  [DepthOffset] Installing depth offset shaders
[osgEarth]  [DepthOffset] Installing depth offset shaders
[osgEarth]  [DepthOffset] Installing depth offset shaders
[osgEarth]  [DepthOffset] bias=[70, 10000] ... range=[1000, 10000000]
[osgEarth]  [DepthOffset] bias=[70, 10000] ... range=[1000, 10000000]
[osgEarth]  [DepthOffset] Installing depth offset shaders
[osgEarth]  [DepthOffset] Installing depth offset shaders
[osgEarth]  [DepthOffset] bias=[70, 10000] ... range=[1000, 10000000]
[osgEarth]  [DepthOffset] Installing depth offset shaders
[osgEarth]  [DepthOffset] bias=[100, 10000] ... range=[1000, 10000000]
[osgEarth]  [DepthOffset] Installing depth offset shaders
[osgEarth]  [DepthOffset] bias=[100, 10000] ... range=[1000, 10000000]
[osgEarth]  [DepthOffset] Installing depth offset shaders
[osgEarth]  [DepthOffset] Recalcluated.
[osgEarth]  [DepthOffset] bias=[100, 10000] ... range=[19, 10000000]
[osgEarth]  [DepthOffset] Installing depth offset shaders
[osgEarth]  [DepthOffset] bias=[70, 10000] ... range=[1000, 10000000]
[osgEarth]  [DepthOffset] Installing depth offset shaders
[osgEarth]  [DepthOffset] Installing depth offset shaders
[osgEarth]  [DepthOffset] Installing depth offset shaders
[osgEarth]  [DepthOffset] Recalcluated.
[osgEarth]  [DepthOffset] bias=[100, 10000] ... range=[19, 10000000]
[osgEarth]  [DepthOffset] Installing depth offset shaders
jasonbeverage commented 8 years ago

Remo, I pushed what I hope is a fix in a4e3cc8. Can you give it a pull and see if it fixes your issue?

remoe commented 8 years ago

Awesome! I can't reproduce it with current master ;)