ndesmic

ndesmic @ndesmic

About: I like to make fun web things from scratch. Ideally build-less, framework-less, infrastructure-less and free from the annoyances of my day job.

Joined:
Sep 30, 2020

ndesmic
articles - 94 total

WebGPU Engine from Scratch Part 11 - 1: Visual Testing

Note: This chapter was split into 2 parts because the second half deals with a different topic I...

Learn More 2 0Oct 13

WebGPU Engine from Scratch Part 10: Markup Language and Scene Graph

One thing that is becoming really annoying while doing manual tests is that I have to setup scenes. ...

Learn More 2 0Oct 6

WebGPU Engine from Scratch Part 9: Shadow Maps

This was a topic I wanted to get to for a while. There's 2 common ways (but other less common ways)...

Learn More 0 1Sep 15

WebGPU Engine from Scratch Part 8: Physically Based Lighting (PBR)

I wasn't expecting to do this so soon but the whole roughness texture stuff really got to me so I...

Learn More 2 0Sep 8

WebGPU Engine from Scratch Part 7: Specular Lighting

Since we added diffuse lighting we might as well add specular too. The teapot is a marble texture...

Learn More 2 0Sep 1

WebGPU Engine from Scratch Part 6: Diffuse Lighting

The scene is bland and could use some lighting so let's implement that. First we start with the...

Learn More 2 0Aug 25

WebGPU Engine from Scratch Part 5: More Pipeline Improvements

I was hoping to get to new features but it seems like there was just too much I wanted to fix up in...

Learn More 2 0Aug 18

WebGPU Engine from Scratch Part 4: Updating the Pipeline

For this chapter I wanted to take a pause. The code before was spelled out but could be a little...

Learn More 1 0Aug 11

WebGPU Engine from Scratch Part 3: Textures

Next let's explore textures. We'll try to recreate the globe from the WebGL chapter. The first...

Learn More 2 0Jul 28

WebGPU Engine from Scratch Part 2: Geometry

For the next part I wanted to improve how I generate meshes. From WebGL we generated objects with...

Learn More 2 0Jul 14

WebGPU Engine from Scratch 1: Basic Rendering

After putting this project in storage for a while, WebGPU is now at a place where I feel I can really...

Learn More 1 0Jul 8

Building a JS pytorch clone: Performance investigation

One thing that we haven't done is some benchmarking. For this I though I'd start with a simple...

Learn More 0 0Mar 24

Building a JS pytorch clone with WebGPU

Last time I created a simple autograd. It's interesting but also not super usable. This is because...

Learn More 0 0Mar 17

Building a JS pytorch clone with CUDA

I had actually wanted part 2 to be a WebGPU implementation and started poking at the CUDA version...

Learn More 0 0Mar 3

Building a JS pytorch clone (autograd)

One of the things I'd like to get a little more into is machine learning. The sticking point I...

Learn More 1 0Feb 24

Creating debug text in WGSL

When dealing with code on the GPU one of the more difficult things is that you have very few ways to...

Learn More 2 0Oct 11 '24

Writing a toy ECMAScript parser

Last time we wrote a simple tokenizer and tried to make a subset of the most used javascript tokens. ...

Learn More 14 0Dec 28 '23

Writing a tokenizer

Several projects I'm working on require parsing. While there are goto packages that do this work...

Learn More 40 2Dec 18 '23

React Static Site Generation from scratch

So far we have a server-rendered react application but sometimes it's nice to just have some flat...

Learn More 9 0Dec 6 '23

React SSR web-server from scratch

Poking around with some web frameworks like Next and Astro I was posed the question of how hard is...

Learn More 14 0Nov 21 '23

Fast Matrix Math in JS 3: WebGL/WebGPU

Last time we looked at WASM and the interesting SIMD capability. One question we could ask was...

Learn More 9 0Jun 13 '23

Fast Matrix Math in JS 2: WASM

Fast Matrix Math 2 Last time we looked a number of ways to add two matrices starting from...

Learn More 11 1May 23 '23

Fast Matrix Math in JS

There's a lot of ways to represent matrix math in JS. Some are readable and some are fast. I wanted...

Learn More 21 1Apr 3 '23

Building a minimal web dev server with Deno

Writing pure client-side apps is good in theory but you still need a local server as file-based urls...

Learn More 9 0Mar 14 '23

Building a minimal WASI polyfill for browsers

While researching some WASM/WASI stuff I was trying to get my app to run in a variety of environments...

Learn More 8 5Feb 28 '23

Playing with Image Convolution Filters

Last episode, I explored different ways to change a bump map into a normal map and we touched a bit...

Learn More 9 0Jan 3 '23

WebGL Engine from Scratch 15: Normal Maps

Last time we went through the process of using bump-maps. Using normal maps is very similar. So...

Learn More 3 0Dec 28 '22

WebGL Engine from Scratch 14: Bump Maps and Simple Animation

I remember back in the PS2, Gamecube, Xbox days gaming enthusiasts were crazy about bump-mapping and...

Learn More 3 0Dec 19 '22

WebGL Engine from Scratch 13: OBJ Format

One of the biggest limitations that the engine has right now is that it can only generate geometry...

Learn More 0 2Sep 28 '22

Writing a simple browser zip file decompressor with CompressionStreams

Zips are a pretty common and ubiquitous format for compression. You've probably gotten them as...

Learn More 13 0Sep 20 '22