WebGL 2.0 compatibility is rising, so we may benefit.
One obvious benefit would be it's support for texture arrays or 3D textures, which would enable us to do a spatial controlled timeshifting filter.
Using more then one render output buffer can be used internally by some filters for better performance, and may be exposed in the form of multiple output filters, that would push one or more results on the stack.
-If it is possible to render to compressed textures, those could be used for larger buffers, eg. to raise the delay the timeshift effect can provide. Not clear if it is possible.
-User ArrayBufferObjects where possible may provide some speed up (eg. like for the mesh_displacement filter)
-Several extensions are obligatory now, so we could skip checks.
-Texture size is implicitely available in GLSL, so we get rid of several dx,dy uniforms.
Before implementing, get a sample of currently usable platforms if they are WebGL 2.0 compatible. We won't throw out too many systems again.
Experimental support in 92920d73403d2f11288d9d08f02c0dd62c2550f3 . However as https://caniuse.com/#search=webgl2 states 60% support in the wild (mostly desktop-only), let's wait a little.
WebGL 2.0 compatibility is rising, so we may benefit.
timeshift
effect can provide. Not clear if it is possible. -User ArrayBufferObjects where possible may provide some speed up (eg. like for themesh_displacement
filter) -Several extensions are obligatory now, so we could skip checks. -Texture size is implicitely available in GLSL, so we get rid of severaldx
,dy
uniforms.Before implementing, get a sample of currently usable platforms if they are WebGL 2.0 compatible. We won't throw out too many systems again.