检测客户端的webgl功能

检测客户端的webgl功能,webgl,Webgl,在运行webgl时,我怎么能猜出我要处理的是哪种机器 我可以查询类似于MAX\u VERTEX\u ATTRIBUTES,OES\u texture\u float和其他类似的属性,并猜测它是高端还是低端GPU 我认为更好的方法是查看用户代理字符串(navigator.userAgent)、WEBGL\u无掩码供应商和WEBGL\u无掩码渲染器fromWEBGL\u debug\u RENDERER\u info,尝试了解用户的平台(移动或桌面)和GPU(fromWEBGL\u无掩码渲染器) 例

在运行webgl时,我怎么能猜出我要处理的是哪种机器


我可以查询类似于
MAX\u VERTEX\u ATTRIBUTES
OES\u texture\u float
和其他类似的属性,并猜测它是高端还是低端GPU

我认为更好的方法是查看用户代理字符串(
navigator.userAgent
)、
WEBGL\u无掩码供应商
WEBGL\u无掩码渲染器
from
WEBGL\u debug\u RENDERER\u info
,尝试了解用户的平台(移动或桌面)和GPU(from
WEBGL\u无掩码渲染器

例如,以下是我的UA和渲染器名称:

Mozilla/5.0 (Macintosh; Intel Mac OS X 10_12_4) AppleWebKit/603.1.30 (KHTML, like Gecko) Version/10.1 Safari/603.1.30
Intel Iris OpenGL Engine
从这一点你可以猜到我正在运行一个桌面Mac(
Intel Mac
UA的一部分),它有Intel iGPU(来自渲染器)

另一个例子,来自iPhone:

Mozilla/5.0 (iPhone; CPU iPhone OS 10_3_2 like Mac OS X) AppleWebKit/603.2.4 (KHTML, like Gecko) Version/10.0 Mobile/14F89 Safari/602.1
Apple A9 GPU
从这一点,你显然可以发现,你正在处理一个iPhone 6S(因为它有一个9芯片)


同样,您可以检测Androids和WinPhone并查询GPU。

非常感谢您的回答,由于某些原因,我错过了此通知。有关更多详细信息,请查看webglreport.com背后的脚本,网址为