如何判断现有站点是否正在使用 WebGL?
How to tell whether an existing site is using WebGL?
我正在尝试确定某个网站是否正在使用 WebGL。我很乐意使用 Chrome 的开发人员工具,但我不太确定我在寻找什么。我看到各种变量和名称中带有 "webgl" 的 类,但没有调用 initWebGL()
例如。
是否有可靠的、或许更简单的判断方法?
首先,正文中应该有一个 <canvas>
元素。如果不是,就不可能是WebGL。
其次,打开chrome调试器并按Ctrl+Shift F.如有必要,请在最底部展开搜索窗格。搜索 "bindBuffer"。您绝对必须绑定缓冲区才能使用 WebGL 执行任何操作。会用到的。
自最初的问题以来已经有一段时间了,但我想我会分享:
如果您使用 Chrome Dev Tools 中的 "Profile" 选项卡,并记录一两秒,您应该会在结果中看到名称为 "GPU" 的一行。如果 DOM 中有 <canvas/>
,但它没有使用 WebGL,GPU 行将不会出现。
使用 WebGL
没有 WebGL
在 Google Chrome 版本 97 中这对我有用:
- 在 Chrome DevTools
中打开“元素”选项卡
- Select DOM 中的
<canvas>
要检查的内容,因此它旁边显示 == [=11=]
(请参见下面的屏幕截图)
- 在 Chrome DevTools
中打开“控制台”选项卡
- 输入
[=12=].getContext('2d')
,当它显示 null
时,它是 WebGL 支持的 canvas,当它显示 CanvasRenderingContext2D
时,它是普通的 2D canvas
这里有一些可以尝试的网站:
WebGL Canvas - https://get.webgl.org/
非 WebGL Canvas - http://www.professorcloud.com/mainsite/canvas-nebula.htm
截图:
我正在尝试确定某个网站是否正在使用 WebGL。我很乐意使用 Chrome 的开发人员工具,但我不太确定我在寻找什么。我看到各种变量和名称中带有 "webgl" 的 类,但没有调用 initWebGL()
例如。
是否有可靠的、或许更简单的判断方法?
首先,正文中应该有一个 <canvas>
元素。如果不是,就不可能是WebGL。
其次,打开chrome调试器并按Ctrl+Shift F.如有必要,请在最底部展开搜索窗格。搜索 "bindBuffer"。您绝对必须绑定缓冲区才能使用 WebGL 执行任何操作。会用到的。
自最初的问题以来已经有一段时间了,但我想我会分享:
如果您使用 Chrome Dev Tools 中的 "Profile" 选项卡,并记录一两秒,您应该会在结果中看到名称为 "GPU" 的一行。如果 DOM 中有 <canvas/>
,但它没有使用 WebGL,GPU 行将不会出现。
使用 WebGL
没有 WebGL
在 Google Chrome 版本 97 中这对我有用:
- 在 Chrome DevTools 中打开“元素”选项卡
- Select DOM 中的
<canvas>
要检查的内容,因此它旁边显示== [=11=]
(请参见下面的屏幕截图) - 在 Chrome DevTools 中打开“控制台”选项卡
- 输入
[=12=].getContext('2d')
,当它显示null
时,它是 WebGL 支持的 canvas,当它显示CanvasRenderingContext2D
时,它是普通的 2D canvas
这里有一些可以尝试的网站:
WebGL Canvas - https://get.webgl.org/
非 WebGL Canvas - http://www.professorcloud.com/mainsite/canvas-nebula.htm
截图: