MAMEWorld >> EmuChat
View all threads Index   Threaded Mode Threaded  

Pages: 1

Azumanga
MAME Fan
Reged: 12/29/08
Posts: 10
Send PM


What were the first games to have the full screen represented pixel-by-pixel in memory?
#316944 - 11/05/13 11:27 AM


I was looking around in MAME's source at how games draw on the screen. It didn't surprise me to find that pacman uses a tilemap + sprites, but it did surprise me that, from my reading, the CPS2 still uses a tilemap + sprites, and you couldn't, even if you wanted to, just draw the screen pixel by pixel into memory.

Out of interest, what was the first game (or one of the first games) without a hardware-backed tilemap, and instead just a raw buffer to write into (I hope I am describing myself right).

Alternatively, if anyone could tell me how to find this information myself.



Vas Crabb
BOFH
Reged: 12/13/05
Posts: 4464
Loc: Melbourne, Australia
Send PM


Re: What were the first games to have the full screen represented pixel-by-pixel in memory? new [Re: Azumanga]
#316945 - 11/05/13 11:48 AM


Early Midway/Taito 8080 hardware (e.g. Space Invaders) has a direct framebuffer. It was later that they added sprite/tile hardware to speed up drawing complex graphics.



Azumanga
MAME Fan
Reged: 12/29/08
Posts: 10
Send PM


Re: What were the first games to have the full screen represented pixel-by-pixel in memory? new [Re: Vas Crabb]
#316950 - 11/05/13 12:25 PM


Ah, I started at pacman, it didn't occur to me to go backwards in search of a frame buffer!

So then I suppose I could ask, when did frame buffers come back into fashion? But I suspect the answer to that would be around when 'true 3D' became popular, as frame buffers are a requirement in most kinds of z-buffering based 3d rendering techniques.



Olivier Galibert
Semi-Lurker
Reged: 09/21/03
Posts: 398
Send PM


Re: What were the first games to have the full screen represented pixel-by-pixel in memory? new [Re: Azumanga]
#316954 - 11/05/13 02:27 PM


> Ah, I started at pacman, it didn't occur to me to go backwards in search of a frame
> buffer!
>
> So then I suppose I could ask, when did frame buffers come back into fashion? But I
> suspect the answer to that would be around when 'true 3D' became popular, as frame
> buffers are a requirement in most kinds of z-buffering based 3d rendering techniques.

Frame buffers stayed present in (almost) all computers. They're also used by some hardware (sega in particular) for sprite rendering. The "3D" vdp1 of the saturn is in practice an insane sprite renderer.

Arcade hardware kept a tilemap layer or two long after going to 3D. It's useful to put text on the screen without the complexity of a full 3d pipeline setup, texturing, etc. Very good for test modes and not bad for in-game text. Not sure how many "pure framebuffer" arcade hardware exist, and most were derived from consoles or are PCs with PC video cards.

OG.



Anonymous
Unregistered
Send PM


Re: What were the first games to have the full screen represented pixel-by-pixel in memory? new [Re: Azumanga]
#316969 - 11/05/13 07:14 PM


> So then I suppose I could ask, when did frame buffers come back into fashion? But I
> suspect the answer to that would be around when 'true 3D' became popular, as frame
> buffers are a requirement in most kinds of z-buffering based 3d rendering techniques.

There were bitmap based games even at the time of pacman. Williams games like defender etc don't use tilemaps.

Whether you use a bitmap with a blitter or a tilemap with sprites is a complex decision, based on what kind of games you are trying to make and the cost you're aiming for.



R. Belmont
Cuckoo for IGAvania
Reged: 09/21/03
Posts: 9716
Loc: ECV-197 The Orville
Send PM


Re: What were the first games to have the full screen represented pixel-by-pixel in memory? new [Re: Azumanga]
#316989 - 11/05/13 09:55 PM


> So then I suppose I could ask, when did frame buffers come back into fashion? But I
> suspect the answer to that would be around when 'true 3D' became popular, as frame
> buffers are a requirement in most kinds of z-buffering based 3d rendering techniques.

Williams always used a framebuffer and blitter or GPU combo, from Defender through when they went out of the arcade business. In the case of the 340x0 games, the blitter was special-function hardware in the CPU itself, but they never did raw software drawing.

The classic tradeoff was that framebuffers are more flexible, while tilemaps/sprites let you achieve massive amounts of animation with minimal CPU power. Space Invaders visibly speeds up as you kill the aliens and reduce the draw load on the CPU.

The cutoff, as you'd expect, was polygonal 3D.

Sega Saturn was a hybrid system: the VDP1 sprite/polygon chip renders into a framebuffer, like the PSX and N64 GPUs do, but the framebuffer is then mixed with the tilemap layers from VDP2. This is the root cause of a lot of its limitations, since all metadata about the sprite/polygon pixels is lost once they're written to the framebuffer. On the plus side, since the tilemap layers could scale and rotate, it allowed developers to take a lot of load off of the tragically slow sprite/polygon chip without giving up on 3D.

By contrast, PlayStation and N64 both used a GPU/framebuffer setup, and so did all succeeding consoles, including the Dreamcast. Tilemaps stuck around a little longer in arcades because they were cheap and made it easy to get the HUD/text layer going quickly. Atari's STUN Runner style hardware, Sega's Model 1/2/3 and Namco's System 21/22/23 all did this to at least some degree, and you could program if each tilemap layer appeared in front or behind the 3D framebuffer on most of those systems.



AaronGiles
Galaxiwarrior
Reged: 09/21/03
Posts: 1343
Send PM


Re: What were the first games to have the full screen represented pixel-by-pixel in memory? new [Re: R. Belmont]
#316995 - 11/05/13 11:12 PM


> Williams always used a framebuffer and blitter or GPU combo, from Defender through
> when they went out of the arcade business. In the case of the 340x0 games, the
> blitter was special-function hardware in the CPU itself, but they never did raw
> software drawing.

Correction: Midway didn't use the 340x0 for anything except as a CRTC and a CPU. It was too slow to do the blitting they needed, so it was offloaded to a custom blitter, much like the old 6809 games did.

Many companies mixed framebuffers in here and there as well. A lot of early Atari games like Missile Command, Cloak & Dagger, and Crystal Castles used them, and they showed up in 16-bit land as well for games like Rampart. In the days when people designed hardware for specific games, it was not all that uncommon.

Strata/Incredible Technologies games are all framebuffer-based as well. Same for the Art & Magic games. And the Leland/Cinematronics games used a framebuffer for sprites but mixed it with a tilemap for the background.

> Tilemaps stuck around a little longer
> in arcades because they were cheap and made it easy to get the HUD/text layer going
> quickly. Atari's STUN Runner style hardware, Sega's Model 1/2/3 and Namco's System
> 21/22/23 all did this to at least some degree, and you could program if each tilemap
> layer appeared in front or behind the 3D framebuffer on most of those systems.

Actually, the Atari polygon games rendered the HUD using the TMS34010 and some tricks, and didn't have any tilemaps. They used the same font as their usual tilemaps, though, so you could be forgiven for believing that's what they were doing.



Azumanga
MAME Fan
Reged: 12/29/08
Posts: 10
Send PM


Re: What were the first games to have the full screen represented pixel-by-pixel in memory? new [Re: AaronGiles]
#317032 - 11/06/13 04:43 PM


Thanks for this information.

At some point someone should write a book about this kind of thing (although it would possibly have a limited market), although I suppose in years to come those who really care can always dig through the MAME source code for it!


Pages: 1

MAMEWorld >> EmuChat
View all threads Index   Threaded Mode Threaded  

Extra information Permissions
Moderator:  Robbbert, Tafoid 
1 registered and 381 anonymous users are browsing this forum.
You cannot start new topics
You cannot reply to topics
HTML is enabled
UBBCode is enabled
Thread views: 1424