▲ | imadr 21 hours ago | |
I wrote everything from scratch in javascript and webgl. You can check the entire source code of the article here: https://imadr.me/pbr/main.js Beaware though, it's a 8000+ lines of code js file that is very badly organized, it's by no mean a reference for good quality code. However I find writing everything by hand easier in the long term than using already existing libraries for example. The code includes all the math functions, mesh primitive generation, shaders and even a sketchy text renderer using sdf fonts. If I had to make it again I would use typescript, type errors were the biggest source of bugs. | ||
▲ | amitp 5 hours ago | parent | next [-] | |
Love it! For typescript, esbuild has been my favorite tool for turning typescript into browser-readable js, and then I check type errors separately using the ide plugin. | ||
▲ | Cthulhu_ 11 hours ago | parent | prev [-] | |
How long did it take you to write that code / this article? I'm a big fan of zero-dependency code (or at the very least with any dependency vendored/hosted locally), it means this page will still work and look as it does today in 25 years time. I don't know if TS runs natively in browsers yet, but v8 / NodeJS does support it (just strips off Typescript specific tokens). |