How are games emulated at higher than the original resolution?

captain_koloth

New member
I have a technical question about how emulation works. I've used many emulators but I'm not a coding person and don't know the details of how they work. Specifially, I'm wondering, in very basic terms, how 3D games are emulated at higher than their original resolution. Take Mario 64, for example. On my computer I can emulate it at 1920x1200 with no problem. But wasn't the game originally coded to run at whatever the native resolution of the N64 was? Where does the information come from to render all the extra polygons required to upscale the resolution? Is there some algorithm in the emulator itself? How does the emulator "know" how to draw the polygons required to output at the higher resolution possible in an emulator? Is it similar to the algorithms used to upscale SD movies in 2D to HD?
 

Snes

New member
I was wondering about the exact same thing. How is possible to make the same game looks better than the original version.
 

jeruka9-san

Rookie Developer >_> <_<
this "thing" is called pixelshaders https://en.wikipedia.org/wiki/Shader In the field of computer graphics, a shader is a computer program that is used to do shading: the production of appropriate levels of color within an image, or, in the modern era, also to produce special effects or do video post-processing. Shaders are used widely in cinema postprocessing, computer-generated imagery, and video games to produce a seemingly infinite range of effects. Beyond just simple lighting models, more complex uses include altering the hue, saturation, brightness and/or contrast of an image, producing blur, light bloom, volumetric lighting, normal mapping for depth effects, bokeh, cel shading, posterization, bump mapping, distortion, chroma keying (so-called "bluescreen/ greenscreen" effects), edge detection and motion detection, psychedelic effects, and a wide range of others.
and plus up and downscaling voila :p
 
Last edited:

ulaoulao

Controller Man
Staff member
But wasn't the game originally coded to run at whatever the native resolution of the N64 was?
No, I actually have the dev kit. The games were all coded to run in 800x600 max. If you actually thought game development was done on the console you're mistaken. These are all developed on emulator boards that go in to computers and no-a-day done via emulators the company makes (hence, grigri). Now when developed the output will be the same as the console, because you do want the final product to be the same... but, it can also be displayed on the computer during production. The n64 was actually developed on NT and the dev kit was SCSI. All n64 code is written for a max of 800x600 and then down sampled for the hardware. If you make an emulator you can obviously run it in its native res.

Proof: Get the game Taken 3 for psx, play it on a normal monitor the way it was intended. Now run it on an emulator like ePSXe at 800x600 and look again. The players Eyes blink! This is not seen on the console, possibly a bug never caught. Same would be true for n64 but I can not think of a good example.
 
Last edited:
Top