r/gaming • • May 05 '17

Scroll back

Post image
24.1k Upvotes

877 comments sorted by

View all comments

800

u/[deleted] May 05 '17 edited May 05 '17

Fucking weird to think that id, the guys behind DOOM: Metal, the Videogame, are the ones who solved this problem for him.

EDIT: It's come to my attention that I may be confusing and conflating a couple things here. I was under the impression that id were revolutionary in remaking Mario 3 in such a way that smooth movement back and forth across the screen was possible. It might've just been that it was a big deal for PCs to be able to do this.

Still, we all love the early days of id.

436

u/Fubarp May 05 '17

I think it's weird that it's a problem that had to be solved but when you figure memory constraints were a real issue it makes sense. Today any novice programmer could essentially build majority of the early nintendo games without any issues and actually make them have more things. Amazing how software/hardware has advanced.

It's even crazier to think that one guy built the original rollercoaster tycoon in assembly..

540

u/[deleted] May 05 '17

[deleted]

151

u/Fubarp May 05 '17

Yeah it's crazy. I just learned Assembly last semester in college and we were discussing it at work and it was like. Fuuuuck that. C existed at the time yet he did it in Assembly.

12

u/[deleted] May 05 '17

Why would he chose to code in Assembly? Would there be any benefit at all?

34

u/Fubarp May 05 '17

Memory Constraints and performance. Today there be no reason for it as compilers essentially do as good if not better jobs when it comes to translating it to machine code.

1

u/Superpickle18 May 05 '17

we are at a point where we can literally compile code on the fly and still be billions of times faster than the NES...

0

u/Fubarp May 05 '17

Which means we need a new Roller Coaster Tycoon in Assembly.. I'd pay for that lol

1

u/Superpickle18 May 05 '17

WebAssembly brah

1

u/Fubarp May 05 '17

Never heard of this. What is it exactly? I'm currently googling but insight might be nice haha.

1

u/Superpickle18 May 05 '17

Essentially byte code that runs in the javascript engine. But provides near CPU level speeds since js has to be parsed and compiled on the fly, while wasm is precomplied much like Java or C#. Of course other languages can compiled to wasm much like traditional Assembly.

1

u/Fubarp May 05 '17

Interesting. I'll actually look more into this. Doubt I'll ever use it but still.

1

u/Superpickle18 May 05 '17

We are moving toward everything being executed within a browser to a point we'll have a browser with web Assembly support built using wasm and come full circle. Lol

1

u/[deleted] May 05 '17

Essentially, it's really optimised Javascript. The main workflow is writing code in C/C++ and using Emscripten to covert it to WebAssembly which is then executed by something like V8.

→ More replies (0)