{"video_id":"bUCc5NGEthA","title":"Why Old Games Look So BAD","channel":"Techquickie","show":"Techquickie","published_at":"2021-05-05T14:58:16Z","duration_s":390,"segments":[{"start_s":0.0,"end_s":3.82,"text":"You're digging through some old moving boxes you never unpacked, and you discover your","speaker":null,"is_sponsor":0},{"start_s":3.82,"end_s":8.14,"text":"old console with a bunch of retro games. Ah, nostalgia.","speaker":null,"is_sponsor":0},{"start_s":8.14,"end_s":12.86,"text":"You dust it off, and after managing to hook it up to your shiny 4K flat screen TV, you","speaker":null,"is_sponsor":0},{"start_s":12.86,"end_s":19.3,"text":"find that it looksâ¦ well, did Link always look so blurry?","speaker":null,"is_sponsor":0},{"start_s":19.3,"end_s":25.86,"text":"Part of the problem is that old consoles like the SNES had a resolution of just 256x224 pixels,","speaker":null,"is_sponsor":0},{"start_s":25.86,"end_s":31.66,"text":"compared to the 3840x2160 pixels of a modern 4K TV.","speaker":null,"is_sponsor":0},{"start_s":31.66,"end_s":36.78,"text":"That means that if your TV were to show the game at its true native resolution, it would","speaker":null,"is_sponsor":0},{"start_s":36.78,"end_s":42.46,"text":"be this tiny. And you'd have to get so close to the screen, you'd go cross-eyed.","speaker":null,"is_sponsor":0},{"start_s":42.46,"end_s":47.84,"text":"So instead, a television will take that small media and upscale it so that it fills up most,","speaker":null,"is_sponsor":0},{"start_s":47.84,"end_s":58.18,"text":"if not all, of the available pixels. To do this, the TV manufacturer had to choose just one of several different upscaling algorithms.","speaker":null,"is_sponsor":0},{"start_s":58.18,"end_s":64.02,"text":"The most common ones are nearest neighbor, bilinear, bicubic, and landshaws, with nearest","speaker":null,"is_sponsor":0},{"start_s":64.02,"end_s":68.82,"text":"neighbor being the simplest and fastest to process, and landshaws being the slowest","speaker":null,"is_sponsor":0},{"start_s":68.82,"end_s":76.94,"text":"and most complex. However, on modern day hardware, any of these algorithms can easily upscale an image in","speaker":null,"is_sponsor":0},{"start_s":76.94,"end_s":84.34,"text":"real time, which for this video, I am defining as 16 milliseconds or less.","speaker":null,"is_sponsor":0},{"start_s":84.34,"end_s":89.66,"text":"And that's because if you're playing a game at 60 frames per second, each individual frame","speaker":null,"is_sponsor":0},{"start_s":89.66,"end_s":93.34,"text":"will appear on screen for about 16 milliseconds.","speaker":null,"is_sponsor":0},{"start_s":93.34,"end_s":99.82,"text":"Therefore, each of these algorithms should work faster than that, which also means that","speaker":null,"is_sponsor":0},{"start_s":99.82,"end_s":103.46,"text":"buffering multiple frames is not necessary.","speaker":null,"is_sponsor":0},{"start_s":103.5,"end_s":110.82,"text":"However, for AI or smart image upscaling, a multi-frame buffer can be necessary, which","speaker":null,"is_sponsor":0},{"start_s":110.82,"end_s":117.3,"text":"will result in a delay, or input lag, of much more than 16 milliseconds.","speaker":null,"is_sponsor":0},{"start_s":117.3,"end_s":120.86,"text":"So check out this video for more information about all that.","speaker":null,"is_sponsor":0},{"start_s":120.86,"end_s":128.38,"text":"But back to the topic at hand. Assuming that each of these algorithms can work in real time, which one actually looks","speaker":null,"is_sponsor":0},{"start_s":128.38,"end_s":132.66,"text":"the best? Well, see for yourself.","speaker":null,"is_sponsor":0},{"start_s":132.66,"end_s":139.5,"text":"And immediately you can see that only nearest neighbor can deliver the perfect, sharp pixels","speaker":null,"is_sponsor":0},{"start_s":139.5,"end_s":147.82,"text":"that make pixel art look good. All the others just kind of blend the pixels together, which blurs the image.","speaker":null,"is_sponsor":0},{"start_s":147.82,"end_s":154.86,"text":"So the upscaling algorithm on your TV is probably some form of bicubic or landshaws.","speaker":null,"is_sponsor":0},{"start_s":154.86,"end_s":160.9,"text":"Raising the question, why would anyone want an upscaling algorithm that's more complicated,","speaker":null,"is_sponsor":0},{"start_s":160.9,"end_s":164.22,"text":"slower, and looks worse?","speaker":null,"is_sponsor":0},{"start_s":164.22,"end_s":170.14,"text":"Because while nearest neighbor scaling looks great for pixel art, it does not look good","speaker":null,"is_sponsor":0},{"start_s":170.14,"end_s":177.58,"text":"for most other images. Your TV doesn't know that you've plugged in a retro game console, as opposed to a DVD","speaker":null,"is_sponsor":0},{"start_s":177.58,"end_s":185.42,"text":"player or something. And for live action video, bicubic or landshaws scaling really are better choices.","speaker":null,"is_sponsor":0},{"start_s":185.42,"end_s":193.1,"text":"The real world is not made of pixels. And so when we upscale a photograph, the results should not look pixelated.","speaker":null,"is_sponsor":0},{"start_s":193.1,"end_s":196.3,"text":"2D Mario is made of pixels.","speaker":null,"is_sponsor":0},{"start_s":196.3,"end_s":201.02,"text":"And therefore, when we upscale him, the results should be pixelated.","speaker":null,"is_sponsor":0},{"start_s":201.02,"end_s":205.5,"text":"But wait, I hear you say, my TV already has a game mode setting.","speaker":null,"is_sponsor":0},{"start_s":205.5,"end_s":213.98,"text":"Why doesn't it just use nearest neighbor for that? Well, because most 3D games also look better with bicubic or landshaws scaling.","speaker":null,"is_sponsor":0},{"start_s":213.98,"end_s":219.94,"text":"So the manufacturer would have to include a nearest neighbor menu option, which doesn't","speaker":null,"is_sponsor":0},{"start_s":219.94,"end_s":226.1,"text":"sound so hard. As for why they don't do that, I don't know.","speaker":null,"is_sponsor":0},{"start_s":226.1,"end_s":230.06,"text":"TV manufacturers just don't care, I guess.","speaker":null,"is_sponsor":0},{"start_s":230.06,"end_s":233.86,"text":"Maybe because not enough consumers know or care about this problem.","speaker":null,"is_sponsor":0},{"start_s":233.86,"end_s":237.78,"text":"But if you really want those sharp pixels, I have good news.","speaker":null,"is_sponsor":0},{"start_s":237.78,"end_s":244.14,"text":"There are a lot of options, like the RetroTink 2X, Framemeister or open source scan converter.","speaker":null,"is_sponsor":0},{"start_s":244.14,"end_s":250.26,"text":"But before you buy anything, I recommend you check out this great RGB video explainer series","speaker":null,"is_sponsor":0},{"start_s":250.26,"end_s":254.62,"text":"from MyLife in gaming, because this stuff can get really complicated.","speaker":null,"is_sponsor":0},{"start_s":254.62,"end_s":260.98,"text":"I ended up just buying a $14 component cable for my Wii, which provides much better quality","speaker":null,"is_sponsor":0},{"start_s":260.98,"end_s":267.58,"text":"than the stock composite cable. And it's not perfect, but you know what, it's good enough for me.","speaker":null,"is_sponsor":0},{"start_s":267.58,"end_s":272.34,"text":"Now if you're emulating your old games, you have way more options.","speaker":null,"is_sponsor":0},{"start_s":272.34,"end_s":277.42,"text":"Emulators like RetroArch have access to an arguably even better scaling method called","speaker":null,"is_sponsor":0},{"start_s":277.42,"end_s":283.26,"text":"Sharp Bilinear, which uses nearest neighbor for pre-scaling to the closest integer and","speaker":null,"is_sponsor":0},{"start_s":283.26,"end_s":286.76,"text":"then uses bilinear scaling for the remainder.","speaker":null,"is_sponsor":0},{"start_s":286.76,"end_s":292.86,"text":"This method even allows you to rotate the image without getting any jagged edges.","speaker":null,"is_sponsor":0},{"start_s":292.86,"end_s":297.54,"text":"There are also tons of other interesting scalers and shaders that can be mixed and customized","speaker":null,"is_sponsor":0},{"start_s":297.74,"end_s":304.3,"text":"to get just the look you want. And blurry pixel art is not just a problem for retro gamers.","speaker":null,"is_sponsor":0},{"start_s":304.3,"end_s":309.7,"text":"If you're a digital artist like me, you should know that programs like GIMP, Photoshop and","speaker":null,"is_sponsor":0},{"start_s":309.7,"end_s":315.42,"text":"After Effects do have support for nearest neighbor if you know where to look.","speaker":null,"is_sponsor":0},{"start_s":315.42,"end_s":321.14,"text":"But some creative software, including Premiere, does not.","speaker":null,"is_sponsor":0},{"start_s":321.14,"end_s":327.54,"text":"It's annoying. Also, support for integer scaling from PC hardware manufacturers like AMD, NVIDIA and","speaker":null,"is_sponsor":0},{"start_s":327.54,"end_s":333.5,"text":"Intel has been getting better lately, but we've still got a ways to go.","speaker":null,"is_sponsor":0},{"start_s":333.5,"end_s":338.14,"text":"If you want to learn more and get involved in the Sharp Pixel Revolution, Merritt Tenenlin's","speaker":null,"is_sponsor":0},{"start_s":338.14,"end_s":342.54,"text":"website, which I used as a resource for this video, is a great place to start.","speaker":null,"is_sponsor":0},{"start_s":342.54,"end_s":347.18,"text":"He's even developed a browser plugin that solves a similar problem with improperly scaled","speaker":null,"is_sponsor":0},{"start_s":347.18,"end_s":354.14,"text":"images on websites. And I use it every day when taking important screenshots for TechWiki videos like this one.","speaker":null,"is_sponsor":0},{"start_s":354.14,"end_s":360.82,"text":"Never mind that. Thanks for watching. Like, dislike and check out our other video about how to buy a TV for gaming.","speaker":null,"is_sponsor":1},{"start_s":360.82,"end_s":364.58,"text":"Leave a comment with your video suggestions and subscribe for more TechWiki.","speaker":null,"is_sponsor":1}],"full_text":"You're digging through some old moving boxes you never unpacked, and you discover your old console with a bunch of retro games. Ah, nostalgia. You dust it off, and after managing to hook it up to your shiny 4K flat screen TV, you find that it looksâ¦ well, did Link always look so blurry? Part of the problem is that old consoles like the SNES had a resolution of just 256x224 pixels, compared to the 3840x2160 pixels of a modern 4K TV. That means that if your TV were to show the game at its true native resolution, it would be this tiny. And you'd have to get so close to the screen, you'd go cross-eyed. So instead, a television will take that small media and upscale it so that it fills up most, if not all, of the available pixels. To do this, the TV manufacturer had to choose just one of several different upscaling algorithms. The most common ones are nearest neighbor, bilinear, bicubic, and landshaws, with nearest neighbor being the simplest and fastest to process, and landshaws being the slowest and most complex. However, on modern day hardware, any of these algorithms can easily upscale an image in real time, which for this video, I am defining as 16 milliseconds or less. And that's because if you're playing a game at 60 frames per second, each individual frame will appear on screen for about 16 milliseconds. Therefore, each of these algorithms should work faster than that, which also means that buffering multiple frames is not necessary. However, for AI or smart image upscaling, a multi-frame buffer can be necessary, which will result in a delay, or input lag, of much more than 16 milliseconds. So check out this video for more information about all that. But back to the topic at hand. Assuming that each of these algorithms can work in real time, which one actually looks the best? Well, see for yourself. And immediately you can see that only nearest neighbor can deliver the perfect, sharp pixels that make pixel art look good. All the others just kind of blend the pixels together, which blurs the image. So the upscaling algorithm on your TV is probably some form of bicubic or landshaws. Raising the question, why would anyone want an upscaling algorithm that's more complicated, slower, and looks worse? Because while nearest neighbor scaling looks great for pixel art, it does not look good for most other images. Your TV doesn't know that you've plugged in a retro game console, as opposed to a DVD player or something. And for live action video, bicubic or landshaws scaling really are better choices. The real world is not made of pixels. And so when we upscale a photograph, the results should not look pixelated. 2D Mario is made of pixels. And therefore, when we upscale him, the results should be pixelated. But wait, I hear you say, my TV already has a game mode setting. Why doesn't it just use nearest neighbor for that? Well, because most 3D games also look better with bicubic or landshaws scaling. So the manufacturer would have to include a nearest neighbor menu option, which doesn't sound so hard. As for why they don't do that, I don't know. TV manufacturers just don't care, I guess. Maybe because not enough consumers know or care about this problem. But if you really want those sharp pixels, I have good news. There are a lot of options, like the RetroTink 2X, Framemeister or open source scan converter. But before you buy anything, I recommend you check out this great RGB video explainer series from MyLife in gaming, because this stuff can get really complicated. I ended up just buying a $14 component cable for my Wii, which provides much better quality than the stock composite cable. And it's not perfect, but you know what, it's good enough for me. Now if you're emulating your old games, you have way more options. Emulators like RetroArch have access to an arguably even better scaling method called Sharp Bilinear, which uses nearest neighbor for pre-scaling to the closest integer and then uses bilinear scaling for the remainder. This method even allows you to rotate the image without getting any jagged edges. There are also tons of other interesting scalers and shaders that can be mixed and customized to get just the look you want. And blurry pixel art is not just a problem for retro gamers. If you're a digital artist like me, you should know that programs like GIMP, Photoshop and After Effects do have support for nearest neighbor if you know where to look. But some creative software, including Premiere, does not. It's annoying. Also, support for integer scaling from PC hardware manufacturers like AMD, NVIDIA and Intel has been getting better lately, but we've still got a ways to go. If you want to learn more and get involved in the Sharp Pixel Revolution, Merritt Tenenlin's website, which I used as a resource for this video, is a great place to start. He's even developed a browser plugin that solves a similar problem with improperly scaled images on websites. And I use it every day when taking important screenshots for TechWiki videos like this one. Never mind that. Thanks for watching. Like, dislike and check out our other video about how to buy a TV for gaming. Leave a comment with your video suggestions and subscribe for more TechWiki."}