Creating a Doom-style 3D engine in C
Bisqwit3 HN recommenders · recommended in 5 months, 2015–2019
tutorial · intermediate · evergreen · 2015–2019 on HN
Bisqwit builds a Doom or Duke Nukem 3D style software-rendered 3D engine in C from scratch, supporting non-Euclidean geometry. It covers vector rotation and portal rendering with sped-up, tool-assisted coding.
A favorite on Ask HN lists of programming YouTube channels, praised for mind-blowing systems and graphics programming and a watchable coding style.
Up next
5 mo on HNGET LAMP: The Text Adventure Documentary
Google TechTalks
5 HN recommender · 2014–2026
2 mo on HNI wrote a Raytracer for DOS, 16 VGA colors
Bisqwit
2 HN recommender · 2019–2021
5 mo on HNI made a NES emulator in 15 minutes
Bisqwit
3 HN recommender · 2013–2022
2 mo on HNKylie Minogue - Come Into My World (Official Video) [Full HD Remastered]
Kylie Minogue
2 HN recommender · 2018–2025
2 mo on HNJacob Collier Explains Music in 5 Levels of Difficulty ft. Herbie Hancock | WIRED
WIRED
2 HN recommender · 2018–2023
3 mo on HNShakespeare: Original pronunciation (The Open University)
OpenLearn from The Open University
4 HN recommender · 2013–2025
2 mo on HNOpenAI's GPT-4 Discussion with Red Teamer Nathan Labenz and Erik Torenberg
Cognitive Revolution "How AI Changes Everything"
3 HN recommender · 2023–2023
11 mo on HNBret Victor - Inventing on Principle
Rui Oliveira
12 HN recommender · 2013–2025
13 mo on HNThe Beauty of Bézier Curves
Freya Holmér
16 HN recommender · 2021–2026
11 mo on HNThe Continuity of Splines
Freya Holmér
10 HN recommender · 2022–2026
10 mo on HNelevated by Rgba & TBC | 4k intro (FullHD 1080p demoscene demo)
Demoscene High-Quality Videos (Annikras)
7 HN recommender · 2013–2025
10 mo on HNPainting a Character with Maths
Inigo Quilez
13 HN recommender · 2021–2025
6 comments from Hacker News
Agreed. My favourite programming YouTuber by a long stretch. If anyone is unfamiliar with him and wants to watch some of the "classics" I'd recommend these: His "cracking videogame passwords" series: link Creating a Doom-style 3D engine in C: ▶ this video Creating a Rogue-like game in C++11: link Creating a PIC16 emulator and NES music player: link Creating a NES emulator: link Creating a DOS VGA raytracer: link
Bisqwit's video focusing on systems and graphics programming are total gems. link Not particularly useful for web developers which is what most programmers are nowdays, they will still blow your mind though. ▶ this video
link is by far my favorite and I've spent many hours watching him. He does things like create a Doom-style engine from scratch: ▶ this video .. create a NES emulator: link .. work back from a C++17 example to show why new C++ standards are needed: link .. and even building a Tetris clone in GW-BASIC: link .. Right now, he's doing a series on cracking 80s videogame passwords: link Sirajology - link - is another interesting one. He moves a bit too quickly for me, but does things like explain machine learning in 5 minutes or how to generate music with systems like Tensorflow.
This is why I love bisqwit's videos on YouTube. He takes a middle ground between "typing it in" and pondered narration. The typing effect is sped up and faked and done at just the right speed to 'follow along' with his thought process. Example: ▶ this video
I'm a fan of Bisqwit: link Mostly because he does fun things that are outside of the kind of programming I usually do, so it helps me broaden my horizons a bit. One of my favourites is the video where he sets out to make a basic 3D game engine in C, but starts by prototyping it in Basic: ▶ this video
As was Duke Nukem 3D. Here's a video about making a simple demo engine based around the concept, which shows off a little non-Euclidean geometry: ▶ this video