pixijs icon indicating copy to clipboard operation
pixijs copied to clipboard

Bug: TypeError: Failed to execute 'shaderSource' on 'WebGL2RenderingContext': parameter 1 is not of type 'WebGLShader'

Open erikdubbelboer opened this issue 1 year ago • 7 comments

Current Behavior

TypeError: Failed to execute 'shaderSource' on 'WebGL2RenderingContext': parameter 1 is not of type 'WebGLShader'.
 at compileShader (https://7e485857-686e-47f6-9588-1dacf536421b.poki-gdn.com/d113fd3b-6791-4b1f-bf1c-968475b2a24e/WebGLRenderer-48e6939f.js:1470:6)
 at generateProgram (https://7e485857-686e-47f6-9588-1dacf536421b.poki-gdn.com/d113fd3b-6791-4b1f-bf1c-968475b2a24e/WebGLRenderer-48e6939f.js:1704:24)
 at GlShaderSystem._createProgramData (https://7e485857-686e-47f6-9588-1dacf536421b.poki-gdn.com/d113fd3b-6791-4b1f-bf1c-968475b2a24e/WebGLRenderer-48e6939f.js:1839:34)
 at GlShaderSystem._getProgramData (https://7e485857-686e-47f6-9588-1dacf536421b.poki-gdn.com/d113fd3b-6791-4b1f-bf1c-968475b2a24e/WebGLRenderer-48e6939f.js:1835:56)
 at GlShaderSystem._setProgram (https://7e485857-686e-47f6-9588-1dacf536421b.poki-gdn.com/d113fd3b-6791-4b1f-bf1c-968475b2a24e/WebGLRenderer-48e6939f.js:1826:30)
 at GlShaderSystem.bind (https://7e485857-686e-47f6-9588-1dacf536421b.poki-gdn.com/d113fd3b-6791-4b1f-bf1c-968475b2a24e/WebGLRenderer-48e6939f.js:1771:10)
 at GlEncoderSystem.draw (https://7e485857-686e-47f6-9588-1dacf536421b.poki-gdn.com/d113fd3b-6791-4b1f-bf1c-968475b2a24e/WebGLRenderer-48e6939f.js:971:21)
 at FilterSystem.applyFilter (https://7e485857-686e-47f6-9588-1dacf536421b.poki-gdn.com/d113fd3b-6791-4b1f-bf1c-968475b2a24e/init-8b4cff62.js:529:22)
 at DisplacementFilter.apply (https://7e485857-686e-47f6-9588-1dacf536421b.poki-gdn.com/d113fd3b-6791-4b1f-bf1c-968475b2a24e/index.js:9394:19)
 at FilterSystem.pop (https://7e485857-686e-47f6-9588-1dacf536421b.poki-gdn.com/d113fd3b-6791-4b1f-bf1c-968475b2a24e/init-8b4cff62.js:404:18)

Expected Behavior

Not to crash.

Steps to Reproduce

Unknown, haven't been able to reproduce. Affects around 70 players per day for this game.

Environment

  • pixi.js version: 8.0.4
  • Browser & Version: Chrome up to 123
  • OS & Version: Any mobile or tablet OS
  • Running Example: https://poki.com/en/g/silly-sky

Possible Solution

No response

Additional Information

No response

erikdubbelboer avatar Mar 31 '24 08:03 erikdubbelboer

hey there! do you have any info on the device / os for this one? thanks!

GoodBoyDigital avatar Apr 05 '24 11:04 GoodBoyDigital

We're getting this too. PIXI 8.1.1 Device is Alcatel 1B (2020) Android 10

TypeError: Failed to execute 'shaderSource' on 'WebGL2RenderingContext': parameter 1 is not of type 'WebGLShader'.
  at compileShader (../node_modules/pixi.js/src/rendering/renderers/gl/shader/program/compileShader.ts:12:8)
  at generateProgram (../node_modules/pixi.js/src/rendering/renderers/gl/shader/program/generateProgram.ts:22:26)
  at GlShaderSystem._createProgramData (../node_modules/pixi.js/src/rendering/renderers/gl/shader/GlShaderSystem.ts:190:38)
  at GlShaderSystem._getProgramData (../node_modules/pixi.js/src/rendering/renderers/gl/shader/GlShaderSystem.ts:183:60)
  at generateShaderSyncCode (../node_modules/pixi.js/src/rendering/renderers/gl/shader/GenerateShaderSyncCode.ts:38:38)
image

tzachyrm avatar May 12 '24 06:05 tzachyrm

Searching online, it seems like this error can often accompany a context loss in WebGL. This can happen for a number of reasons, but perhaps out-of-memory? Does anyone have this device mentioned above that could confirm?

bigtimebuddy avatar May 12 '24 10:05 bigtimebuddy

It's indeed caused by a context loss. I can trigger it one in a while on https://dubbelboer.com/sillysky/ by running this line in the console:

document.getElementsByTagName('canvas')[0].getContext('webgl2').getExtension('WEBGL_lose_context').loseContext();

erikdubbelboer avatar May 12 '24 13:05 erikdubbelboer

Hello

i have the same probleme here i try to use pixi js, video render cause problem this demo work fine on pixijs.com : https://pixijs.com/8.x/examples/sprite/video but locally with nextjs i have issue :

image

aidevelopercode avatar Jul 09 '24 14:07 aidevelopercode

Hello devs, i fixed the pobleme by reset chrom flags, go to chrome://flags/ and reset to defaut params.

i think it's a problem with an experimental chome parameters

aidevelopercode avatar Jul 09 '24 14:07 aidevelopercode

Also facing this problem, the website on iOS keeps reloading and leads to "A problem repeatedly occurred". Is there any proper way to handle context lost using pixi@v8?

rnike avatar Sep 29 '24 08:09 rnike