4 ms·
It's honestly super fun to go from zero to one with rendering just because it opens your eyes to how that second processor on your machine works. Writing verte
by chairmanwow1 6y ago
It's honestly super fun to go from zero to one with rendering just because it opens your eyes to how that second processor on your machine works.
Writing vertex and fragment shaders blew my mind the first time I did it. "Wait, this code will be run for EACH PIXEL ON THE SCREEN?" It's obvious in principle, but the actual implementation felt awesome to experience first-hand. Like the feeling of accomplishment that you get in re-deriving a famous theorem yourself. It's not groundbreaking or novel, but it unlocks a much deeper understanding for why we need GPUs at all.
You can take a look at the humble repo I used to both learn C++ and explore 3D rendering [1]. If by some chance you are interested in learning more about how this stuff works, I highly encourage you to check out TheCherno's youtube channel [2]. I'm not a huge fan of his newer stuff (Hazel engine), but his older series implemented 3D graphics from scratch in Java. Taught me a huge amount about how this stuff works and really ignited my interest in programming.
[1] https://github.com/TimelyToga/tlotk/tree/master/src/engine/graphics https://github.com/TimelyToga/tlotk/tree/master/src/engine/g...
[2] https://www.youtube.com/watch?v=iH1xpfOBN6M&list=PL656DADE0DA25ADBB&ab_channel=TheCherno https://www.youtube.com/watch?v=iH1xpfOBN6M&list=PL656DADE0D...
- winter_blue 6y agoThe github repo you linked (https://github.com/TimelyToga/tlotk/ https://github.com/TimelyToga/tlotk/) say page does not exist, so it seems to be private and not public?
- chairmanwow1 6y agoOops. Sorry about that. I’ve made it public~
- atum47 6y agoexit(FUCKED_UP_SHADER_COMPILATION); funny
- atum47 6y agoThank, I'll take a look. I used to watch the cherno's videos, long time ago. Funny story: following a video (ThinMatrix) about creating a 3D engine in Java (I was translating everything to JavaScript and working around the old OpenGL concepts_) I learned that you can't have an object as a index in a JavaScript Dictionary. Living and learning.
- chairmanwow1 6y agoThinMatrix is great too. Although, I've come to like Dave Frampton's channel even more than TM [1]. The perfect balance of technical detail, artistry, game design, and calm steady progress. [1] https://www.youtube.com/user/majiDave https://www.youtube.com/user/majiDave