有没有什么办法可以查询GPU来告诉我我的网页中的视口当前是否在屏幕上?例如,如果我在iframe的画布中渲染了3d场景,是否有方法可以查询硬件(在我的iframe中,只有视口中的像素或垂直),以查看我是在屏幕上还是在屏幕上滚动?如何检测WebGL视口是否在屏幕上?
我很好奇这是否是我在顶点着色器级别上可以做到的。 WebGL甚至在离屏的视口上执行着色器程序吗?让我们说如果它在画布下滚动,或者视口被另一个网页浏览器窗口阻挡?有没有办法查询webgl的合成部分,以查看它是否在视图中或遍历“RenderObject”树来测试它是否在屏幕上,然后返回该值?我试图从我正在处理的项目中获得更多的性能,并且我试图只呈现屏幕上可见的内容。
任何可能的想法?这甚至有可能吗?谢谢!
谢谢JAre。这似乎是我见过的最好的答案。我非常感谢这些信息! – xtr33me