5 ms·
Though it looks awesome, It's spamming my console with WebGL errors: [.WebGLRenderingContext]GL ERROR :GL_INVALID_FRAMEBUFFER_OPERATION : glDrawArrays: fra
by KhalilK 12y ago
Though it looks awesome, It's spamming my console with WebGL errors:
[.WebGLRenderingContext]GL ERROR :GL_INVALID_FRAMEBUFFER_OPERATION : glDrawArrays: framebuffer incomplete (clear)
[.WebGLRenderingContext]GL ERROR :GL_INVALID_FRAMEBUFFER_OPERATION : glDrawArrays: framebuffer incomplete (check)
WebGL: too many errors, no more errors will be reported to the console for this context.
- haxiomic 12y agoI'm not getting these, what's the browser?
- KhalilK 12y agoChrome V38.0.2125.104 on 64-bit Ubuntu 14.04
- laurencei 12y agoI'm on the exact same Chrome version, but on Windows 7 - no issues here.
- exDM69 12y agoThe difference is the OpenGL implementation. On Windows, Chrome uses the ANGLE middleware to implement WebGL. It's a layer that implements the OpenGL ES 2 API on top of Direct3D 9. That solves quite a lot of driver quality issues (at the cost of some overhead). So the question is, which GPU/driver was being used on Linux.
- exDM69 12y agoWhat GPU/driver are you using? This looks like either a driver bug or some unsupported combination of pixel formats. Unfortunately, WebGL doesn't solve these compatibility issues that are inherent to OpenGL and running on a wide variety of hardware and drivers.
- KhalilK 12y agoI see. product: 2nd Generation Core Processor Family Integrated Graphics Controller vendor: Intel Corporation driver=i915
- exDM69 12y agoUnfortunately, that generation of Intel GPUs is known to be quite bad in performance and having very buggy OpenGL drivers. I don't know if that's the cause of the issue you're seeing but don't expect to run any fancy 3D on Linux with that GPU.
- zurn 12y agoIt is the same driver as the later Intel models. It is one of the very few drivers that are not blacklisted by Chrome on Linux, owing to its unbugginess.
- exDM69 12y agoI know, but that doesn't mean that there aren't bugs or missing features specific to that GPU model (hardware or software). But I can't be sure whether this particular issue is a driver bug or just an unsupported combination of pixel formats (FRAMEBUFFER_INCOMPLETE hints at that). WebGL spec requires certain of pixel formats to be supported but either the test case is using some combination that isn't guaranteed to be supported or the driver+hw combination doesn't actually support everything required by the spec. Intel has made huge improvements since the days of the i9xx series of GPUs. They were miserably bad from a programmer's standpoint.
- flohofwoe 12y agoWorks very well on my mid-2012 MBP in OSX 10.10 with a puny Intel HD4000 GPU! The framebuffer completeness check error is a result of some early confusion around the OES_texture_float WebGL/OpenGLES extension. Most browsers interpreted this as being able to both read from a floating point texture, as well as render to a floating point frame buffer. But some (mobile) GPUs can sample fp textures but not render to them. So later another extension was introduced to clean this up (WEBGL_color_buffer_float and others) which specifically handles rendering to fp render targets, while OES_texture_float is restricted to sampling textures. But this is not widely supported yet, and most desktop browsers still support rendering to fp render targets even they only expose the OES_texture_float extension in order to not break backwards compatibility. Because of this, some WebGL code which runs on desktop browsers breaks on some mobile devices even though the code 'properly' checks for extensions.