为什么我的屏幕在 A-Frame 中是空白的?
Why is my screen blank in A-Frame?
我使用 Hello World Codepen 和样板打开了一个 A-Frame 场景,但我在 Chrome 中得到了一个空白屏幕。
检查您的浏览器是否启用了 WebGL 和硬件加速,并检查您的 GPU 是否在系统的黑名单中。
我找到了解决方案 here。它对我有用。
详情如下:
Chrome
首先,启用硬件加速:
转到 chrome://设置
单击 + 显示高级设置按钮
在“系统”部分,确保选中“可用时使用硬件加速”复选框(您需要重新启动 Chrome 才能使任何更改生效)
然后启用 WebGL:
转到 chrome://flags
确保禁用 WebGL 未激活(您需要重新启动 Chrome 才能使任何更改生效)
然后检查WebGL的状态:
转到chrome://gpu
检查图形功能状态列表中的 WebGL 项。状态将是以下之一:
硬件加速——启用 WebGL 并进行硬件加速(运行 在显卡上)。
仅限软件,硬件加速不可用 — WebGL 已启用,但在软件中 运行。有关详细信息,请参阅此处:"For software rendering of WebGL, Chrome uses SwiftShader, a software GL rasterizer."
不可用——WebGL 在硬件或软件中不可用。
如果状态不是 "Hardware accelerated",则“检测到的问题”列表(在“图形功能状态”列表下方)可能会解释为什么硬件加速不可用。
如果您的图形 card/drivers 被列入黑名单,您可以覆盖黑名单。警告:不推荐这样做! (请参阅下面的黑名单说明)。要覆盖黑名单:
转到 chrome://flags
激活覆盖软件渲染列表设置(您需要重新启动 Chrome 才能使任何更改生效)
有关详细信息,请参阅:Chrome 帮助:WebGL 和 3D 图形。
火狐
首先,启用 WebGL:
转到about:config
搜索 webgl.disabled
确保其值为 false(任何更改立即生效,无需重新启动 Firefox)
然后检查WebGL的状态:
转到about:support
检查 Graphics table 中的 WebGL Renderer 行:
如果状态包含显卡制造商、型号和驱动程序(例如:"NVIDIA Corporation -- NVIDIA GeForce GT 650M OpenGL Engine"),则 WebGL 已启用。
如果状态类似于 "Blocked for your graphics card because of unresolved driver issues" 或 "Blocked for your graphics driver version",则您的图形 card/driver 已列入黑名单。
如果您的图片 card/drivers 被列入黑名单,您可以覆盖黑名单。警告:不推荐这样做! (请参阅下面的黑名单说明)。要覆盖黑名单:
转到about:config
搜索 webgl.force-enabled
设置为真
(与 Chrome 一样,Firefox 在“首选项”>“高级”>“常规”>“浏览”中有一个“可用时使用硬件加速”复选框。但是,与 Chrome 不同的是,Firefox 不需要选中此复选框才能使 WebGL 工作。 )
野生动物园
转到 Safari 的首选项
Select 高级选项卡
确保选中菜单栏中的显示开发菜单复选框
在 Safari 的开发菜单中,确保选中启用 WebGL
我使用 Hello World Codepen 和样板打开了一个 A-Frame 场景,但我在 Chrome 中得到了一个空白屏幕。
检查您的浏览器是否启用了 WebGL 和硬件加速,并检查您的 GPU 是否在系统的黑名单中。
我找到了解决方案 here。它对我有用。
详情如下:
Chrome
首先,启用硬件加速:
转到 chrome://设置 单击 + 显示高级设置按钮 在“系统”部分,确保选中“可用时使用硬件加速”复选框(您需要重新启动 Chrome 才能使任何更改生效) 然后启用 WebGL:
转到 chrome://flags 确保禁用 WebGL 未激活(您需要重新启动 Chrome 才能使任何更改生效) 然后检查WebGL的状态:
转到chrome://gpu 检查图形功能状态列表中的 WebGL 项。状态将是以下之一: 硬件加速——启用 WebGL 并进行硬件加速(运行 在显卡上)。 仅限软件,硬件加速不可用 — WebGL 已启用,但在软件中 运行。有关详细信息,请参阅此处:"For software rendering of WebGL, Chrome uses SwiftShader, a software GL rasterizer." 不可用——WebGL 在硬件或软件中不可用。 如果状态不是 "Hardware accelerated",则“检测到的问题”列表(在“图形功能状态”列表下方)可能会解释为什么硬件加速不可用。
如果您的图形 card/drivers 被列入黑名单,您可以覆盖黑名单。警告:不推荐这样做! (请参阅下面的黑名单说明)。要覆盖黑名单:
转到 chrome://flags 激活覆盖软件渲染列表设置(您需要重新启动 Chrome 才能使任何更改生效) 有关详细信息,请参阅:Chrome 帮助:WebGL 和 3D 图形。
火狐
首先,启用 WebGL:
转到about:config 搜索 webgl.disabled 确保其值为 false(任何更改立即生效,无需重新启动 Firefox) 然后检查WebGL的状态:
转到about:support 检查 Graphics table 中的 WebGL Renderer 行: 如果状态包含显卡制造商、型号和驱动程序(例如:"NVIDIA Corporation -- NVIDIA GeForce GT 650M OpenGL Engine"),则 WebGL 已启用。 如果状态类似于 "Blocked for your graphics card because of unresolved driver issues" 或 "Blocked for your graphics driver version",则您的图形 card/driver 已列入黑名单。 如果您的图片 card/drivers 被列入黑名单,您可以覆盖黑名单。警告:不推荐这样做! (请参阅下面的黑名单说明)。要覆盖黑名单:
转到about:config 搜索 webgl.force-enabled 设置为真 (与 Chrome 一样,Firefox 在“首选项”>“高级”>“常规”>“浏览”中有一个“可用时使用硬件加速”复选框。但是,与 Chrome 不同的是,Firefox 不需要选中此复选框才能使 WebGL 工作。 )
野生动物园
转到 Safari 的首选项 Select 高级选项卡 确保选中菜单栏中的显示开发菜单复选框 在 Safari 的开发菜单中,确保选中启用 WebGL