--
You received this message because you are subscribed to the Google Groups "WebGL Dev List" group.
To unsubscribe from this group and stop receiving emails from it, send an email to webgl-dev-lis...@googlegroups.com.
For more options, visit https://groups.google.com/d/optout.
| GPU0 | VENDOR = 0x1002, DEVICE= 0x682f |
| AMD switchable | true |
| GL_RENDERER | ANGLE (Intel(R) HD Graphics 4000 Direct3D9Ex vs_3_0 ps_3_0) |
| GL_VERSION | OpenGL ES 2.0 (ANGLE 2.1.0.c46018b8598d) |
Okay, finally had time to update to Window 10, and verified that the stencil issues occur on both Chrome and Chrome Canary on Windows 7 and Windows 10 (and likely Windows 8). No other browsers exhibit this bug, but I may have only tested the DX11 path on Firefox. I attached the test case to the Chromium bug earlier in this thread. We'd really like to see this fixed, as we recommend Chrome first.Unrelated to WebGL, but copy-pasted images from Photoshop to Chrome via DataTransfer are always downsampled by 2x in width and height in Chrome on Retina OSX. That is also a needed fix too. The exclusion of clipboard images and other content from the clipboard by most browsers, and in this case modification of existing data really make interop with the native app world a challenge. I've starred the appropriate issue on that.
Thanks Ken. I was hopeful seeing other people reporting an issue with pasting, but less hopeful after seeing that it was first reported Mar 25, 2014. Some of these fundaments seem like they need priority over adding support for new functionality (f.e. the <picture> element). Especially if web apps are going to truly complete with native apps, then they need to at least have access to the data needed for interop.
Some big remaining issues to web app development remain.1. Lack of anchor download in Safari and auto-opens blob with blob name and auto-opens exported zip files (unsuccessfully). There's a WebKit bug indicating this might get fixed soon, but then it's another wait for the next OSX release. Can finally override pinch-zoom gesture, but you have to be on 10.11.4.2. DataTransfer on Safari reports image/tiff from Photoshop, but there are no files to process. All images seem to be stripped. I don't know where to report this. Why is the clipboard filtering, and why was it a DOMString from getData in the first place. We've requested a lot of action on improving the clipboard transfer API, but the stakeholders don't seem to want to improve this.
3. DataTransfer on Firefox has no image types or files. There's a bug with a patch about to hit that will include png/jpg/gif there. Feels like browsers could transcode a lot more formats to help apps with interop.
So to get this back to WebGL related topics. I've been looking over WebGL 2, and it looks really good. I noticed a few missing pieces.A. I hope that WebGL 2 can still mix large depth buffers with smaller color targets. That avoids needed to switch out depth/stencil when you change an FBO. There was a comment about array textures, but I'm assuming the color targets all must match size, but the depth doesn't have to.
B. I noticed that WebGL 2 interface was missing gl.SRGB_ALPHA which you need for format/type for the most commonly used form of SRGB
C. Access to more shader types - TS, HS, CS
D. Compute
E. SSO - fundamentally changes how shaders interoperate and connect
F. Vertex Shader clip plane access - critical for single-card VR
G. index offset so you can use 16-bit indices
H. Chrome is missing depth-texture. Makes doing shadows pretty difficult. Firefox has this.
| EXT_color_buffer_float | |||
| EXT_disjoint_timer_query | |||
| EXT_texture_filter_anisotropic | |||
| OES_texture_float_linear | |||
| WEBGL_compressed_texture_s3tc | |||
| WEBGL_debug_renderer_info | |||
| WEBGL_debug_shaders | |||
| WEBGL_lose_context The webkit missing anchor download. https://bugs.webkit.org/show_bug.cgi?id=64580 Firefox not supporting images in transfer https://bugzilla.mozilla.org/show_bug.cgi?id=891247 Firefox not supporting pinch-zoom (Safari uses gesture). Easiest test is use Google Maps on Chrome vs. Firefox/Safari and it's really obvious. https://bugzilla.mozilla.org/show_bug.cgi?id=1052253 As far as mixed depth/stencil, I think you're misreading the DX11 text that was referenced. Mind that I can't validate off my DX11 engine. The text that was referenced in the DX spec was talking about render targets which are different from depth stencil. DX has always allowed mixed size depth/color, and I don't think that changed in DX10 or DX11. Even many consoles could alias/reuse the depth target across multiple color targets. This one is a big deal, since reusing depth is important. You can even mix depth renderbuffers and depth rendertextures with color buffers and textures, though the memory layout is very different. WebGL2 is crashing our WebGL1 app when enabled in Chrome. I'm a little concerned about users turning on the flag. Firefox doesn't break WebGL1 apps. I had an error about a float parameter before, but now it's this. | [.CommandBufferContext.Offscreen-MainThread-0x7fa22ae20300]GL ERROR :GL_INVALID_ENUM : glTexImage2D: <- error from previous GL command | 2Untitled:1 [.CommandBufferContext.Offscreen-MainThread-0x7fa22ae20300]GL ERROR :GL_INVALID_ENUM : glTexImage2D: |
Render targets must all be the same type of resource. If multisample antialiasing is used, all bound render targets and depth buffers must have the same sample counts.
When a buffer is used as a render target, depth-stencil testing and multiple render targets are not supported.
B. I noticed that WebGL 2 interface was missing gl.SRGB_ALPHA which you need for format/type for the most commonly used form of SRGB
G. index offset so you can use 16-bit indices
On Apr 23, 2016, at 11:45 AM, Kenneth Russell <k...@chromium.org> wrote:C. Access to more shader types - TS, HS, CSRecent investigation has indicated that there are some fundamental differences between how tessellation shaders work in OpenGL and how they work in Direct3D, so any API that's portable between the two backends is going to have to reconcile this. It does not seem tractable to simply compile OpenGL's tessellation shaders to run on Direct3D. For this reason getting compute shaders on the web is going to be the next focus.
On Apr 23, 2016, at 1:00 PM, Alecazam <al...@figma.com> wrote:I thought SRGB8_ALPHA8 was the sized format.
I appreciate a lot that you care about WebGL and WebGL2 enough to oversee its development and consistency. I'm pretty excited about just how prevalent WebGL1 has become (Edge, Safari has it enabled, etc).Chrome is missing WebGL_depth_texture on my laptop. I'm running webglreport.com on a Macbook Air 2012. The depth texture extension is present on WebGL1, but not in the WebGL2 extension list. These are the only WebGL2 reported extensions for this Intel HD 4000. Firefox does reports it, but seems to not be suppressing SRGB and other built-in extensions. Could be that too many extensions are filtered from WebGL 2 list on Chrome?
EXT_color_buffer_float EXT_disjoint_timer_query EXT_texture_filter_anisotropic OES_texture_float_linear WEBGL_compressed_texture_s3tc WEBGL_debug_renderer_info WEBGL_debug_shaders WEBGL_lose_context
The webkit missing anchor download.
https://bugs.webkit.org/show_bug.cgi?id=64580
Firefox not supporting images in transfer
https://bugzilla.mozilla.org/show_bug.cgi?id=891247
Firefox not supporting pinch-zoom (Safari uses gesture). Easiest test is use Google Maps on Chrome vs. Firefox/Safari and it's really obvious.
https://bugzilla.mozilla.org/show_bug.cgi?id=1052253
As far as mixed depth/stencil, I think you're misreading the DX11 text that was referenced. Mind that I can't validate off my DX11 engine. The text that was referenced in the DX spec was talking about render targets which are different from depth stencil. DX has always allowed mixed size depth/color, and I don't think that changed in DX10 or DX11. Even many consoles could alias/reuse the depth target across multiple color targets. This one is a big deal, since reusing depth is important. You can even mix depth renderbuffers and depth rendertextures with color buffers and textures, though the memory layout is very different.
WebGL2 is crashing our WebGL1 app when enabled in Chrome. I'm a little concerned about users turning on the flag. Firefox doesn't break WebGL1 apps. I had an error about a float parameter before, but now it's this.
[.CommandBufferContext.Offscreen-MainThread-0x7fa22ae20300]GL ERROR :GL_INVALID_ENUM : glTexImage2D: <- error from previous GL command 2Untitled:1 [.CommandBufferContext.Offscreen-MainThread-0x7fa22ae20300]GL ERROR :GL_INVALID_ENUM : glTexImage2D:
On Fri, Apr 22, 2016 at 8:32 PM, Alecazam <al...@figma.com> wrote:I appreciate a lot that you care about WebGL and WebGL2 enough to oversee its development and consistency. I'm pretty excited about just how prevalent WebGL1 has become (Edge, Safari has it enabled, etc).Chrome is missing WebGL_depth_texture on my laptop. I'm running webglreport.com on a Macbook Air 2012. The depth texture extension is present on WebGL1, but not in the WebGL2 extension list. These are the only WebGL2 reported extensions for this Intel HD 4000. Firefox does reports it, but seems to not be suppressing SRGB and other built-in extensions. Could be that too many extensions are filtered from WebGL 2 list on Chrome?I'd need to see about:gpu from your laptop to understand whether there's a blacklist entry preventing WEBGL_depth_texture from being exposed.
EXT_color_buffer_float EXT_disjoint_timer_query EXT_texture_filter_anisotropic OES_texture_float_linear WEBGL_compressed_texture_s3tc WEBGL_debug_renderer_info WEBGL_debug_shaders WEBGL_lose_context
The webkit missing anchor download.
https://bugs.webkit.org/show_bug.cgi?id=64580
Firefox not supporting images in transfer
https://bugzilla.mozilla.org/show_bug.cgi?id=891247
Firefox not supporting pinch-zoom (Safari uses gesture). Easiest test is use Google Maps on Chrome vs. Firefox/Safari and it's really obvious.
https://bugzilla.mozilla.org/show_bug.cgi?id=1052253
As far as mixed depth/stencil, I think you're misreading the DX11 text that was referenced. Mind that I can't validate off my DX11 engine. The text that was referenced in the DX spec was talking about render targets which are different from depth stencil. DX has always allowed mixed size depth/color, and I don't think that changed in DX10 or DX11. Even many consoles could alias/reuse the depth target across multiple color targets. This one is a big deal, since reusing depth is important. You can even mix depth renderbuffers and depth rendertextures with color buffers and textures, though the memory layout is very different.If this is a misunderstanding on the behalf of the WebGL working group then we'd like to lift this restriction. It would be helpful if you could help definitively prove this, since the restriction was informed by engineers from Microsoft who know the Direct3D API well.
Alec, an engineer from Microsoft highlighted the spec text introducing these restrictions and wrote a test case demonstrating that the restrictions as written are needed. I can't simply copy-paste the email but the restrictions need to stand in the WebGL 2.0 spec to keep it portable.
> I'd need to see about:gpu from your laptop to understand whether there's a blacklist entry preventing WEBGL_depth_texture from being exposed.Sent that off. Hope the case is helpful.Alec, an engineer from Microsoft highlighted the spec text introducing these restrictions and wrote a test case demonstrating that the restrictions as written are needed. I can't simply copy-paste the email but the restrictions need to stand in the WebGL 2.0 spec to keep it portable.If Microsoft says it can't be done, then it can't be done. My understanding was that you had a buffer, and multiple views on it. My last DX11 engine only stored a single view with each buffer, but it seemed possible to create multiple buffers. Always strange how abstract OpenGL gets away with being so flexible but DX doesn't, but DX tends to be a little better on performance. It's not super hard to workaround.Other WebGL1/2 oddities. I know these are also in ES2/ES3. Seems odd that glTexStorage2D can't handle compressed formats
, and glCompressedTexImage2D requires a dummy set of mips to create one level.
You can't resize texStorage2D, so one cannot use it for render targets or depth easily. Good old glTexImage2D takes null and does all that behind the scenes, but then you still have to retain the old code paths for it and handle all of the crazy mips for cubes/2D/3D/array textures.
Just reading your comments here.gl.compressedTexImage2D whether you allocate mips or not requires a dummy allocated buffer to be passed on each mip level allocated. You can pass null to gl.texImage2D, but not to this call. I seem to recall the same issue in es2, but it's still makes it harder for people to pre-allocate the DXT/PVRTC textures, and then upload to them later. Seems like WebGL could just assign an internal 0 sized buffer, so the caller doesn't have to.
gl.texStorage2D works for creating a render target, but then you can't resize it because of the immutability. So then you're back to texStorage2D if the target/depth are backing something like the window.
I was able to create depth textures in WebGL2. The issue was the format changes, and the removal of the extension on Chrome (but not on Firefox).
Would be good to list the depth combos on the WebGL 2 page - there are color format/type/internalFormats listed for everything else.