When did hardware antialiasing start being available?Power cycling old hardwareWhat did the Super FX co-processor do?When did the tower form factor appear and when did it become popular?Where did Sony's 3D graphics hardware in the PS1 originate?When did Great Valley Products, stop producing hardware?If the Sega Genesis/MegaDrive could be overclocked so easily, why couldn't the SNES?When did the Macintosh start using four (or more) layer PCB's?Simplest system to create an emulator forHow does Apple ][gs hardware dithering work?When did game consoles acquire battery-backed clocks?

Can I still be respawned if I die by falling off the map?

Redundant comparison & "if" before assignment

Why Shazam when there is already Superman?

Why did the EU agree to delay the Brexit deadline?

Why is the "ls" command showing permissions of files in a FAT32 partition?

Lowest total scrabble score

Why is it that I can sometimes guess the next note?

It grows, but water kills it

On a tidally locked planet, would time be quantized?

Mimic lecturing on blackboard, facing audience

What should you do when eye contact makes your subordinate uncomfortable?

Creepy dinosaur pc game identification

Non-trope happy ending?

What is the highest possible scrabble score for placing a single tile

Picking the different solutions to the time independent Schrodinger eqaution

Recommended PCB layout understanding - ADM2572 datasheet

Does an advisor owe his/her student anything? Will an advisor keep a PhD student only out of pity?

How to cover method return statement in Apex Class?

Is this toilet slogan correct usage of the English language?

Open a doc from terminal, but not by its name

Temporarily disable WLAN internet access for children, but allow it for adults

How could a planet have erratic days?

Can I say "fingers" when referring to toes?

What is going on with 'gets(stdin)' on the site coderbyte?



When did hardware antialiasing start being available?


Power cycling old hardwareWhat did the Super FX co-processor do?When did the tower form factor appear and when did it become popular?Where did Sony's 3D graphics hardware in the PS1 originate?When did Great Valley Products, stop producing hardware?If the Sega Genesis/MegaDrive could be overclocked so easily, why couldn't the SNES?When did the Macintosh start using four (or more) layer PCB's?Simplest system to create an emulator forHow does Apple ][gs hardware dithering work?When did game consoles acquire battery-backed clocks?













17















An important step towards 3D gaming was the ability to scale sprites or tiles by nonintegral factors. Examples of the former from the eighties were the arcade games Pole Position, Outrun, Space Harrier and Afterburner; a subsequent example of the latter was the SNES Mode 7, used in many games for that machine.



Accustomed to modern hardware, one tends to expect antialiasing; that is, for each screen pixel, the system locates the corresponding data pixel, and if the answer lands between two data pixels, instead of just picking one or the other, it calculates a weighted average of the two.



But https://arstechnica.com/gaming/2011/08/accuracy-takes-power-one-mans-3ghz-quest-to-build-a-perfect-snes-emulator/ says




I don't deny the advantages of treating classic games as something that can be improved upon: N64 emulators employ stunning high-resolution texture packs and 1080p upscaling, while SNES emulators often provide 2x anti-aliasing for Mode7 graphics and cubic-spline interpolation for audio samples. Such emulated games look and sound better. While there is nothing wrong with this, it is contrary to the goal of writing a hardware-accurate emulator.




This suggests the SNES did not actually have antialiasing.



According to https://en.wikipedia.org/wiki/List_of_Sega_arcade_system_boards




The Sega Model 2 is an arcade system board released by Sega in 1993. Like the Model 1, it was developed in cooperation with Martin Marietta, and is a further advancement of the earlier Model 1 system. The most noticeable improvement was texture mapping, which enabled polygons to be painted with bitmap images, as opposed to the limited monotone flat shading that Model 1 supported. The Model 2 also introduced the use of texture filtering and texture anti-aliasing.




This suggests Sega arcade machines likewise did not have antialiasing before 1993. A surprising conclusion from today's perspective, but then, the transistors required for the extra calculations might've been a significant cost in those days, and arcade games were fast-moving and CRT TV displays were somewhat blurry anyway. And certainly it would not have been affordable in software on eighties-vintage CPUs.



Are the above inferences correct? Did antialiasing hardware only start being available in arcade and home games machines in the early to mid nineties?










share|improve this question
























  • Is there a difference between "texture filtering" and "texture antialiasing"?

    – traal
    Mar 18 at 4:03











  • @traal Per Tommy's answer, apparently so!

    – rwallace
    Mar 18 at 4:05






  • 6





    for each screen pixel, the system locates the corresponding data pixel, and if the answer lands between two data pixels, instead of just picking one or the other, it calculates a weighted average of the two. This is actually bilinear filtering, not anti-aliasing. Aliasing will still appear if you do what you described. You need to filter the texture before scaling it, in order to have anti-aliasing.

    – Bregalad
    Mar 18 at 13:43







  • 3





    Also — pedantically as ever! — if you calculate a weighted average of just two pixels, that's linear filtering. Do it in two dimensions to get bilinear filtering, which is then a weighted average of four pixels.

    – Tommy
    Mar 18 at 18:14







  • 3





    Another pedantic answer is that you got hardware antialiasing once computers started outputting 320x200 to televisions: a home television doesn't have the sharpest focus in the world, so a certain amount of blur between pixels and across lines was normal, and in fact used to advantage by some software.

    – Mark
    Mar 18 at 22:29















17















An important step towards 3D gaming was the ability to scale sprites or tiles by nonintegral factors. Examples of the former from the eighties were the arcade games Pole Position, Outrun, Space Harrier and Afterburner; a subsequent example of the latter was the SNES Mode 7, used in many games for that machine.



Accustomed to modern hardware, one tends to expect antialiasing; that is, for each screen pixel, the system locates the corresponding data pixel, and if the answer lands between two data pixels, instead of just picking one or the other, it calculates a weighted average of the two.



But https://arstechnica.com/gaming/2011/08/accuracy-takes-power-one-mans-3ghz-quest-to-build-a-perfect-snes-emulator/ says




I don't deny the advantages of treating classic games as something that can be improved upon: N64 emulators employ stunning high-resolution texture packs and 1080p upscaling, while SNES emulators often provide 2x anti-aliasing for Mode7 graphics and cubic-spline interpolation for audio samples. Such emulated games look and sound better. While there is nothing wrong with this, it is contrary to the goal of writing a hardware-accurate emulator.




This suggests the SNES did not actually have antialiasing.



According to https://en.wikipedia.org/wiki/List_of_Sega_arcade_system_boards




The Sega Model 2 is an arcade system board released by Sega in 1993. Like the Model 1, it was developed in cooperation with Martin Marietta, and is a further advancement of the earlier Model 1 system. The most noticeable improvement was texture mapping, which enabled polygons to be painted with bitmap images, as opposed to the limited monotone flat shading that Model 1 supported. The Model 2 also introduced the use of texture filtering and texture anti-aliasing.




This suggests Sega arcade machines likewise did not have antialiasing before 1993. A surprising conclusion from today's perspective, but then, the transistors required for the extra calculations might've been a significant cost in those days, and arcade games were fast-moving and CRT TV displays were somewhat blurry anyway. And certainly it would not have been affordable in software on eighties-vintage CPUs.



Are the above inferences correct? Did antialiasing hardware only start being available in arcade and home games machines in the early to mid nineties?










share|improve this question
























  • Is there a difference between "texture filtering" and "texture antialiasing"?

    – traal
    Mar 18 at 4:03











  • @traal Per Tommy's answer, apparently so!

    – rwallace
    Mar 18 at 4:05






  • 6





    for each screen pixel, the system locates the corresponding data pixel, and if the answer lands between two data pixels, instead of just picking one or the other, it calculates a weighted average of the two. This is actually bilinear filtering, not anti-aliasing. Aliasing will still appear if you do what you described. You need to filter the texture before scaling it, in order to have anti-aliasing.

    – Bregalad
    Mar 18 at 13:43







  • 3





    Also — pedantically as ever! — if you calculate a weighted average of just two pixels, that's linear filtering. Do it in two dimensions to get bilinear filtering, which is then a weighted average of four pixels.

    – Tommy
    Mar 18 at 18:14







  • 3





    Another pedantic answer is that you got hardware antialiasing once computers started outputting 320x200 to televisions: a home television doesn't have the sharpest focus in the world, so a certain amount of blur between pixels and across lines was normal, and in fact used to advantage by some software.

    – Mark
    Mar 18 at 22:29













17












17








17


1






An important step towards 3D gaming was the ability to scale sprites or tiles by nonintegral factors. Examples of the former from the eighties were the arcade games Pole Position, Outrun, Space Harrier and Afterburner; a subsequent example of the latter was the SNES Mode 7, used in many games for that machine.



Accustomed to modern hardware, one tends to expect antialiasing; that is, for each screen pixel, the system locates the corresponding data pixel, and if the answer lands between two data pixels, instead of just picking one or the other, it calculates a weighted average of the two.



But https://arstechnica.com/gaming/2011/08/accuracy-takes-power-one-mans-3ghz-quest-to-build-a-perfect-snes-emulator/ says




I don't deny the advantages of treating classic games as something that can be improved upon: N64 emulators employ stunning high-resolution texture packs and 1080p upscaling, while SNES emulators often provide 2x anti-aliasing for Mode7 graphics and cubic-spline interpolation for audio samples. Such emulated games look and sound better. While there is nothing wrong with this, it is contrary to the goal of writing a hardware-accurate emulator.




This suggests the SNES did not actually have antialiasing.



According to https://en.wikipedia.org/wiki/List_of_Sega_arcade_system_boards




The Sega Model 2 is an arcade system board released by Sega in 1993. Like the Model 1, it was developed in cooperation with Martin Marietta, and is a further advancement of the earlier Model 1 system. The most noticeable improvement was texture mapping, which enabled polygons to be painted with bitmap images, as opposed to the limited monotone flat shading that Model 1 supported. The Model 2 also introduced the use of texture filtering and texture anti-aliasing.




This suggests Sega arcade machines likewise did not have antialiasing before 1993. A surprising conclusion from today's perspective, but then, the transistors required for the extra calculations might've been a significant cost in those days, and arcade games were fast-moving and CRT TV displays were somewhat blurry anyway. And certainly it would not have been affordable in software on eighties-vintage CPUs.



Are the above inferences correct? Did antialiasing hardware only start being available in arcade and home games machines in the early to mid nineties?










share|improve this question
















An important step towards 3D gaming was the ability to scale sprites or tiles by nonintegral factors. Examples of the former from the eighties were the arcade games Pole Position, Outrun, Space Harrier and Afterburner; a subsequent example of the latter was the SNES Mode 7, used in many games for that machine.



Accustomed to modern hardware, one tends to expect antialiasing; that is, for each screen pixel, the system locates the corresponding data pixel, and if the answer lands between two data pixels, instead of just picking one or the other, it calculates a weighted average of the two.



But https://arstechnica.com/gaming/2011/08/accuracy-takes-power-one-mans-3ghz-quest-to-build-a-perfect-snes-emulator/ says




I don't deny the advantages of treating classic games as something that can be improved upon: N64 emulators employ stunning high-resolution texture packs and 1080p upscaling, while SNES emulators often provide 2x anti-aliasing for Mode7 graphics and cubic-spline interpolation for audio samples. Such emulated games look and sound better. While there is nothing wrong with this, it is contrary to the goal of writing a hardware-accurate emulator.




This suggests the SNES did not actually have antialiasing.



According to https://en.wikipedia.org/wiki/List_of_Sega_arcade_system_boards




The Sega Model 2 is an arcade system board released by Sega in 1993. Like the Model 1, it was developed in cooperation with Martin Marietta, and is a further advancement of the earlier Model 1 system. The most noticeable improvement was texture mapping, which enabled polygons to be painted with bitmap images, as opposed to the limited monotone flat shading that Model 1 supported. The Model 2 also introduced the use of texture filtering and texture anti-aliasing.




This suggests Sega arcade machines likewise did not have antialiasing before 1993. A surprising conclusion from today's perspective, but then, the transistors required for the extra calculations might've been a significant cost in those days, and arcade games were fast-moving and CRT TV displays were somewhat blurry anyway. And certainly it would not have been affordable in software on eighties-vintage CPUs.



Are the above inferences correct? Did antialiasing hardware only start being available in arcade and home games machines in the early to mid nineties?







hardware graphics snes sega






share|improve this question















share|improve this question













share|improve this question




share|improve this question








edited Mar 18 at 11:00









Raffzahn

53.5k6132217




53.5k6132217










asked Mar 18 at 2:47









rwallacerwallace

9,805449146




9,805449146












  • Is there a difference between "texture filtering" and "texture antialiasing"?

    – traal
    Mar 18 at 4:03











  • @traal Per Tommy's answer, apparently so!

    – rwallace
    Mar 18 at 4:05






  • 6





    for each screen pixel, the system locates the corresponding data pixel, and if the answer lands between two data pixels, instead of just picking one or the other, it calculates a weighted average of the two. This is actually bilinear filtering, not anti-aliasing. Aliasing will still appear if you do what you described. You need to filter the texture before scaling it, in order to have anti-aliasing.

    – Bregalad
    Mar 18 at 13:43







  • 3





    Also — pedantically as ever! — if you calculate a weighted average of just two pixels, that's linear filtering. Do it in two dimensions to get bilinear filtering, which is then a weighted average of four pixels.

    – Tommy
    Mar 18 at 18:14







  • 3





    Another pedantic answer is that you got hardware antialiasing once computers started outputting 320x200 to televisions: a home television doesn't have the sharpest focus in the world, so a certain amount of blur between pixels and across lines was normal, and in fact used to advantage by some software.

    – Mark
    Mar 18 at 22:29

















  • Is there a difference between "texture filtering" and "texture antialiasing"?

    – traal
    Mar 18 at 4:03











  • @traal Per Tommy's answer, apparently so!

    – rwallace
    Mar 18 at 4:05






  • 6





    for each screen pixel, the system locates the corresponding data pixel, and if the answer lands between two data pixels, instead of just picking one or the other, it calculates a weighted average of the two. This is actually bilinear filtering, not anti-aliasing. Aliasing will still appear if you do what you described. You need to filter the texture before scaling it, in order to have anti-aliasing.

    – Bregalad
    Mar 18 at 13:43







  • 3





    Also — pedantically as ever! — if you calculate a weighted average of just two pixels, that's linear filtering. Do it in two dimensions to get bilinear filtering, which is then a weighted average of four pixels.

    – Tommy
    Mar 18 at 18:14







  • 3





    Another pedantic answer is that you got hardware antialiasing once computers started outputting 320x200 to televisions: a home television doesn't have the sharpest focus in the world, so a certain amount of blur between pixels and across lines was normal, and in fact used to advantage by some software.

    – Mark
    Mar 18 at 22:29
















Is there a difference between "texture filtering" and "texture antialiasing"?

– traal
Mar 18 at 4:03





Is there a difference between "texture filtering" and "texture antialiasing"?

– traal
Mar 18 at 4:03













@traal Per Tommy's answer, apparently so!

– rwallace
Mar 18 at 4:05





@traal Per Tommy's answer, apparently so!

– rwallace
Mar 18 at 4:05




6




6





for each screen pixel, the system locates the corresponding data pixel, and if the answer lands between two data pixels, instead of just picking one or the other, it calculates a weighted average of the two. This is actually bilinear filtering, not anti-aliasing. Aliasing will still appear if you do what you described. You need to filter the texture before scaling it, in order to have anti-aliasing.

– Bregalad
Mar 18 at 13:43






for each screen pixel, the system locates the corresponding data pixel, and if the answer lands between two data pixels, instead of just picking one or the other, it calculates a weighted average of the two. This is actually bilinear filtering, not anti-aliasing. Aliasing will still appear if you do what you described. You need to filter the texture before scaling it, in order to have anti-aliasing.

– Bregalad
Mar 18 at 13:43





3




3





Also — pedantically as ever! — if you calculate a weighted average of just two pixels, that's linear filtering. Do it in two dimensions to get bilinear filtering, which is then a weighted average of four pixels.

– Tommy
Mar 18 at 18:14






Also — pedantically as ever! — if you calculate a weighted average of just two pixels, that's linear filtering. Do it in two dimensions to get bilinear filtering, which is then a weighted average of four pixels.

– Tommy
Mar 18 at 18:14





3




3





Another pedantic answer is that you got hardware antialiasing once computers started outputting 320x200 to televisions: a home television doesn't have the sharpest focus in the world, so a certain amount of blur between pixels and across lines was normal, and in fact used to advantage by some software.

– Mark
Mar 18 at 22:29





Another pedantic answer is that you got hardware antialiasing once computers started outputting 320x200 to televisions: a home television doesn't have the sharpest focus in the world, so a certain amount of blur between pixels and across lines was normal, and in fact used to advantage by some software.

– Mark
Mar 18 at 22:29










3 Answers
3






active

oldest

votes


















23














There's something of a conflation here of antialiasing and filtering, I think. Antialiasing is literally preventing things from adopting aliases — e.g. if a diagonal line looks like a staircase rather than a diagonal line, it has adopted an alias. So you can imagine the same thing happening to textures as they rotate or take awkward angles. But it's always about accurately portraying the information you have.



Conversely, bilinear filtering is just a different way of guessing at what is between the information you have. It's about generating extra information — specifically positing that there's a linear gradient between every source pixel and the next, rather than a hard edge.



That being said: no, the SNES does neither. It's a simple nearest-neighbour colour grab only. Ditto for the scaling systems that precede it — including the Lynx in the home (and anywhere else you want to take it; I suggest the battery shop) and arcade machines like Sega's.



This is true up to the Saturn and Playstation. The Nintendo 64 has bilinear filtering, and everything after that unambiguously has both*.



So I believe the sources are correct.



*) you can technically fake antialiasing on anything with subpixel precision and alpha transparency by drawing multiple passes with slightly adjusted coordinates. So an N64 could do that, it'd just be expensive.






share|improve this answer


















  • 2





    @RossRidge to be slightly contrary, bilinear filtering makes a difference only when textures are larger than they should be. Mipmapping attempts to eliminate shimmering on distant polygons. Though trilinear filtering is blending between bilinear filtering of two mipmap levels.

    – Tommy
    Mar 18 at 11:23






  • 2





    (Mipmapping = providing additional scaled down copies of a texture ahead of time and picking one based on the output density when you draw, so that you're not trying to scale down very much in real time. So you can do an expensive down scaling and then just look it up. Usually a box filter or a Gaussian(-esque) low-pass filter.)

    – Tommy
    Mar 18 at 11:26












  • @RossRidge your comment is gone, so it's hard to discover my error. Such that it may help anybody else, my interpretation at the time was that you suggested that bilinear filtering helped to eliminate shimmer. Clearly an erroneous interpretation based on your new comment. But I don't think my responses, however misplaced, have subtracted value for other StackOverflow users, so that's something.

    – Tommy
    Mar 18 at 18:11



















9














[not a complete answer, but some remarks too big for a comment]



[also it focuses on games, as they are the most complex, real time application. Antialiasing for desktop UI and editors are a fairly insensitive issue and a subset thereof]



Need for Colours



A point, often forgotten from today's view is that antialiasing does need a video system systems with fine colour tuning to smoothen out edges/transitions. So either one with



  • a fairly large number of colours, covering in-between shades and intensities, or with


  • software definable colours from a larger palette than shown.


The first will require considerable more video memory, while the second needs more sophisticated video hardware using a Colour LUT. Early systems with just a few and in addition predefined colours, like on a 99/4, 2600 or C64, will not have it.



In contrast, the Atari 400/800 could select the displayed colours form a table of (up to) 128 (*1), which dis allow some really nifty shading effects and would have made a great support for antialiasing - except multiple colours within a line where quite restricted. Which brings the next point



(Bitmap)Memory



Systems, way into the 1980s were quite memory limited. Thus graphics where often character based - up to the extreme of making bitmap in special character formats. But antialiasing does need a bitmap based memory with the ability to colour each pixel separate. Even for a simple TV resolution of 320x200 (*2) needs 64000 bytes of screen memory when using with sufficient colours. An enormous and expensive amount for early games and still a lot to be handled in time by the 8 bit CPUs used thoughout the 1980s. It was way more conceivable to apply data reduction than go toward full bitmap.



Graphic Objects



Today we think in textures to be placed somewhere as objects to be manipulated. Beside the need for (3D) surfaces to place them this again is based on a flat bitmap view. For most time of game history movable graphic objects where sprites, layered on top of a background, added during line processing. These where simple insertions into the pixel stream. No processing involved. More often than not, also limited to a single colour in form of set/not set data. Their big advantage was a fee positioning without any regards to the background, this means no interaction of any kind but simple replacement. Multiple colours where usually made by layering multiple sprites at the same position. Again without any processing but a priority encoder for layers. The whole setup worked extreme well with low memory requirements and easy handling. Not as well with colours and sizes.



That's why systems went toward Bit-Blit, once bitmap frame buffers became easy available. With bit-blit operations objects of arbitrary size can be drawn on the screen - and it can be done in all colours available. While still 2D, this is already way more like today's understanding of textures than sprites are.



And since it is based on well defined operations between frame buffer (background) and object, antialiasing operations can for the first time be performed by the bit bliting hardware.



Use-Case



Each and every technology needs a use case beyond the desk of an engineer/hacker. So even with ignoring cost, there was no real need for Antialising and likewise technology until the early 1990s. Games did quite well improve from being black and white (Space Invaders) over some colours (Galaxian in 1979 was the first colour game) and more of that (Double Dragonin 1987). Games using 'simple' hardware were that advanced, that early polygon based boards like Namcos System 21 of 1987, definitely not a lightweight system, looked like a step back to users (*3). And only such systems would benefit from antialiasing.



Similar with resolution. Back in 'the good old days' hardware was fixed definition and software tightly coupled. Game hardware was made for a fixed screen resolution (*4), usually TV like. There was no real need to up or downscale for newer screens with a different resolution. If a sprite was needed in different sizes, simply having additional copies in ROM solved it without any additional hardware.



Antialiasing became not an issue before games either had to work in different resolutions or games where based on a real 3D environment. Both became a case in the 1990 and on PCs



Conclusion



So while there happened many more details in timeline and hardware variation, it is safe to state that antialiasing as we know it today does need a certain level in memory, bitmap and colour available and how objects are handled to make it viable. A level that wasn't reached (in general) before ~1990. And like all technology, it needs not only to be enabled by engineering, but it's worthless without the need for an application.



That picture changes of course, and as noted by the question, when running old game data on modern hardware. The now standard features allow to use exactly the same advantages, like smooth scaling and blending, to adapt them to today's screens.




*1 - In fact, already the 2600 offered a quite remarkable colour capacity. But with it's low 'resolution' antialiasing doesn't make much sense.



*2 - The Atari 800 could already do 384x240 in overscan and many arcade machines did use CRTs in similar or even better Resolution. Keep in mind, the limit for colour/pixel density on TV is due the transfer encoding (NTSC, PAL, etc.), not the CRT. Arcade machines didn't had that limitation, so better resolutions where quite within the CTR specs. Resulting in even more memory.



*3 - Compare the bulky graphics of Winning Run using two 68k and 5 DSPs with the smooth textures of Double Dragon with only three 8 bit CPUs



*4 - Screen resolution, the capabilities of the intended display, usually a TV (like) screen, not graphics resolution/mode displayed on this screen resolution.






share|improve this answer
































    6














    This was in no way part of a hardware assisted 3D pipeline, but there were attempts made in PC-class hardware to achieve anti-aliasing even as early as 1990. Edsun Labs made a drop in replacement RAMDAC for VGA boards that used some of the 256 possible color values as opcodes that would enable color blending between pixels on a line. This let a nominally 8bpp VGA board draw more colors - colors that were useful specifically from the perspective of drawing smoother images.



    This article talks about the specific implementation.



    https://www.analog.com/media/en/analog-dialogue/volume-24/number-3/articles/volume24-number3.pdf#page=3



    Michael Abrash also wrote about the product and its strengths and limitations in Dr. Dobb's Journal:



    http://archive.gamedev.net/archive/reference/articles/article371.html



    At the time, the product got some press and then pretty much immediately died out. CEG was a low-cost play more than anything else, and it suffered from being poorly suited for displaying dynamic graphics. (Which were very much on the rise through both Windows and various games.)






    share|improve this answer






















      Your Answer








      StackExchange.ready(function()
      var channelOptions =
      tags: "".split(" "),
      id: "648"
      ;
      initTagRenderer("".split(" "), "".split(" "), channelOptions);

      StackExchange.using("externalEditor", function()
      // Have to fire editor after snippets, if snippets enabled
      if (StackExchange.settings.snippets.snippetsEnabled)
      StackExchange.using("snippets", function()
      createEditor();
      );

      else
      createEditor();

      );

      function createEditor()
      StackExchange.prepareEditor(
      heartbeatType: 'answer',
      autoActivateHeartbeat: false,
      convertImagesToLinks: false,
      noModals: true,
      showLowRepImageUploadWarning: true,
      reputationToPostImages: null,
      bindNavPrevention: true,
      postfix: "",
      imageUploader:
      brandingHtml: "Powered by u003ca class="icon-imgur-white" href="https://imgur.com/"u003eu003c/au003e",
      contentPolicyHtml: "User contributions licensed under u003ca href="https://creativecommons.org/licenses/by-sa/3.0/"u003ecc by-sa 3.0 with attribution requiredu003c/au003e u003ca href="https://stackoverflow.com/legal/content-policy"u003e(content policy)u003c/au003e",
      allowUrls: true
      ,
      noCode: true, onDemand: true,
      discardSelector: ".discard-answer"
      ,immediatelyShowMarkdownHelp:true
      );



      );













      draft saved

      draft discarded


















      StackExchange.ready(
      function ()
      StackExchange.openid.initPostLogin('.new-post-login', 'https%3a%2f%2fretrocomputing.stackexchange.com%2fquestions%2f9368%2fwhen-did-hardware-antialiasing-start-being-available%23new-answer', 'question_page');

      );

      Post as a guest















      Required, but never shown

























      3 Answers
      3






      active

      oldest

      votes








      3 Answers
      3






      active

      oldest

      votes









      active

      oldest

      votes






      active

      oldest

      votes









      23














      There's something of a conflation here of antialiasing and filtering, I think. Antialiasing is literally preventing things from adopting aliases — e.g. if a diagonal line looks like a staircase rather than a diagonal line, it has adopted an alias. So you can imagine the same thing happening to textures as they rotate or take awkward angles. But it's always about accurately portraying the information you have.



      Conversely, bilinear filtering is just a different way of guessing at what is between the information you have. It's about generating extra information — specifically positing that there's a linear gradient between every source pixel and the next, rather than a hard edge.



      That being said: no, the SNES does neither. It's a simple nearest-neighbour colour grab only. Ditto for the scaling systems that precede it — including the Lynx in the home (and anywhere else you want to take it; I suggest the battery shop) and arcade machines like Sega's.



      This is true up to the Saturn and Playstation. The Nintendo 64 has bilinear filtering, and everything after that unambiguously has both*.



      So I believe the sources are correct.



      *) you can technically fake antialiasing on anything with subpixel precision and alpha transparency by drawing multiple passes with slightly adjusted coordinates. So an N64 could do that, it'd just be expensive.






      share|improve this answer


















      • 2





        @RossRidge to be slightly contrary, bilinear filtering makes a difference only when textures are larger than they should be. Mipmapping attempts to eliminate shimmering on distant polygons. Though trilinear filtering is blending between bilinear filtering of two mipmap levels.

        – Tommy
        Mar 18 at 11:23






      • 2





        (Mipmapping = providing additional scaled down copies of a texture ahead of time and picking one based on the output density when you draw, so that you're not trying to scale down very much in real time. So you can do an expensive down scaling and then just look it up. Usually a box filter or a Gaussian(-esque) low-pass filter.)

        – Tommy
        Mar 18 at 11:26












      • @RossRidge your comment is gone, so it's hard to discover my error. Such that it may help anybody else, my interpretation at the time was that you suggested that bilinear filtering helped to eliminate shimmer. Clearly an erroneous interpretation based on your new comment. But I don't think my responses, however misplaced, have subtracted value for other StackOverflow users, so that's something.

        – Tommy
        Mar 18 at 18:11
















      23














      There's something of a conflation here of antialiasing and filtering, I think. Antialiasing is literally preventing things from adopting aliases — e.g. if a diagonal line looks like a staircase rather than a diagonal line, it has adopted an alias. So you can imagine the same thing happening to textures as they rotate or take awkward angles. But it's always about accurately portraying the information you have.



      Conversely, bilinear filtering is just a different way of guessing at what is between the information you have. It's about generating extra information — specifically positing that there's a linear gradient between every source pixel and the next, rather than a hard edge.



      That being said: no, the SNES does neither. It's a simple nearest-neighbour colour grab only. Ditto for the scaling systems that precede it — including the Lynx in the home (and anywhere else you want to take it; I suggest the battery shop) and arcade machines like Sega's.



      This is true up to the Saturn and Playstation. The Nintendo 64 has bilinear filtering, and everything after that unambiguously has both*.



      So I believe the sources are correct.



      *) you can technically fake antialiasing on anything with subpixel precision and alpha transparency by drawing multiple passes with slightly adjusted coordinates. So an N64 could do that, it'd just be expensive.






      share|improve this answer


















      • 2





        @RossRidge to be slightly contrary, bilinear filtering makes a difference only when textures are larger than they should be. Mipmapping attempts to eliminate shimmering on distant polygons. Though trilinear filtering is blending between bilinear filtering of two mipmap levels.

        – Tommy
        Mar 18 at 11:23






      • 2





        (Mipmapping = providing additional scaled down copies of a texture ahead of time and picking one based on the output density when you draw, so that you're not trying to scale down very much in real time. So you can do an expensive down scaling and then just look it up. Usually a box filter or a Gaussian(-esque) low-pass filter.)

        – Tommy
        Mar 18 at 11:26












      • @RossRidge your comment is gone, so it's hard to discover my error. Such that it may help anybody else, my interpretation at the time was that you suggested that bilinear filtering helped to eliminate shimmer. Clearly an erroneous interpretation based on your new comment. But I don't think my responses, however misplaced, have subtracted value for other StackOverflow users, so that's something.

        – Tommy
        Mar 18 at 18:11














      23












      23








      23







      There's something of a conflation here of antialiasing and filtering, I think. Antialiasing is literally preventing things from adopting aliases — e.g. if a diagonal line looks like a staircase rather than a diagonal line, it has adopted an alias. So you can imagine the same thing happening to textures as they rotate or take awkward angles. But it's always about accurately portraying the information you have.



      Conversely, bilinear filtering is just a different way of guessing at what is between the information you have. It's about generating extra information — specifically positing that there's a linear gradient between every source pixel and the next, rather than a hard edge.



      That being said: no, the SNES does neither. It's a simple nearest-neighbour colour grab only. Ditto for the scaling systems that precede it — including the Lynx in the home (and anywhere else you want to take it; I suggest the battery shop) and arcade machines like Sega's.



      This is true up to the Saturn and Playstation. The Nintendo 64 has bilinear filtering, and everything after that unambiguously has both*.



      So I believe the sources are correct.



      *) you can technically fake antialiasing on anything with subpixel precision and alpha transparency by drawing multiple passes with slightly adjusted coordinates. So an N64 could do that, it'd just be expensive.






      share|improve this answer













      There's something of a conflation here of antialiasing and filtering, I think. Antialiasing is literally preventing things from adopting aliases — e.g. if a diagonal line looks like a staircase rather than a diagonal line, it has adopted an alias. So you can imagine the same thing happening to textures as they rotate or take awkward angles. But it's always about accurately portraying the information you have.



      Conversely, bilinear filtering is just a different way of guessing at what is between the information you have. It's about generating extra information — specifically positing that there's a linear gradient between every source pixel and the next, rather than a hard edge.



      That being said: no, the SNES does neither. It's a simple nearest-neighbour colour grab only. Ditto for the scaling systems that precede it — including the Lynx in the home (and anywhere else you want to take it; I suggest the battery shop) and arcade machines like Sega's.



      This is true up to the Saturn and Playstation. The Nintendo 64 has bilinear filtering, and everything after that unambiguously has both*.



      So I believe the sources are correct.



      *) you can technically fake antialiasing on anything with subpixel precision and alpha transparency by drawing multiple passes with slightly adjusted coordinates. So an N64 could do that, it'd just be expensive.







      share|improve this answer












      share|improve this answer



      share|improve this answer










      answered Mar 18 at 3:05









      TommyTommy

      15.4k14376




      15.4k14376







      • 2





        @RossRidge to be slightly contrary, bilinear filtering makes a difference only when textures are larger than they should be. Mipmapping attempts to eliminate shimmering on distant polygons. Though trilinear filtering is blending between bilinear filtering of two mipmap levels.

        – Tommy
        Mar 18 at 11:23






      • 2





        (Mipmapping = providing additional scaled down copies of a texture ahead of time and picking one based on the output density when you draw, so that you're not trying to scale down very much in real time. So you can do an expensive down scaling and then just look it up. Usually a box filter or a Gaussian(-esque) low-pass filter.)

        – Tommy
        Mar 18 at 11:26












      • @RossRidge your comment is gone, so it's hard to discover my error. Such that it may help anybody else, my interpretation at the time was that you suggested that bilinear filtering helped to eliminate shimmer. Clearly an erroneous interpretation based on your new comment. But I don't think my responses, however misplaced, have subtracted value for other StackOverflow users, so that's something.

        – Tommy
        Mar 18 at 18:11













      • 2





        @RossRidge to be slightly contrary, bilinear filtering makes a difference only when textures are larger than they should be. Mipmapping attempts to eliminate shimmering on distant polygons. Though trilinear filtering is blending between bilinear filtering of two mipmap levels.

        – Tommy
        Mar 18 at 11:23






      • 2





        (Mipmapping = providing additional scaled down copies of a texture ahead of time and picking one based on the output density when you draw, so that you're not trying to scale down very much in real time. So you can do an expensive down scaling and then just look it up. Usually a box filter or a Gaussian(-esque) low-pass filter.)

        – Tommy
        Mar 18 at 11:26












      • @RossRidge your comment is gone, so it's hard to discover my error. Such that it may help anybody else, my interpretation at the time was that you suggested that bilinear filtering helped to eliminate shimmer. Clearly an erroneous interpretation based on your new comment. But I don't think my responses, however misplaced, have subtracted value for other StackOverflow users, so that's something.

        – Tommy
        Mar 18 at 18:11








      2




      2





      @RossRidge to be slightly contrary, bilinear filtering makes a difference only when textures are larger than they should be. Mipmapping attempts to eliminate shimmering on distant polygons. Though trilinear filtering is blending between bilinear filtering of two mipmap levels.

      – Tommy
      Mar 18 at 11:23





      @RossRidge to be slightly contrary, bilinear filtering makes a difference only when textures are larger than they should be. Mipmapping attempts to eliminate shimmering on distant polygons. Though trilinear filtering is blending between bilinear filtering of two mipmap levels.

      – Tommy
      Mar 18 at 11:23




      2




      2





      (Mipmapping = providing additional scaled down copies of a texture ahead of time and picking one based on the output density when you draw, so that you're not trying to scale down very much in real time. So you can do an expensive down scaling and then just look it up. Usually a box filter or a Gaussian(-esque) low-pass filter.)

      – Tommy
      Mar 18 at 11:26






      (Mipmapping = providing additional scaled down copies of a texture ahead of time and picking one based on the output density when you draw, so that you're not trying to scale down very much in real time. So you can do an expensive down scaling and then just look it up. Usually a box filter or a Gaussian(-esque) low-pass filter.)

      – Tommy
      Mar 18 at 11:26














      @RossRidge your comment is gone, so it's hard to discover my error. Such that it may help anybody else, my interpretation at the time was that you suggested that bilinear filtering helped to eliminate shimmer. Clearly an erroneous interpretation based on your new comment. But I don't think my responses, however misplaced, have subtracted value for other StackOverflow users, so that's something.

      – Tommy
      Mar 18 at 18:11






      @RossRidge your comment is gone, so it's hard to discover my error. Such that it may help anybody else, my interpretation at the time was that you suggested that bilinear filtering helped to eliminate shimmer. Clearly an erroneous interpretation based on your new comment. But I don't think my responses, however misplaced, have subtracted value for other StackOverflow users, so that's something.

      – Tommy
      Mar 18 at 18:11












      9














      [not a complete answer, but some remarks too big for a comment]



      [also it focuses on games, as they are the most complex, real time application. Antialiasing for desktop UI and editors are a fairly insensitive issue and a subset thereof]



      Need for Colours



      A point, often forgotten from today's view is that antialiasing does need a video system systems with fine colour tuning to smoothen out edges/transitions. So either one with



      • a fairly large number of colours, covering in-between shades and intensities, or with


      • software definable colours from a larger palette than shown.


      The first will require considerable more video memory, while the second needs more sophisticated video hardware using a Colour LUT. Early systems with just a few and in addition predefined colours, like on a 99/4, 2600 or C64, will not have it.



      In contrast, the Atari 400/800 could select the displayed colours form a table of (up to) 128 (*1), which dis allow some really nifty shading effects and would have made a great support for antialiasing - except multiple colours within a line where quite restricted. Which brings the next point



      (Bitmap)Memory



      Systems, way into the 1980s were quite memory limited. Thus graphics where often character based - up to the extreme of making bitmap in special character formats. But antialiasing does need a bitmap based memory with the ability to colour each pixel separate. Even for a simple TV resolution of 320x200 (*2) needs 64000 bytes of screen memory when using with sufficient colours. An enormous and expensive amount for early games and still a lot to be handled in time by the 8 bit CPUs used thoughout the 1980s. It was way more conceivable to apply data reduction than go toward full bitmap.



      Graphic Objects



      Today we think in textures to be placed somewhere as objects to be manipulated. Beside the need for (3D) surfaces to place them this again is based on a flat bitmap view. For most time of game history movable graphic objects where sprites, layered on top of a background, added during line processing. These where simple insertions into the pixel stream. No processing involved. More often than not, also limited to a single colour in form of set/not set data. Their big advantage was a fee positioning without any regards to the background, this means no interaction of any kind but simple replacement. Multiple colours where usually made by layering multiple sprites at the same position. Again without any processing but a priority encoder for layers. The whole setup worked extreme well with low memory requirements and easy handling. Not as well with colours and sizes.



      That's why systems went toward Bit-Blit, once bitmap frame buffers became easy available. With bit-blit operations objects of arbitrary size can be drawn on the screen - and it can be done in all colours available. While still 2D, this is already way more like today's understanding of textures than sprites are.



      And since it is based on well defined operations between frame buffer (background) and object, antialiasing operations can for the first time be performed by the bit bliting hardware.



      Use-Case



      Each and every technology needs a use case beyond the desk of an engineer/hacker. So even with ignoring cost, there was no real need for Antialising and likewise technology until the early 1990s. Games did quite well improve from being black and white (Space Invaders) over some colours (Galaxian in 1979 was the first colour game) and more of that (Double Dragonin 1987). Games using 'simple' hardware were that advanced, that early polygon based boards like Namcos System 21 of 1987, definitely not a lightweight system, looked like a step back to users (*3). And only such systems would benefit from antialiasing.



      Similar with resolution. Back in 'the good old days' hardware was fixed definition and software tightly coupled. Game hardware was made for a fixed screen resolution (*4), usually TV like. There was no real need to up or downscale for newer screens with a different resolution. If a sprite was needed in different sizes, simply having additional copies in ROM solved it without any additional hardware.



      Antialiasing became not an issue before games either had to work in different resolutions or games where based on a real 3D environment. Both became a case in the 1990 and on PCs



      Conclusion



      So while there happened many more details in timeline and hardware variation, it is safe to state that antialiasing as we know it today does need a certain level in memory, bitmap and colour available and how objects are handled to make it viable. A level that wasn't reached (in general) before ~1990. And like all technology, it needs not only to be enabled by engineering, but it's worthless without the need for an application.



      That picture changes of course, and as noted by the question, when running old game data on modern hardware. The now standard features allow to use exactly the same advantages, like smooth scaling and blending, to adapt them to today's screens.




      *1 - In fact, already the 2600 offered a quite remarkable colour capacity. But with it's low 'resolution' antialiasing doesn't make much sense.



      *2 - The Atari 800 could already do 384x240 in overscan and many arcade machines did use CRTs in similar or even better Resolution. Keep in mind, the limit for colour/pixel density on TV is due the transfer encoding (NTSC, PAL, etc.), not the CRT. Arcade machines didn't had that limitation, so better resolutions where quite within the CTR specs. Resulting in even more memory.



      *3 - Compare the bulky graphics of Winning Run using two 68k and 5 DSPs with the smooth textures of Double Dragon with only three 8 bit CPUs



      *4 - Screen resolution, the capabilities of the intended display, usually a TV (like) screen, not graphics resolution/mode displayed on this screen resolution.






      share|improve this answer





























        9














        [not a complete answer, but some remarks too big for a comment]



        [also it focuses on games, as they are the most complex, real time application. Antialiasing for desktop UI and editors are a fairly insensitive issue and a subset thereof]



        Need for Colours



        A point, often forgotten from today's view is that antialiasing does need a video system systems with fine colour tuning to smoothen out edges/transitions. So either one with



        • a fairly large number of colours, covering in-between shades and intensities, or with


        • software definable colours from a larger palette than shown.


        The first will require considerable more video memory, while the second needs more sophisticated video hardware using a Colour LUT. Early systems with just a few and in addition predefined colours, like on a 99/4, 2600 or C64, will not have it.



        In contrast, the Atari 400/800 could select the displayed colours form a table of (up to) 128 (*1), which dis allow some really nifty shading effects and would have made a great support for antialiasing - except multiple colours within a line where quite restricted. Which brings the next point



        (Bitmap)Memory



        Systems, way into the 1980s were quite memory limited. Thus graphics where often character based - up to the extreme of making bitmap in special character formats. But antialiasing does need a bitmap based memory with the ability to colour each pixel separate. Even for a simple TV resolution of 320x200 (*2) needs 64000 bytes of screen memory when using with sufficient colours. An enormous and expensive amount for early games and still a lot to be handled in time by the 8 bit CPUs used thoughout the 1980s. It was way more conceivable to apply data reduction than go toward full bitmap.



        Graphic Objects



        Today we think in textures to be placed somewhere as objects to be manipulated. Beside the need for (3D) surfaces to place them this again is based on a flat bitmap view. For most time of game history movable graphic objects where sprites, layered on top of a background, added during line processing. These where simple insertions into the pixel stream. No processing involved. More often than not, also limited to a single colour in form of set/not set data. Their big advantage was a fee positioning without any regards to the background, this means no interaction of any kind but simple replacement. Multiple colours where usually made by layering multiple sprites at the same position. Again without any processing but a priority encoder for layers. The whole setup worked extreme well with low memory requirements and easy handling. Not as well with colours and sizes.



        That's why systems went toward Bit-Blit, once bitmap frame buffers became easy available. With bit-blit operations objects of arbitrary size can be drawn on the screen - and it can be done in all colours available. While still 2D, this is already way more like today's understanding of textures than sprites are.



        And since it is based on well defined operations between frame buffer (background) and object, antialiasing operations can for the first time be performed by the bit bliting hardware.



        Use-Case



        Each and every technology needs a use case beyond the desk of an engineer/hacker. So even with ignoring cost, there was no real need for Antialising and likewise technology until the early 1990s. Games did quite well improve from being black and white (Space Invaders) over some colours (Galaxian in 1979 was the first colour game) and more of that (Double Dragonin 1987). Games using 'simple' hardware were that advanced, that early polygon based boards like Namcos System 21 of 1987, definitely not a lightweight system, looked like a step back to users (*3). And only such systems would benefit from antialiasing.



        Similar with resolution. Back in 'the good old days' hardware was fixed definition and software tightly coupled. Game hardware was made for a fixed screen resolution (*4), usually TV like. There was no real need to up or downscale for newer screens with a different resolution. If a sprite was needed in different sizes, simply having additional copies in ROM solved it without any additional hardware.



        Antialiasing became not an issue before games either had to work in different resolutions or games where based on a real 3D environment. Both became a case in the 1990 and on PCs



        Conclusion



        So while there happened many more details in timeline and hardware variation, it is safe to state that antialiasing as we know it today does need a certain level in memory, bitmap and colour available and how objects are handled to make it viable. A level that wasn't reached (in general) before ~1990. And like all technology, it needs not only to be enabled by engineering, but it's worthless without the need for an application.



        That picture changes of course, and as noted by the question, when running old game data on modern hardware. The now standard features allow to use exactly the same advantages, like smooth scaling and blending, to adapt them to today's screens.




        *1 - In fact, already the 2600 offered a quite remarkable colour capacity. But with it's low 'resolution' antialiasing doesn't make much sense.



        *2 - The Atari 800 could already do 384x240 in overscan and many arcade machines did use CRTs in similar or even better Resolution. Keep in mind, the limit for colour/pixel density on TV is due the transfer encoding (NTSC, PAL, etc.), not the CRT. Arcade machines didn't had that limitation, so better resolutions where quite within the CTR specs. Resulting in even more memory.



        *3 - Compare the bulky graphics of Winning Run using two 68k and 5 DSPs with the smooth textures of Double Dragon with only three 8 bit CPUs



        *4 - Screen resolution, the capabilities of the intended display, usually a TV (like) screen, not graphics resolution/mode displayed on this screen resolution.






        share|improve this answer



























          9












          9








          9







          [not a complete answer, but some remarks too big for a comment]



          [also it focuses on games, as they are the most complex, real time application. Antialiasing for desktop UI and editors are a fairly insensitive issue and a subset thereof]



          Need for Colours



          A point, often forgotten from today's view is that antialiasing does need a video system systems with fine colour tuning to smoothen out edges/transitions. So either one with



          • a fairly large number of colours, covering in-between shades and intensities, or with


          • software definable colours from a larger palette than shown.


          The first will require considerable more video memory, while the second needs more sophisticated video hardware using a Colour LUT. Early systems with just a few and in addition predefined colours, like on a 99/4, 2600 or C64, will not have it.



          In contrast, the Atari 400/800 could select the displayed colours form a table of (up to) 128 (*1), which dis allow some really nifty shading effects and would have made a great support for antialiasing - except multiple colours within a line where quite restricted. Which brings the next point



          (Bitmap)Memory



          Systems, way into the 1980s were quite memory limited. Thus graphics where often character based - up to the extreme of making bitmap in special character formats. But antialiasing does need a bitmap based memory with the ability to colour each pixel separate. Even for a simple TV resolution of 320x200 (*2) needs 64000 bytes of screen memory when using with sufficient colours. An enormous and expensive amount for early games and still a lot to be handled in time by the 8 bit CPUs used thoughout the 1980s. It was way more conceivable to apply data reduction than go toward full bitmap.



          Graphic Objects



          Today we think in textures to be placed somewhere as objects to be manipulated. Beside the need for (3D) surfaces to place them this again is based on a flat bitmap view. For most time of game history movable graphic objects where sprites, layered on top of a background, added during line processing. These where simple insertions into the pixel stream. No processing involved. More often than not, also limited to a single colour in form of set/not set data. Their big advantage was a fee positioning without any regards to the background, this means no interaction of any kind but simple replacement. Multiple colours where usually made by layering multiple sprites at the same position. Again without any processing but a priority encoder for layers. The whole setup worked extreme well with low memory requirements and easy handling. Not as well with colours and sizes.



          That's why systems went toward Bit-Blit, once bitmap frame buffers became easy available. With bit-blit operations objects of arbitrary size can be drawn on the screen - and it can be done in all colours available. While still 2D, this is already way more like today's understanding of textures than sprites are.



          And since it is based on well defined operations between frame buffer (background) and object, antialiasing operations can for the first time be performed by the bit bliting hardware.



          Use-Case



          Each and every technology needs a use case beyond the desk of an engineer/hacker. So even with ignoring cost, there was no real need for Antialising and likewise technology until the early 1990s. Games did quite well improve from being black and white (Space Invaders) over some colours (Galaxian in 1979 was the first colour game) and more of that (Double Dragonin 1987). Games using 'simple' hardware were that advanced, that early polygon based boards like Namcos System 21 of 1987, definitely not a lightweight system, looked like a step back to users (*3). And only such systems would benefit from antialiasing.



          Similar with resolution. Back in 'the good old days' hardware was fixed definition and software tightly coupled. Game hardware was made for a fixed screen resolution (*4), usually TV like. There was no real need to up or downscale for newer screens with a different resolution. If a sprite was needed in different sizes, simply having additional copies in ROM solved it without any additional hardware.



          Antialiasing became not an issue before games either had to work in different resolutions or games where based on a real 3D environment. Both became a case in the 1990 and on PCs



          Conclusion



          So while there happened many more details in timeline and hardware variation, it is safe to state that antialiasing as we know it today does need a certain level in memory, bitmap and colour available and how objects are handled to make it viable. A level that wasn't reached (in general) before ~1990. And like all technology, it needs not only to be enabled by engineering, but it's worthless without the need for an application.



          That picture changes of course, and as noted by the question, when running old game data on modern hardware. The now standard features allow to use exactly the same advantages, like smooth scaling and blending, to adapt them to today's screens.




          *1 - In fact, already the 2600 offered a quite remarkable colour capacity. But with it's low 'resolution' antialiasing doesn't make much sense.



          *2 - The Atari 800 could already do 384x240 in overscan and many arcade machines did use CRTs in similar or even better Resolution. Keep in mind, the limit for colour/pixel density on TV is due the transfer encoding (NTSC, PAL, etc.), not the CRT. Arcade machines didn't had that limitation, so better resolutions where quite within the CTR specs. Resulting in even more memory.



          *3 - Compare the bulky graphics of Winning Run using two 68k and 5 DSPs with the smooth textures of Double Dragon with only three 8 bit CPUs



          *4 - Screen resolution, the capabilities of the intended display, usually a TV (like) screen, not graphics resolution/mode displayed on this screen resolution.






          share|improve this answer















          [not a complete answer, but some remarks too big for a comment]



          [also it focuses on games, as they are the most complex, real time application. Antialiasing for desktop UI and editors are a fairly insensitive issue and a subset thereof]



          Need for Colours



          A point, often forgotten from today's view is that antialiasing does need a video system systems with fine colour tuning to smoothen out edges/transitions. So either one with



          • a fairly large number of colours, covering in-between shades and intensities, or with


          • software definable colours from a larger palette than shown.


          The first will require considerable more video memory, while the second needs more sophisticated video hardware using a Colour LUT. Early systems with just a few and in addition predefined colours, like on a 99/4, 2600 or C64, will not have it.



          In contrast, the Atari 400/800 could select the displayed colours form a table of (up to) 128 (*1), which dis allow some really nifty shading effects and would have made a great support for antialiasing - except multiple colours within a line where quite restricted. Which brings the next point



          (Bitmap)Memory



          Systems, way into the 1980s were quite memory limited. Thus graphics where often character based - up to the extreme of making bitmap in special character formats. But antialiasing does need a bitmap based memory with the ability to colour each pixel separate. Even for a simple TV resolution of 320x200 (*2) needs 64000 bytes of screen memory when using with sufficient colours. An enormous and expensive amount for early games and still a lot to be handled in time by the 8 bit CPUs used thoughout the 1980s. It was way more conceivable to apply data reduction than go toward full bitmap.



          Graphic Objects



          Today we think in textures to be placed somewhere as objects to be manipulated. Beside the need for (3D) surfaces to place them this again is based on a flat bitmap view. For most time of game history movable graphic objects where sprites, layered on top of a background, added during line processing. These where simple insertions into the pixel stream. No processing involved. More often than not, also limited to a single colour in form of set/not set data. Their big advantage was a fee positioning without any regards to the background, this means no interaction of any kind but simple replacement. Multiple colours where usually made by layering multiple sprites at the same position. Again without any processing but a priority encoder for layers. The whole setup worked extreme well with low memory requirements and easy handling. Not as well with colours and sizes.



          That's why systems went toward Bit-Blit, once bitmap frame buffers became easy available. With bit-blit operations objects of arbitrary size can be drawn on the screen - and it can be done in all colours available. While still 2D, this is already way more like today's understanding of textures than sprites are.



          And since it is based on well defined operations between frame buffer (background) and object, antialiasing operations can for the first time be performed by the bit bliting hardware.



          Use-Case



          Each and every technology needs a use case beyond the desk of an engineer/hacker. So even with ignoring cost, there was no real need for Antialising and likewise technology until the early 1990s. Games did quite well improve from being black and white (Space Invaders) over some colours (Galaxian in 1979 was the first colour game) and more of that (Double Dragonin 1987). Games using 'simple' hardware were that advanced, that early polygon based boards like Namcos System 21 of 1987, definitely not a lightweight system, looked like a step back to users (*3). And only such systems would benefit from antialiasing.



          Similar with resolution. Back in 'the good old days' hardware was fixed definition and software tightly coupled. Game hardware was made for a fixed screen resolution (*4), usually TV like. There was no real need to up or downscale for newer screens with a different resolution. If a sprite was needed in different sizes, simply having additional copies in ROM solved it without any additional hardware.



          Antialiasing became not an issue before games either had to work in different resolutions or games where based on a real 3D environment. Both became a case in the 1990 and on PCs



          Conclusion



          So while there happened many more details in timeline and hardware variation, it is safe to state that antialiasing as we know it today does need a certain level in memory, bitmap and colour available and how objects are handled to make it viable. A level that wasn't reached (in general) before ~1990. And like all technology, it needs not only to be enabled by engineering, but it's worthless without the need for an application.



          That picture changes of course, and as noted by the question, when running old game data on modern hardware. The now standard features allow to use exactly the same advantages, like smooth scaling and blending, to adapt them to today's screens.




          *1 - In fact, already the 2600 offered a quite remarkable colour capacity. But with it's low 'resolution' antialiasing doesn't make much sense.



          *2 - The Atari 800 could already do 384x240 in overscan and many arcade machines did use CRTs in similar or even better Resolution. Keep in mind, the limit for colour/pixel density on TV is due the transfer encoding (NTSC, PAL, etc.), not the CRT. Arcade machines didn't had that limitation, so better resolutions where quite within the CTR specs. Resulting in even more memory.



          *3 - Compare the bulky graphics of Winning Run using two 68k and 5 DSPs with the smooth textures of Double Dragon with only three 8 bit CPUs



          *4 - Screen resolution, the capabilities of the intended display, usually a TV (like) screen, not graphics resolution/mode displayed on this screen resolution.







          share|improve this answer














          share|improve this answer



          share|improve this answer








          edited Mar 18 at 15:21









          manassehkatz

          3,032623




          3,032623










          answered Mar 18 at 13:05









          RaffzahnRaffzahn

          53.5k6132217




          53.5k6132217





















              6














              This was in no way part of a hardware assisted 3D pipeline, but there were attempts made in PC-class hardware to achieve anti-aliasing even as early as 1990. Edsun Labs made a drop in replacement RAMDAC for VGA boards that used some of the 256 possible color values as opcodes that would enable color blending between pixels on a line. This let a nominally 8bpp VGA board draw more colors - colors that were useful specifically from the perspective of drawing smoother images.



              This article talks about the specific implementation.



              https://www.analog.com/media/en/analog-dialogue/volume-24/number-3/articles/volume24-number3.pdf#page=3



              Michael Abrash also wrote about the product and its strengths and limitations in Dr. Dobb's Journal:



              http://archive.gamedev.net/archive/reference/articles/article371.html



              At the time, the product got some press and then pretty much immediately died out. CEG was a low-cost play more than anything else, and it suffered from being poorly suited for displaying dynamic graphics. (Which were very much on the rise through both Windows and various games.)






              share|improve this answer



























                6














                This was in no way part of a hardware assisted 3D pipeline, but there were attempts made in PC-class hardware to achieve anti-aliasing even as early as 1990. Edsun Labs made a drop in replacement RAMDAC for VGA boards that used some of the 256 possible color values as opcodes that would enable color blending between pixels on a line. This let a nominally 8bpp VGA board draw more colors - colors that were useful specifically from the perspective of drawing smoother images.



                This article talks about the specific implementation.



                https://www.analog.com/media/en/analog-dialogue/volume-24/number-3/articles/volume24-number3.pdf#page=3



                Michael Abrash also wrote about the product and its strengths and limitations in Dr. Dobb's Journal:



                http://archive.gamedev.net/archive/reference/articles/article371.html



                At the time, the product got some press and then pretty much immediately died out. CEG was a low-cost play more than anything else, and it suffered from being poorly suited for displaying dynamic graphics. (Which were very much on the rise through both Windows and various games.)






                share|improve this answer

























                  6












                  6








                  6







                  This was in no way part of a hardware assisted 3D pipeline, but there were attempts made in PC-class hardware to achieve anti-aliasing even as early as 1990. Edsun Labs made a drop in replacement RAMDAC for VGA boards that used some of the 256 possible color values as opcodes that would enable color blending between pixels on a line. This let a nominally 8bpp VGA board draw more colors - colors that were useful specifically from the perspective of drawing smoother images.



                  This article talks about the specific implementation.



                  https://www.analog.com/media/en/analog-dialogue/volume-24/number-3/articles/volume24-number3.pdf#page=3



                  Michael Abrash also wrote about the product and its strengths and limitations in Dr. Dobb's Journal:



                  http://archive.gamedev.net/archive/reference/articles/article371.html



                  At the time, the product got some press and then pretty much immediately died out. CEG was a low-cost play more than anything else, and it suffered from being poorly suited for displaying dynamic graphics. (Which were very much on the rise through both Windows and various games.)






                  share|improve this answer













                  This was in no way part of a hardware assisted 3D pipeline, but there were attempts made in PC-class hardware to achieve anti-aliasing even as early as 1990. Edsun Labs made a drop in replacement RAMDAC for VGA boards that used some of the 256 possible color values as opcodes that would enable color blending between pixels on a line. This let a nominally 8bpp VGA board draw more colors - colors that were useful specifically from the perspective of drawing smoother images.



                  This article talks about the specific implementation.



                  https://www.analog.com/media/en/analog-dialogue/volume-24/number-3/articles/volume24-number3.pdf#page=3



                  Michael Abrash also wrote about the product and its strengths and limitations in Dr. Dobb's Journal:



                  http://archive.gamedev.net/archive/reference/articles/article371.html



                  At the time, the product got some press and then pretty much immediately died out. CEG was a low-cost play more than anything else, and it suffered from being poorly suited for displaying dynamic graphics. (Which were very much on the rise through both Windows and various games.)







                  share|improve this answer












                  share|improve this answer



                  share|improve this answer










                  answered Mar 18 at 13:07









                  mschaefmschaef

                  2,321714




                  2,321714



























                      draft saved

                      draft discarded
















































                      Thanks for contributing an answer to Retrocomputing Stack Exchange!


                      • Please be sure to answer the question. Provide details and share your research!

                      But avoid


                      • Asking for help, clarification, or responding to other answers.

                      • Making statements based on opinion; back them up with references or personal experience.

                      To learn more, see our tips on writing great answers.




                      draft saved


                      draft discarded














                      StackExchange.ready(
                      function ()
                      StackExchange.openid.initPostLogin('.new-post-login', 'https%3a%2f%2fretrocomputing.stackexchange.com%2fquestions%2f9368%2fwhen-did-hardware-antialiasing-start-being-available%23new-answer', 'question_page');

                      );

                      Post as a guest















                      Required, but never shown





















































                      Required, but never shown














                      Required, but never shown












                      Required, but never shown







                      Required, but never shown

































                      Required, but never shown














                      Required, but never shown












                      Required, but never shown







                      Required, but never shown







                      Popular posts from this blog

                      Adding axes to figuresAdding axes labels to LaTeX figuresLaTeX equivalent of ConTeXt buffersRotate a node but not its content: the case of the ellipse decorationHow to define the default vertical distance between nodes?TikZ scaling graphic and adjust node position and keep font sizeNumerical conditional within tikz keys?adding axes to shapesAlign axes across subfiguresAdding figures with a certain orderLine up nested tikz enviroments or how to get rid of themAdding axes labels to LaTeX figures

                      Tähtien Talli Jäsenet | Lähteet | NavigointivalikkoSuomen Hippos – Tähtien Talli

                      Do these cracks on my tires look bad? The Next CEO of Stack OverflowDry rot tire should I replace?Having to replace tiresFishtailed so easily? Bad tires? ABS?Filling the tires with something other than air, to avoid puncture hassles?Used Michelin tires safe to install?Do these tyre cracks necessitate replacement?Rumbling noise: tires or mechanicalIs it possible to fix noisy feathered tires?Are bad winter tires still better than summer tires in winter?Torque converter failure - Related to replacing only 2 tires?Why use snow tires on all 4 wheels on 2-wheel-drive cars?