From: lioness@maple.circa.ufl.edu
Newsgroups: rec.games.programmer
Subject: Re: reply to "Why are PC graphics so horrible?"
Date: 6 Jan 93 17:45:25 GMT
Reply-To: LIONESS@oak.circa.ufl.edu
Organization: Center for Instructional and Research Computing Activities

In article <82592@mavenry.UUCP>, nider@mavenry.UUCP writes:
>
> The reason why PC graphics are so horrible is the sloppinest of the 
>programers.  You'll find that some games for the PC are starting to set the 
>standard of how games can be programmed (take a look at Maximum Overkill, 
>SNES can't even try to make something that looks that good, but then, that 
>needs memory, at least 4 megs to run).  Also, SNES has a good graphics chip 
>inside, while PC's have to basicly rely on emulators to do most of the 
>graphics movements.  Though with a good computer, there doesn't exist that 
>much of  a problem.  As 386 is now the standard for good software, expect 
>better games to be programmed. 

This is a gross overgeneralization of the situation.  Programmers are NOT
the one's to blame for everything.  Can you blame a programmer because
he can't transfer more than 2MB/sec over the ISA bus?  Sure, if he
was REAL ingenious, he could come up with ways around the limitations,
but that's not really fair.  Amiga programmer's aren't particularly
ingenious or brilliant because they have the copper and blitter chips
at their disposal.

The problems/solutions that I see are as follows:

A.  The ISA bus is 16-bit wides and 8MHz, with a realistic max throughput
of 2MB/Sec.  The solution to this is to use local bus video ( which can
up throughput to 33MB/Sec ) and/or an EISA bus machine.  Both require
extra hardware and cost.

B.  The PC does not support coprocessed video functions with a stock
VGA.  Stock VGA provides NOTHING drawing wise.  It is a dumb frame
buffer.  The solution is to use a coprocessed video board such as an
S3 ( which supports line draws, etc. ) or a TI340x0, which is fully
programmable.  Once again, these are expensive and cannot be assumed
to be the target machines.

So, it has always been a case with PCs that you have plenty of processing
power, but no output worth a damn.  That is the reason you see so many
simulations out there -- since you're spending so much time just clearing
the damned screen due to the slowness of the VRAM and bus, you might
as well calculating something monstrous.  Witness the nifty polygon
3d graphics out there and thevoxel stuff in Maximum Overkill ( although
that, with hindsight, isn't that terribly impressive...the algorithms
are fairly simple given their stipulations ).

The PC programmer can assume the following about most of his target machines:

1.  A dumb frame buffer supporting transfer rates of 2MB/sec.
2.  32-bit registers and instructions.
3.  At least 16MHz clock speed.

The limiting factor here is obviously the frame buffer.  When we manage
to get another standard out there that is faster and makes more sense...say
IBM comes out with an integrated 32-bit wide XVGA or something to set a
new standard ( XGA failed and so did the 8514/A ), then we may be able
to get better looking games.  But hardware assistance is the key, and the
PC just doesn't have it.

Brian