No emscripten workaround needed for me, thanks :) The fix is in Canary now, and while the Oryol samples page has WebGL2 enabled, the default config when building for HTML5 is still WebGL1, WebGL2 must be opted in with a cmake option / build config.
I think Chrome hadn't wired up the srcOffset parameter at all, and the WebGL2 conformance suit didn't have tests for this case that's why it fell under the table. Both things should be fixed now. Cheers, -Floh. Am Mittwoch, 26. April 2017 09:54:13 UTC+2 schrieb jj: > > Ouch :/ > > We had to work around these new entry points already for Chrome 57 where > they did not implement the new garbage free functions, see > https://github.com/kripken/emscripten/pull/4945. That PR added a Chrome > specific workaround for those functions that exist both in WebGL 1 and > WebGL 2 and just got the new garbage free form in WebGL 2. What makes > clearBufferfv() special is that that function does not exist at all in > WebGL 1, but that is a WebGL 2 only function, and there is only a garbage > free signature that exists for that funcition. The signature for that in > https://www.khronos.org/registry/webgl/specs/latest/2.0/ reads > > void clearBufferfv(GLenum buffer, GLint drawbuffer, Float32List values, > optional GLuint srcOffset = 0); > > so it looks like Chrome forgot to implement the last optional parameter > and that is getting ignored. > > I could add workarounds for the WebGL 2 specific entry points as well for > Chrome, if that is important to you? If I read the bug correctly, the fix > will ship once Chrome 60 reaches stable? Chrome 58 was released on April > 19th, so assuming the 6 week release cadence will hold, Chrome 60 release > date will be around July 12th if we wanted to wait it out. How urgent is > this for you? > > > > 2017-04-11 20:19 GMT+03:00 Floh <[email protected] <javascript:>>: > >> Just a heads-up in case you run into the same problem, and scratch your >> head for days like I did :) >> >> It looks like Chrome currently ignores the optional 'offset' parameter >> when WebGL2Context.clearBufferfv() is called with a Float32Array. This is >> unusual in normal JS code, but emscripten uses this call variant (it passes >> the global heap Float32Array and an offset into that the start of the 4 >> color floats). >> >> The details are here: >> >> https://bugs.chromium.org/p/chromium/issues/detail?id=708730 >> >> Hopefully it will be fixed soon :) >> -Floh. >> >> -- >> You received this message because you are subscribed to the Google Groups >> "emscripten-discuss" group. >> To unsubscribe from this group and stop receiving emails from it, send an >> email to [email protected] <javascript:>. >> For more options, visit https://groups.google.com/d/optout. >> > > -- You received this message because you are subscribed to the Google Groups "emscripten-discuss" group. To unsubscribe from this group and stop receiving emails from it, send an email to [email protected]. For more options, visit https://groups.google.com/d/optout.
