pcww / builder

0 stars 0 forks source link

ThreeJS issue with "blacklisted graphics cards" #57

Open brian-slate opened 7 years ago

brian-slate commented 7 years ago

Issue with Macbooks with Intel HD Graphics 3000 cards.

app.js:58335 THREE.WebGLRenderer 79
app.js:58552 THREE.WebGLRenderer: Error creating WebGL context.THREE.WebGLRenderer @ app.js:58552
app.js:61524 Uncaught TypeError: Cannot read property 'getExtension' of null
favicon.ico:1 GET http://builder.pinecliffwoodworks.com/favicon.ico 500 (Internal Server Error)

screen shot 2016-10-08 at 7 35 39 pm

brian-slate commented 7 years ago

More context - looks like older graphics cards (this was my Dad's older 13" macbook) are blacklisted in chrome. Something about them testing crashrates and disabling webgl for those cards. You can override the blacklist by visiting chrome://flags in Chrome. Note that this doesnt seem to be an issue with Safari and Firefox (in my immediate testing).

screenshot 2016-10-11 21 45 27

voltaaage commented 7 years ago

https://github.com/mrdoob/three.js/issues/4927

Not sure what the resolution would be

Prozi commented 7 years ago

Maybe fallback on CanvasRenderer in such case?

brian-slate commented 7 years ago

Is that a threejs option?

On Wed, Nov 2, 2016 at 7:45 PM, Jacek Pietal notifications@github.com wrote:

Maybe fallback on CanvasRenderer in such case?

— You are receiving this because you authored the thread. Reply to this email directly, view it on GitHub https://github.com/pcww/builder/issues/57#issuecomment-258041892, or mute the thread https://github.com/notifications/unsubscribe-auth/AAwxcMqCT4mD23-eCT1U5uk-n7I9NaKLks5q6S6ogaJpZM4KR3YE .

Prozi commented 7 years ago

I havent tested it but it looks like it should work, maybe wrap in a try catch and then https://threejs.org/docs/api/renderers/CanvasRenderer.html

Also, I experienced same error on Android when going to http://mini.ninja/space/ (not on normal browser - then it worked fine) and when I split the

draw loop on server message loop update

the problem resolved. Maybe this happens because of too many stacked draw calls??