HandmadeCon 2016 - History of Software Texture Mapping in Games
Molly RocketRecommended by 2 HN commenters across 2 months, 2021–2022
talk · advanced · evergreen · 2021–2022 on HN
A HandmadeCon 2016 panel where Chris Hecker, John Miles, Sean Barrett and Chris Green give an oral history of software texture mapping in 90s games.
HN recommends it for first-hand accounts of how early 3D games like Doom worked within tight hardware limits.
Up next
5 mo on HNGPUs to Mars: Full-Scale Simulation of SpaceX's Mars Rocket Engine
insideHPC Report
Recommended 5× on HN · 2015–2024
5 mo on HN"Games as a service" is fraud.
Accursed Farms
Recommended 5× on HN · 2019–2024
2 mo on HNThe Cannonball Run Countach: Supercar Legend | Full Documentary
Hagerty Drivers Foundation
Recommended 2× on HN · 2022–2023
3 mo on HNI made a talking banana
Useless Duck Company
Recommended 3× on HN · 2018–2023
2 mo on HN3dfx Oral History Panel with Ross Smith, Scott Sellers, Gary Tarolli, and Gordon Campbell
Computer History Museum
Recommended 3× on HN · 2017–2023
10 mo on HNOverwatch Gameplay Architecture and Netcode
GDC Festival of Gaming
Recommended 16× on HN · 2019–2025
9 mo on HNRustConf 2018 - Closing Keynote - Using Rust For Game Development by Catherine West
Rust Programming Language
Recommended 9× on HN · 2018–2023
9 mo on HNA Deep Dive into Nanite Virtualized Geometry
SIGGRAPH Advances in Real-Time Rendering
Recommended 7× on HN · 2021–2026
9 mo on HNHow Crash Bandicoot Hacked The Original Playstation | War Stories | Ars Technica
Ars Technica
Recommended 13× on HN · 2020–2026
9 mo on HNJonathan Blow - How to program independent games - CSUA Speech
Alexandre Franco
Recommended 9× on HN · 2015–2026
9 mo on HNIdeas about a new programming language for games.
Jonathan Blow
Recommended 7× on HN · 2014–2025
7 mo on HNExploring the Tech and Design of Noita
GDC Festival of Gaming
Recommended 7× on HN · 2020–2026
5 comments from Hacker News
From the horses mouths (minus Abrash/Carmack) 'HandmadeCon 2016 - History of Software Texture Mapping in Games' ▶ this video Wolfenstein and Doom are 100% correct because Carmack 'cheated' by deciding to never look down/up or draw slopes :-) so whole game is drawn with 'lines of constant Z'. Or as they put it Chris Hecker (Microsoft/Maxis/etc): that's a classic Carmack thing which is like Fuck those general problems, Im gonna solve this other problem perfectly John Miles (ORIGIN/Miles Design/etc): Its all about not doing the math, we were still at a point in time when you won by not doing the math
Some interesting related stuff in this talk: HandmadeCon 2016 - History of Software Texture Mapping in Games ▶ this video I think they say at one point it went from 14 to 8 instructions, and then the Duke Nukem guy (Ken Silverman) got it down to around 4. Quake would do something where it only issued a divide every 8 pixels or something, and then only interpolate when inbetween and the out of order execution on pentium pro (I think?) would let it all work out.
Garret’s buddies at HandmadeCon gathered a group of devs from different games who all wrote some of the first software rasterization 3D games. The general theme was “We had no idea what we were doing. There were no references!” ▶ this video
I guess Michael Abrash's Graphics Programming Black Book fits the bill, though no amount of literature replaces getting your hands dirty in late 80s-early 90s level hardware+software. However, while you can do this, you're still missing the things you learned by being part of a team (of the kind which there are probably in the low hundreds right now). How much I'd give to be part of Nintendo or Id software or some other era-appropriate team figuring out how to make the early big 3D games like Mario 64 or its contemporaries on the PSX. Of course you can bust out an SDK and try it out but it probably won't be the same. Those teams built up that kind of tacit knowledge like in this video about software texture mapping ▶ this video
- it didnt, at least not Intel x86 MHz - doom doesnt operate on pixels, it operates on constant-z planes (lines), you can scale linearly inside those (cheap 2D operation). How Carmack did it? He cheated by deciding to never look down/up or draw slopes :) 'HandmadeCon 2016 - History of Software Texture Mapping in Games' ▶ this video Chris Hecker (Microsoft/Maxis/etc): that's a classic Carmack thing which is like Fuck those general problems, Im gonna solve this other problem perfectly John Miles (ORIGIN/Miles Design/etc): Its all about not doing the math, we were still at a point in time when you won by not doing the math