The scene is bland and could use some lighting so let's implement that. First we start with the...
I was hoping to get to new features but it seems like there was just too much I wanted to fix up in...
For this chapter I wanted to take a pause. The code before was spelled out but could be a little...
Next let's explore textures. We'll try to recreate the globe from the WebGL chapter. The first...
For the next part I wanted to improve how I generate meshes. From WebGL we generated objects with...
After putting this project in storage for a while, WebGPU is now at a place where I feel I can really...
One thing that we haven't done is some benchmarking. For this I though I'd start with a simple...
Last time I created a simple autograd. It's interesting but also not super usable. This is because...
I had actually wanted part 2 to be a WebGPU implementation and started poking at the CUDA version...
One of the things I'd like to get a little more into is machine learning. The sticking point I...
When dealing with code on the GPU one of the more difficult things is that you have very few ways to...
Last time we wrote a simple tokenizer and tried to make a subset of the most used javascript tokens. ...
Several projects I'm working on require parsing. While there are goto packages that do this work...
So far we have a server-rendered react application but sometimes it's nice to just have some flat...
Poking around with some web frameworks like Next and Astro I was posed the question of how hard is...
Last time we looked at WASM and the interesting SIMD capability. One question we could ask was...
Fast Matrix Math 2 Last time we looked a number of ways to add two matrices starting from...
There's a lot of ways to represent matrix math in JS. Some are readable and some are fast. I wanted...
Writing pure client-side apps is good in theory but you still need a local server as file-based urls...
While researching some WASM/WASI stuff I was trying to get my app to run in a variety of environments...
Last episode, I explored different ways to change a bump map into a normal map and we touched a bit...
Last time we went through the process of using bump-maps. Using normal maps is very similar. So...
I remember back in the PS2, Gamecube, Xbox days gaming enthusiasts were crazy about bump-mapping and...
One of the biggest limitations that the engine has right now is that it can only generate geometry...
Zips are a pretty common and ubiquitous format for compression. You've probably gotten them as...
I fell down a rabbit hole lately into the world of vTubers. The concept actually isn't too weird,...
I ran into an interesting post on the WICG (the official place for nobodies to propose web features)...
The next thing I'd like to add to our basic engine is some environment. That is, a background. In...
So I made a bit of mistake before by thinking that I could just apply the model space transformation...
So far we can create spheres and planes. We want to extend this to triangles so we can start using...