WebGL 2: Hardware Bugs, UBOs & Arrays

preview_player
Показать описание
Upload array data using Uniform Buffer Objects isn't hard, but it can lead to rendering bugs on some hardware. This video will step through the process of using UBOs and show you how to avoid any buggy renders, no matter what hardware your program is running on.

Other videos referenced in this tutorial:

You can find supplementary materials on this video series' GitHub page:

This series on WebGL 2 was produced for anyone who, like me, had major problems getting a firm understanding of WebGL's intermediate and advanced concepts. Every video is focused on a single concept. If I've done this well, you shouldn't really need to "get up to speed" before watching any of these videos. There are no external libraries. I'm not building up to a custom API or injecting any abstractions. And I don't expect you to have watched from episode #1 to get "how I'm doing things with WebGL."

Complete playlist:

Videos:

I really hope someone out there will find this series helpful.
Рекомендации по теме
Комментарии
Автор

Good mention about changing vec3s to vec4s when using std140 :)

syntaxed
Автор

Awh man. Finally, an active tutorial about WebGL. Thanks a lot Andrew for your effort creating these

babahgee
Автор

Wow, what a scary collection of bugs! Thanks for pointing them out!

dominicprior
Автор

Thank you for the videos, they are super informative 😎. Thanks to you I started a project and also stumbled upon weird webgl2 behavior (maybe bug): I did some color calculation in fragment shader and in some situation an example output color was (0, 5, 0). On my PC the rendered color was clamped to green as (0, 1, 0) but my phone rendered white. Took me a few hours to figure that out 🙃. You could do a video about gotchas like that or performance tips.

jakubwegrzyn
Автор

Another option to recover the expressiveness is to use macros, I think... e.g. #define innerConeAngle extras.x

I think that would work... What do you think?

DiThi