!MFogdGJfnZLrDmgkBN:matrix.org

WebGPU

351 Members
The future of graphics and compute on the Web! Related rooms: https://matrix.to/#/#webgraphics:matrix.org35 Servers

Load older messages


SenderMessageTime
13 May 2022
@ghadeer.abousaleh:matrix.orgGhadeerI suppose I could do that if it's fine for non-members to file issues.03:21:12
@jasperrlz:matrix.orgjasperrlzIt is03:40:12
@ghadeer.abousaleh:matrix.orgGhadeerDone! šŸ˜…05:03:28
@jgilbert:mozilla.orgKelsey (jgilbert)We have this section so far: https://www.w3.org/TR/WGSL/#floating-point-evaluation05:32:01
@jgilbert:mozilla.orgKelsey (jgilbert)"Implementations may ignore the sign of a zero. That is, a zero with a positive sign may behave like a zero a with a negative sign, and vice versa." Is that sufficient?05:32:34
@jgilbert:mozilla.orgKelsey (jgilbert)it might be useful to specifically call this out, but I think that covers is05:32:55
@jgilbert:mozilla.orgKelsey (jgilbert) * it might be useful to specifically call this out, but I think that covers it05:32:57
@ghadeer.abousaleh:matrix.orgGhadeer Kelsey (jgilbert): Indeed! I must've overlooked that section. Maybe a link to that section from the built-in functions section or from the floating point types section would have been helpful. I'll give it another reading pass tomorrow and maybe close the issue I created. Thanks for pointing this out! 05:55:06
14 May 2022
@slimsag:matrix.orgslimsag

We noticed at https://gpuweb.github.io/gpuweb/wgsl/#array-layout-examples there is an example "EXAMPLE: Runtime-sized array layout examples"

It has this line at the end:

var<uniform> directions: array<vec3<f32>>;

Which seems to suggest runtime-sized uniform arrays are possible. But at least with Dawn this does not pass validation:

Parser: :4:36 error: runtime-sized arrays can only be used in the <storage> storage class
@binding(0) @group(0) var<uniform> ubos : array<vec3<f32>>;
                                   ^^^^

Is the spec wrong here? Or is something else going on and this should be possible?

21:19:57
@slimsag:matrix.orgslimsag *

We noticed at https://gpuweb.github.io/gpuweb/wgsl/#array-layout-examples there is "EXAMPLE: Runtime-sized array layout examples" which has this line at the end:

var<uniform> directions: array<vec3<f32>>;

Which seems to suggest runtime-sized uniform arrays are possible. But at least with Dawn this does not pass validation:

Parser: :4:36 error: runtime-sized arrays can only be used in the <storage> storage class
@binding(0) @group(0) var<uniform> ubos : array<vec3<f32>>;
                                   ^^^^

Is the spec wrong here? Or is something else going on and this should be possible?

21:20:19
@slimsag:matrix.orgslimsag *

We noticed at https://gpuweb.github.io/gpuweb/wgsl/#array-layout-examples there is "EXAMPLE: Runtime-sized array layout examples" which has this line at the end:

var<uniform> directions: array<vec3<f32>>;

Which seems to suggest runtime-sized uniform arrays are possible. But at least with Dawn this does not pass validation:

Parser: :4:36 error: runtime-sized arrays can only be used in the <storage> storage class
@binding(0) @group(0) var<uniform> ubos : array<vec3<f32>>;
                                   ^^^^

Is the spec wrong here? Or it should indeed be possible and maybe a Dawn bug or my Dawn version isn't recent enough?

21:21:31
@kangz:matrix.orgKangzthe example is wrong. uniform variables can't be unsized arrays22:37:23
16 May 2022
@idahotokens:matrix.orgidahotokens joined the room.11:12:23
@idahotokens:matrix.orgidahotokens left the room.16:31:47
17 May 2022
@fsctl:matrix.orgfsctl joined the room.04:46:59
@micahscopes:matrix.orgmicahscopes
In reply to @tojiro:matrix.org
Batching your primitives into a single buffer can be effective too, but will probably help the most once WebGPU has things like multidraw (which is a feature we hope to add after the core featureset is shipped.)
is it likely that the WebGPU multidraw feature will look similar to the one in WebGL2?
05:59:15
@cwfitzgerald:matrix.orgcwfitzgeraldI would expect webgpu's multi-draw feature to be indirect 06:15:59
@boundry:matrix.orgāˆ‚S = cā„“(S) āˆ© cā„“(X \ S) changed their profile picture.10:47:58
@kainino:matrix.orgkaininoSame, but we also may have both, we'll see15:41:08
@jasperrlz:matrix.orgjasperrlzWas anybody effectively able to use multi-draw in WebGL? It seems like a thing where if you have multi-draw, you probably just want to rearrange your index buffer and do it as a single draw, if you can. Or use instancing15:43:49
@jasperrlz:matrix.orgjasperrlzAnd you still don't have BaseVertex because GLES (sigh), so for drawing large objects, you need to rebind the vertex buffer in between chunks.15:45:40
@micahscopes:matrix.orgmicahscopes
In reply to @jasperrlz:matrix.org
Was anybody effectively able to use multi-draw in WebGL? It seems like a thing where if you have multi-draw, you probably just want to rearrange your index buffer and do it as a single draw, if you can. Or use instancing
I could use it. I'm doing this emulated dynamic tessellation thing and want to draw multiple different sections of the instance buffer for different sections of the index buffer
16:39:01
@micahscopes:matrix.orgmicahscopes
In reply to @jasperrlz:matrix.org
And you still don't have BaseVertex because GLES (sigh), so for drawing large objects, you need to rebind the vertex buffer in between chunks.
also there's this: https://www.khronos.org/registry/webgl/extensions/WEBGL_draw_instanced_base_vertex_base_instance/
16:40:23
@micahscopes:matrix.orgmicahscopesit's still a draft extension but I'm gonna use it anyway!16:41:05
@micahscopes:matrix.orgmicahscopes
In reply to @jasperrlz:matrix.org
And you still don't have BaseVertex because GLES (sigh), so for drawing large objects, you need to rebind the vertex buffer in between chunks.
* also there's this: https://www.khronos.org/registry/webgl/extensions/WEBGL_draw_instanced_base_vertex_base_instance/ along with the multi_draw version: WEBGL_multi_draw_instanced_base_vertex_base_instance
16:41:56
@micahscopes:matrix.orgmicahscopes * also there's this: https://www.khronos.org/registry/webgl/extensions/WEBGL_draw_instanced_base_vertex_base_instance/ along with the multi_draw version WEBGL\_multi\_draw\_instanced\_base\_vertex\_base\_instance 16:42:09
@micahscopes:matrix.orgmicahscopes * also there's this: https://www.khronos.org/registry/webgl/extensions/WEBGL_draw_instanced_base_vertex_base_instance/ along with the multi_draw version WEBGL_multi_draw_instanced_base_vertex_base_instance 16:42:21
@jasperrlz:matrix.orgjasperrlzOh interesting, I didn't realize there was an extension for that!16:42:38
@jasperrlz:matrix.orgjasperrlzI think MDI + bindless is the future, but it will take a bit for WebGPU to catch up to that16:43:03
@naipofo:matrix.orgnaipofo joined the room.20:33:50

There are no newer messages yet.


Back to Room List