|
请问一个很小的模型
结构如下
Group
PagedLOD
Geode
PagedLOD
Geode
PagedLOD
Geode
PagedLOD
Geode
-------------------------
大小 139K
代码
osgViewer::Viewer;
osg::Group* root=new osg::Group;
osg:agedLOD* lod1=new osg::PagedLOD;
lod1.serFileName(0,"***.osgx");
lod1->setRange(0,0,2000);//自己大概设置的
root->addChild(lod1);
viewer.getDatabasePager()->setTargetMaximumNumberOfPageLOD(10);
viewer.getDatabasePager()->setDoPreCompile(true);
viewer.getCamera()->setLODScale(1.0);
viewer.setSceneData(root);
运行后 报错
Windows已在Test23.exe中触发了一个断点
其原因可能是堆被损坏,这说明Test23.exe中或它所加载的任何DLL中有Bug。
原因也可能是用户在Test123.exe具有焦点时按下了F12。
调用堆栈
落到osg100-osgd.dll! osg::Operation Thread::run()
程序焦点则落在 OperationThread.cpp文件中的
OpenThreads::ScopedLock<OpenThreads::Mutex> lock(_threadMutex)这一行
点击继续按钮后程序继续运行
黑色窗口弹出消息
Warning:detected OpenGL error 'out of memory' at after RenderBin::draw<..>
加载其他同样结构的数据都没有问题,只有某几个文件有问题,查了里面的坐标点,没有异常点(过大或者过小的点值)出现,请问这个是什么情况?
请哪位大侠指导一下,小女子不胜感激!!!! |
|