|
现在在做一个三维城市的项目,在处理场景动态加载和卸载时遇到了问题。
测试对比:
1. 将若干个场景结点加入到场景根结点中, 如果不调用osgviewer::setSceneData()函数,即只加载场景数据但是不往viewer浏览器中添加,
随后调用RemoveChildren(), 发现场景数据被正常卸载, 所占用的内存正确释放。
2. 将若干个场景结点加入到场景根结点中, 如果调用osgviewer::setSceneData()函数,即加载场景数据到viewer浏览器中,场景正常渲染, 但是当剔除不在视口范围内的旧节点时,调用RemoveChildren(), 发现节点数据未被正常卸载, 所占用的内存一直无法释放。随着视点不断加载场景, 内存一直再增长。
哪位大神能帮我找找原因?
在这里先谢谢啦! |
|