【问题标题】:Graphics card issue or coding problem? THREE.JS webgl显卡问题还是编码问题?三.JS webgl
【发布时间】:2021-01-14 09:48:27
【问题描述】:

所以我使用 three.js 创建了一个场景,它曾经完美地工作到今天(代码中没有任何变化)但是在每个浏览器 chrome、firefox、Edge 中我都不断收到错误:

THREE.WebGLRenderer: Context Lost.

我怀疑这是显卡问题,有人可以确认吗?

奇怪的是,在 chrome 中我也得到了一个额外的错误:

THREE.WebGLProgram: shader error: 0 35715 false gl.getProgramInfoLog THREE.WebGLShader: gl.getShaderInfoLog() vertex

这是实时链接(项目未完成):

https://ui-unicorn.co.uk/game-lesson-1/new-index-2021

有人可以通过代码确认项目是否损坏或问题是我的显卡吗?

亲切的问候

编辑:其他 webgl 项目对我来说也运行良好,如果是我的显卡问题就更奇怪了..

【问题讨论】:

  • 我怀疑有一些竞争条件使得加载游戏变得非常困难。通常加载屏幕永远不会切换,或者当它切换时,角色不会出现并且没有交互工作(尽管点击似乎可以正确记录)。

标签: javascript three.js webgl


【解决方案1】:

这似乎不是你的 GPU 的问题,我自己加载了页面,页面本身没有明显的错误。然而,在 Firefox 开发工具上检查元素时,它会显示一些消息。这些是;

THREE.WebGLRenderer: Texture has been resized from (500x500) to (256x256). 

(其中一个纹理太大)

THREE.WebGLProgram: gl.getProgramInfoLog() C:\fakepath(190,23-154): warning X3571: pow(f, e) will not work for negative f, use abs(f) or conditionally handle negative values if you expect them 

(其中几个,但我不知道它指的是什么。)

Source map error: Error: request failed with status 404 Resource URL: https://ui-unicorn.co.uk/game-lesson-1/js/ifvisible.js Source Map URL: ifvisible.map

这个,我也不知道。

至于最初的错误,似乎 three.module.js 运行它自己的渲染调试器并标记了着色器的错误,所以我认为这意味着着色器管理光、阴影、模型等存在问题。

【讨论】:

  • 你能确认为你加载的 webgl 吗?并且没有因 THREE.WebGLRenderer: Context Lost 而失败。你指出的问题不应该让它失败,但老实说,如果项目为你加载,我假设它是我的显卡
  • 这些都是警告,关于源地图的警告在这种情况下没有意义。警告大多可以被忽略(尽管如果可能的话应该修复它们)。我得到的主要错误是Uncaught TypeError: mixer4 is undefined。由于这是一个错误,而不是警告,因此修复它可能也有助于修复其他问题
  • @user3112634 是的,它为我加载,有点慢,但可能是我正在使用的笔记本电脑或互联网。除了上述之外,我没有看到其他错误/警告。
  • @Ouroborus 我似乎无法重现该错误,请问您使用的是什么浏览器以及此错误是如何产生的
  • @user3112634 那是在 Firefox 中。 Chrome 显示另一个错误,Uncaught TypeError: Cannot read property 'update' of undefined at animate。总而言之,我第二次尝试时才能够成功加载游戏,此后一直没有。
猜你喜欢
  • 1970-01-01
  • 2021-09-27
  • 1970-01-01
  • 1970-01-01
  • 2021-05-19
  • 2012-11-05
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
相关资源
最近更新 更多