Why is Temple OS’s encoded 3D rendered graphics impressive on a technical level?


In this video Linus demos Temple OS

At the [7 minute mark](https://youtu.be/LtlyeDAJR7A?t=424) it is explained that the graphics are in text mode. Is this impressive?

In the comments section someone writes

>People who play one of Terry’s games: “Ehh…”

>People who find out he made the OS it runs on: “Very impressive.”

>People who find out that his animated, 3D games are literally a Textfile: HOLY SHIT

And if you read the replies, there’s an argument about whether this is impressive or not. Is it impressive? why or why not?

In: Technology

As a programmer, not really. It’s all kinds of weird and quirky, but it’s not really technically challenging.

3D graphics is just a bunch of data. There’s no reason why you can’t encode 3D graphics in a text format, and in fact we do. For instance the STL format often used in 3D printing has a text representation that looks like:

solid model
facet normal 0.0 0.0 -1.0
outer loop
vertex 20.0 0.0 0.0
vertex 0.0 -20.0 0.0
vertex 0.0 0.0 0.0

We can also do with images. The PNM format is obscure these days, but you can find the rare use in Linux systems. Looks like this:

# This is an example bitmap of the letter “J”
6 10
0 0 0 0 1 0
0 0 0 0 1 0
0 0 0 0 1 0
0 0 0 0 1 0
0 0 0 0 1 0
0 0 0 0 1 0
1 0 0 0 1 0
0 1 1 1 0 0
0 0 0 0 0 0
0 0 0 0 0 0

If you save that as “j.pnm”, you should be able to view it in a program that can read the format.

It’s just long and verbose, but other than that there’s nothing difficult about expressing 3D data in text. And sure, you can combine different kinds of data in one file, and have markup indicating what part is what. HTML is an example of that kind of thing.

In the end, data is data. It can be stored and transmitted in any conceivable manner: as dots on a piece of paper, as words, engraved into stone, sent into the air as smoke signals… it’s just a matter of what method works best for a given application.

The impressive part is that it was all made by one guy. He made the OS, made the game, then made drivers to utilize hardware to play the game. That’s the impressive part. Yes, it is technically a rudimentary OS, but millions of lines of code by one guy is still pretty rad.

As a former game developer,

I would ask who is impressed and what are their credentials? Are they professional software engineers? I would suspect not one engineer would be impressed on a technical level. Temple OS is a novelty, I’ll grant that. It’s bizarre, and written by a self-taught schizophrenic. THAT is what impresses me.

But we’re not talking about all of Temple OS, we’re talking about the 3D renderer and the guy’s text encoding. No, it’s not technically impressive. It’s not unique. These same techniques exist in all the games you currently enjoy – text encoded data and script that drives and engine.

You can do analogous things in LaTeX without too much difficulty. It certainly wasn’t a novel idea in 2005 to have a text document format with inline images. It’s a neat design choice for this to be part of the core OS, and his format seems to have good support for animations, but yeah, the people getting excited are just not that aware of what file formats are and what relation they have to technical difficulty.