查看器版本 7 中的 WebGL GL_INVALID_OPERATION

WebGL GL_INVALID_OPERATION in viewer version 7

将查看器从版本 6.5 升级到 7.1 后,当 运行 我们现有的 Forge 模型文件时,我们在浏览器控制台日志中注意到此警告:

GL_INVALID_OPERATION: Active draw buffers with missing fragment shader outputs.

我们已经尝试了几个现有的模型,都显示了相同的警告,没有应用我们自己的扩展,只是一个基本的查看器。我们最小的模型给了我们 6 个警告副本,而较大的多模型给了我们 256 个副本,加上:

WebGL: too many errors, no more errors will be reported to the console for this context.

对我们来说,这似乎是查看器的内部问题。也许发布新的模型版本可以解决这个问题,但如果我们不必这样做就好了。

PS: 我们所有的模型都是自托管的(不是 BIM 360)。我们相信我们已经采取了 v7 migration guide.

中提到的所有必要行动

编辑: 当 运行 在 Firefox(64 位,v68.0.1)中使用相同的模型时,我收到不同的警告消息,并引用 WebGLRenderer.js:

中的第 2883 行
Error: WebGL warning: drawElements: Program has no frag output at location 1, but destination draw buffer has an attached image. 6 WebGLRenderer.js:2883

_gl.drawElements(geomType, count, type, startOffset * size); // 2 bytes per Uint16

尝试升级到 Viewer v7.2,应该可以解决问题:

  • Fixed attributesVersion bugs on pushpin’s metadata
  • Infinite recursion in Fusion Orbit
  • Reset view frustrum and clipping planes when zoomed into large model
  • MRT errors in Chrome 76

查看完整的发行说明here

我们的主查看器应用程序似乎存在问题,自定义扩展等。我能够在基本的 7.2 查看器应用程序中正确渲染模型。然后 "Clicking in Model Browser will now isolate objects" 也能正常工作。

所以我们需要做更多的研究来找到原因。谢谢你的帮助,布莱恩。