Uncaught TypeError: Failed to execute 'uniform2fv' on 'WebGL2RenderingContext': Overload resolution failed. at SingleUniform.setValueV2f [as setValue] (three.cjs:18071:1) at WebGLUniforms.upload (three.cjs:19001:1)
时间: 2024-03-05 14:52:19 浏览: 201
Vue报错:Uncaught TypeError: Cannot assign to read only property’exports‘ of object’#Object‘的解决方法
这个错误通常是由于使用的是WebGL1的渲染器,而ShaderMaterial中使用了WebGL2的API导致的。你需要将渲染器设置为WebGL2才能使用WebGL2的API。
修改渲染器的代码如下:
```javascript
const renderer = new THREE.WebGL2Renderer();
```
如果你已经在创建渲染器时指定了参数,则需要在参数对象中加入version属性,将其设置为2:
```javascript
const renderer = new THREE.WebGLRenderer({ version: 2 });
```
如果你仍然遇到这个错误,可能是因为你的浏览器不支持WebGL2。在这种情况下,你需要使用WebGL1的API,或者升级你的浏览器。
阅读全文