Hi Robert,

ok for KDTree, but the question is : Why an osg2.6.1 file.ive opened by
osg2.8.1 using KDtree make a crash ?
Sorry I cannot give the file, this is confidential data I'm not allowed to
give you.

Crash : Unhandled exception at 0x7c812afb in Launcherd.exe: Microsoft C++
exception: std::bad_alloc at memory location 0x00d9ec28..


This is the stack trace :

     kernel32.dll!7c812afb()
     [Frames below may be incorrect and/or missing, no symbols loaded for
kernel32.dll]
     kernel32.dll!7c812afb()
>    osg55-osgd.dll!std::_Allocate<osg::KdTree::KdNode>(unsigned int
_Count=144230, osg::KdTree::KdNode * __formal=0x00000000)  Line 43 + 0xc
bytes    C++
     osg55-osgd.dll!std::allocator<osg::KdTree::KdNode>::allocate(unsigned
int _Count=144230)  Line 145 + 0xb bytes    C++

osg55-osgd.dll!std::vector<osg::KdTree::KdNode,std::allocator<osg::KdTree::KdNode>
>::reserve(unsigned int _Count=144230)  Line 607 + 0xf bytes    C++
     osg55-osgd.dll!BuildKdTree::build(osg::KdTree::BuildOptions &
options={...}, osg::Geometry * geometry=0x35097a68)  Line 124    C++
     osg55-osgd.dll!osg::KdTree::build(osg::KdTree::BuildOptions &
options={...}, osg::Geometry * geometry=0x35097a68)  Line 764 + 0x10
bytes    C++
     osg55-osgd.dll!osg::KdTreeBuilder::apply(osg::Geode & geode={...})
Line 817 + 0x25 bytes    C++
     osg55-osgd.dll!osg::Geode::accept(osg::NodeVisitor & nv={...})  Line 39
+ 0x41 bytes    C++
     osg55-osgd.dll!osg::Group::traverse(osg::NodeVisitor & nv={...})  Line
62 + 0x25 bytes    C++
     osg55-osgd.dll!osg::NodeVisitor::traverse(osg::Node & node={...})  Line
191 + 0x1c bytes    C++
     osg55-osgd.dll!osg::NodeVisitor::apply(osg::Node & node={...})  Line
72    C++
     osg55-osgd.dll!osg::NodeVisitor::apply(osg::Group & node={...})  Line
86 + 0x13 bytes    C++
     osg55-osgd.dll!osg::Group::accept(osg::NodeVisitor & nv={...})  Line 38
+ 0x41 bytes    C++
     osg55-osgd.dll!osg::Group::traverse(osg::NodeVisitor & nv={...})  Line
62 + 0x25 bytes    C++
     osg55-osgd.dll!osg::NodeVisitor::traverse(osg::Node & node={...})  Line
191 + 0x1c bytes    C++
     osg55-osgd.dll!osg::NodeVisitor::apply(osg::Node & node={...})  Line
72    C++
     osg55-osgd.dll!osg::NodeVisitor::apply(osg::Group & node={...})  Line
86 + 0x13 bytes    C++
     osg55-osgd.dll!osg::Group::accept(osg::NodeVisitor & nv={...})  Line 38
+ 0x41 bytes    C++
     osg55-osgd.dll!osg::Group::traverse(osg::NodeVisitor & nv={...})  Line
62 + 0x25 bytes    C++
     osg55-osgd.dll!osg::NodeVisitor::traverse(osg::Node & node={...})  Line
191 + 0x1c bytes    C++
     osg55-osgd.dll!osg::NodeVisitor::apply(osg::Node & node={...})  Line
72    C++
     osg55-osgd.dll!osg::NodeVisitor::apply(osg::Group & node={...})  Line
86 + 0x13 bytes    C++
     osg55-osgd.dll!osg::Group::accept(osg::NodeVisitor & nv={...})  Line 38
+ 0x41 bytes    C++
     osg55-osgd.dll!osg::Group::traverse(osg::NodeVisitor & nv={...})  Line
62 + 0x25 bytes    C++
     osg55-osgd.dll!osg::NodeVisitor::traverse(osg::Node & node={...})  Line
191 + 0x1c bytes    C++
     osg55-osgd.dll!osg::NodeVisitor::apply(osg::Node & node={...})  Line
72    C++
     osg55-osgd.dll!osg::NodeVisitor::apply(osg::Group & node={...})  Line
86 + 0x13 bytes    C++
     osg55-osgd.dll!osg::Group::accept(osg::NodeVisitor & nv={...})  Line 38
+ 0x41 bytes    C++
     osg55-osgd.dll!osg::Group::traverse(osg::NodeVisitor & nv={...})  Line
62 + 0x25 bytes    C++
     osg55-osgd.dll!osg::NodeVisitor::traverse(osg::Node & node={...})  Line
191 + 0x1c bytes    C++
     osg55-osgd.dll!osg::NodeVisitor::apply(osg::Node & node={...})  Line
72    C++
     osg55-osgd.dll!osg::NodeVisitor::apply(osg::Group & node={...})  Line
86 + 0x13 bytes    C++
     osg55-osgd.dll!osg::Group::accept(osg::NodeVisitor & nv={...})  Line 38
+ 0x41 bytes    C++
     osg55-osgd.dll!osg::Group::traverse(osg::NodeVisitor & nv={...})  Line
62 + 0x25 bytes    C++
     osg55-osgd.dll!osg::NodeVisitor::traverse(osg::Node & node={...})  Line
191 + 0x1c bytes    C++
     osg55-osgd.dll!osg::NodeVisitor::apply(osg::Node & node={...})  Line
72    C++
     osg55-osgd.dll!osg::NodeVisitor::apply(osg::Group & node={...})  Line
86 + 0x13 bytes    C++
     osg55-osgd.dll!osg::Group::accept(osg::NodeVisitor & nv={...})  Line 38
+ 0x41 bytes    C++
     osg55-osgd.dll!osg::Group::traverse(osg::NodeVisitor & nv={...})  Line
62 + 0x25 bytes    C++
     osg55-osgd.dll!osg::NodeVisitor::traverse(osg::Node & node={...})  Line
191 + 0x1c bytes    C++
     osg55-osgd.dll!osg::NodeVisitor::apply(osg::Node & node={...})  Line
72    C++
     osg55-osgd.dll!osg::NodeVisitor::apply(osg::Group & node={...})  Line
86 + 0x13 bytes    C++
     osg55-osgd.dll!osg::Group::accept(osg::NodeVisitor & nv={...})  Line 38
+ 0x41 bytes    C++
     osg55-osgd.dll!osg::Group::traverse(osg::NodeVisitor & nv={...})  Line
62 + 0x25 bytes    C++
     osg55-osgd.dll!osg::NodeVisitor::traverse(osg::Node & node={...})  Line
191 + 0x1c bytes    C++
     osg55-osgd.dll!osg::NodeVisitor::apply(osg::Node & node={...})  Line
72    C++
     osg55-osgd.dll!osg::NodeVisitor::apply(osg::Group & node={...})  Line
86 + 0x13 bytes    C++
     osg55-osgd.dll!osg::Group::accept(osg::NodeVisitor & nv={...})  Line 38
+ 0x41 bytes    C++
     osg55-osgd.dll!osg::Group::traverse(osg::NodeVisitor & nv={...})  Line
62 + 0x25 bytes    C++
     osg55-osgd.dll!osg::NodeVisitor::traverse(osg::Node & node={...})  Line
191 + 0x1c bytes    C++
     osg55-osgd.dll!osg::NodeVisitor::apply(osg::Node & node={...})  Line
72    C++
     osg55-osgd.dll!osg::NodeVisitor::apply(osg::Group & node={...})  Line
86 + 0x13 bytes    C++
     osg55-osgd.dll!osg::NodeVisitor::apply(osg::Transform & node={...})
Line 121 + 0x13 bytes    C++
     osg55-osgd.dll!osg::NodeVisitor::apply(osg::MatrixTransform &
node={...})  Line 136 + 0x13 bytes    C++
     osg55-osgd.dll!osg::MatrixTransform::accept(osg::NodeVisitor &
nv={...})  Line 37 + 0x41 bytes    C++
     osg55-osgd.dll!osg::Group::traverse(osg::NodeVisitor & nv={...})  Line
62 + 0x25 bytes    C++
     osg55-osgd.dll!osg::NodeVisitor::traverse(osg::Node & node={...})  Line
191 + 0x1c bytes    C++
     osg55-osgd.dll!osg::NodeVisitor::apply(osg::Node & node={...})  Line
72    C++
     osg55-osgd.dll!osg::NodeVisitor::apply(osg::Group & node={...})  Line
86 + 0x13 bytes    C++
     osg55-osgd.dll!osg::Group::accept(osg::NodeVisitor & nv={...})  Line 38
+ 0x41 bytes    C++

osg55-osgDBd.dll!osgDB::Registry::_buildKdTreeIfRequired(osgDB::ReaderWriter::ReadResult
& result={...}, const osgDB::ReaderWriter::Options * options=0x00000000)
Line 342 + 0x23 bytes    C++
     osg55-osgDBd.dll!osgDB::Registry::readNode(const
std::basic_string<char,std::char_traits<char>,std::allocator<char> > &
fileName="Z:/a350.ive", const osgDB::ReaderWriter::Options *
options=0x00000000, bool buildKdTreeIfRequired=true)  Line 241    C++
     osg55-osgDBd.dll!osgDB::readNodeFile(const
std::basic_string<char,std::char_traits<char>,std::allocator<char> > &
filename="Z:/a350.ive", const osgDB::ReaderWriter::Options *
options=0x00000000)  Line 69 + 0x1f bytes    C++
     3DEMd.dll!osgDB::readNodeFile(const
std::basic_string<char,std::char_traits<char>,std::allocator<char> > &
filename="Z:/a350.ive")  Line 106 + 0x1e bytes    C++
...


I'll try to make a new ive file using directly osg2.8.1 to see if the
problem is an osg version problem or something else.

Thanks,

Regards,
   Vincent.

2009/6/5 Robert Osfield <[email protected]>

> HI Vincent,
>
> What you are doing should be OK, but I can't see that anyone can help
> point to what the problem without you providing at least a stack
> trace, and ideally a test model to look at.
>
> Robert.
>
> On Fri, Jun 5, 2009 at 5:06 PM, Vincent
> Bourdier<[email protected]> wrote:
> > Hi all,
> >
> > I've got a crash on loading an ive file made by osgExp and opened/saved
> by
> > osg 2.6.1 next, because of the Kd Tree built.
> >
> > I use :
> >
> >
> >
> osgDB::Registry::instance()->setBuildKdTreesHint(osgDB::ReaderWriter::Options::BUILD_KDTREES);
> >
> > and I load the models after that.
> >
> > If I remove his line, the model load correctly.
> >
> > I use osg 2.8.1 now, and I cannot use this model ... do I need to
> open/save
> > the file exported by 3dsmax with osg 2.8.1 ?
> > Do I need to set the KDTree to do that ?
> > Do I set the KDTree correctly ?
> >
> > Thanks for your help, any suggestion would very appreciated.
> >
> > Regards,
> >    Vincent.
> >
> > _______________________________________________
> > 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
>
_______________________________________________
osg-users mailing list
[email protected]
http://lists.openscenegraph.org/listinfo.cgi/osg-users-openscenegraph.org

Reply via email to