加载特定模型后,伪造查看器崩溃

时间:2018-06-12 19:11:22

标签: autodesk-forge autodesk-viewer autodesk-model-derivative

我一直在尝试使用forge查看器加载一些大型模型,但似乎观看者在几秒钟(3 - 5)的使用后崩溃。 (有典型的Aw snap!页面)。

我对其他型号没有任何问题,但这种情况发生在Windows 10 Chrome上的这个特定型号上。

我已经测试了在OS X中的加载,但它似乎有效,虽然它有点慢。

我目前最好的猜测是由于Chrome中的内存溢出而发生这种情况,但目前还不确定,因为在我尝试记录堆使用情况之前,查看器崩溃了。

我可以使用任何选项来进行有效的模型加载吗? 此外,是否有允许内存跟踪的调试模式?

如果您需要型号,请告诉我。

谢谢!

1 个答案:

答案 0 :(得分:1)

要修改查看器(如iPhone)的内存环境,请使用此处的内存限制值更改选项参数:

(请参阅默认内存管理部分) https://developer.autodesk.com/en/docs/viewer/v2/overview/changelog/2.17/

特别是,您可以像这样强制进行内存管理: var config3d = { memory: { limit: 400, // in MB debug: { force: true } } }; var viewer = new av.Viewer3D(container, config3d); viewer.loadModel( modelUrl, {}, onSuccess, onError );

要调试内存,请尝试以下操作:

var memInfo = viewer.getMemoryInfo(); console.log(memInfo.limit); // == 400 MB console.log(memInfo.effectiveLimit); // >= 400 MB console.log(memInfo.loaded);

最后,您可以使用此命令从Chrome调试控制台打开内存管理器面板扩展名...

NOP_VIEWER.loadExtension("Autodesk.Viewing.MemoryManager")

点击内存芯片图标,调出面板(见下面的截图)......

memoryManagementPanel

在内存选项卡中,您可以看到许多与分页内存相关的参数,以便渲染和网络加载多个网格(网格包(pf)zip,按最近或最大网格AABB排序,忽略像素太少的网格在屏幕上等)。

另一种激活Viewer低内存模式的快捷方法是通过激活移动调试来诱骗桌面Chrome浏览器将其视为移动设备。您可以使用它来测试与移动相关的内存问题。 请遵循以下指南:Chrome debug - Mobile mode

希望这有帮助!