After getting all our triangles on the screen, we did some off-screen refactoring to make it easier to re-use our instanced rendering code for more than just the particletoy tool. Tonight, we walk through our new implementation, which lets us bind our shader attributes dynamically, and requires less boilerplate to get particles on the screen.
However…our refactor wasn’t quite working by stream time, and we spent the remainder of this session debugging our new changes. We stepped through our entire particle rendering code in Chrome’s debugger, and manage to fix a few unrelated bugs on main! But at the end of the stream, we don’t quite have it working.
After recording, we found that this small change to Renderer3D.ts was the fix for ALL the issues we saw in stream https://github.com/jeffanddom/manchester/pull/72/commits/de43913582858641ea0a3e362850a091e88749cc. Sometimes you get the bear, and sometimes the bear gets you.
Notes/highlights
- Our vaccine tech has advanced quite a bit in the last year, and it’s extremely cool that we might be able to vaccinate against the malaria parasite with mRNA as well! https://blogs.sciencemag.org/pipeline/archives/2021/03/01/a-malaria-vaccine-candidate
- Not quite Sicilian style, Detroit style pizza is the new trend in fast-food pizza places. Who doesn’t love a rectangular slice? https://en.wikipedia.org/wiki/Detroit-style_pizza
- If you need a CSS font rule to use system fonts on EVERY operating system, this snippet is pretty great for covering everything from Windows to GNOME https://css-tricks.com/snippets/css/system-font-stack/
- Post-stream, we found webgl-debug.js, which helped us identify a critical missing attribute in the render pipeline https://www.khronos.org/webgl/wiki/Debugging