💡 I explore ways to make the web more fun and performant for everyone.
#WebGL #WebGPU #JS #CSS
But all that is interesting, I will think about it !
3/3
But all that is interesting, I will think about it !
3/3
The idea of sharing functions for both apis is interesting but I’m not sure how to handle their differences.
I would like to keep it low-level, the focus is on writing shaders
2/3
The idea of sharing functions for both apis is interesting but I’m not sure how to handle their differences.
I would like to keep it low-level, the focus is on writing shaders
2/3
- in webGPU we can write fragment and vertex shaders in one string
- many things become a kind of « buffer »
- compute shaders, pipelines, bind groups etc don’t exist in webgl
1/3
- in webGPU we can write fragment and vertex shaders in one string
- many things become a kind of « buffer »
- compute shaders, pipelines, bind groups etc don’t exist in webgl
1/3
But since they are low level and the webGPU API is quite different, I don’t think the same functions will work for both. So either it will be another lib, or I use 2 prefixes (glCanvas / gpuCanvas), which seems consistent
But since they are low level and the webGPU API is quite different, I don’t think the same functions will work for both. So either it will be another lib, or I use 2 prefixes (glCanvas / gpuCanvas), which seems consistent
I also thought about a « gl » prefix, like glRenderPass(). It’s shorter and allow to separate WebGL related stuff from JS utils. I think I like this one.
What do you think ?
I also thought about a « gl » prefix, like glRenderPass(). It’s shorter and allow to separate WebGL related stuff from JS utils. I think I like this one.
What do you think ?
I also thought about a « gl » prefix, like glRenderPass(). It’s shorter and allow to separate WebGL related stuff from JS utils. I think I like this one.
What do you think ?
I can't remove the "use" because the functions would have the name of the object they return. e.g, "const compositor = compositor(...)" is not possible.
And I don't want to prefix "createXXX" on all functions.
So yeah, I would appreciate some feedback!
I can't remove the "use" because the functions would have the name of the object they return. e.g, "const compositor = compositor(...)" is not possible.
And I don't want to prefix "createXXX" on all functions.
So yeah, I would appreciate some feedback!
I'm not sure if it would be a big issue though.
I'm not sure if it would be a big issue though.
Anyway thank you for your valuable feedback 🙏🏻
Anyway thank you for your valuable feedback 🙏🏻
I am just struggling to make my bloom effect work on a transparent background so I was wondering how (if) threejs handles that if it uses straight alpha
I am just struggling to make my bloom effect work on a transparent background so I was wondering how (if) threejs handles that if it uses straight alpha
For my lib I think I'm going to assume premultiplied alpha everywhere, but I would be glad to get some feedback on this
For my lib I think I'm going to assume premultiplied alpha everywhere, but I would be glad to get some feedback on this
Yes I’m just starting to understand the use of premultiplied alpha. I realized I might have some bugs related to it in the lib I am building.
So I just need to figure out where and when to do the conversion between straight and premultiplied alpha, and properly use gl.blendFunc()
Yes I’m just starting to understand the use of premultiplied alpha. I realized I might have some bugs related to it in the lib I am building.
So I just need to figure out where and when to do the conversion between straight and premultiplied alpha, and properly use gl.blendFunc()