View Full Version : how do developers "squeeze" more power out of a...
neschamp
02-26-2005, 03:08 PM
I have been wondering this for a while now. How exactly are video game designers able to make a console work more efficiently over time? Obviously the longer time spent with a given system allows them to understand and manipulate code more easily. Though, its not as if the specs and abilities of a system change over time. What accounts for the disparity between the visuals of first-gen games and those from games late in a console's lifespan?
joshnickerson
02-26-2005, 03:33 PM
Obviously the longer time spent with a given system allows them to understand and manipulate code more easily.
I think you just answered your own question. LOL
Ze_ro
02-26-2005, 06:23 PM
Generally, the games improve because people figure out tricks that either do things the original creators didn't expect, or happen to do things slightly differently than the original creators intended.
A good example here is that of the Atari 2600... the blokes who originally created it didn't expect anyone to try to program Double Dragon or Thrust on it, so they only gave it the ability to display 2 player sprites, 2 missiles (basically just a dot) and a ball (another dot). Since the popular games at the time were Combat, Pong, and some rather simple shooting games, this worked out perfectly fine.
What the creators likely DIDN'T expect was that programmers would realize that if they coded things properly, they could fiddle with the player/missile/ball settings to make it appear more than once on the screen without any real penalty... They took things a little farther by alternating between showing one sprite in one frame, and then showing a completely different sprite in the next frame... even though the sprite is only visible half the time, it's generally enough that both sprites are visible, at the cost of the well-known "flashing". This is how you get all the ghosts in Pac-Man, although the programmer reuses sprites very inefficiently which causes the flashing to be really harsh. Later on when Ms. Pac-Man was made, they programmed their code to actually detect when it could reuse sprites WITHOUT flashing and when flashing was unavoidable, so you get a much nicer display as a result. There are even more sophisticated methods than this that people have figured out, but they get more complicated than I care to explain. Surprisingly enough, even Combat exploits some capabilities of the system in order to display the score properly!
Most systems are designed to be very flexible with the way you do things. A lot of times, this flexibility is even more than was intended in the first place... the creators generally throw in the usual bells and whistles to let you control everything to the degree that it's necessary, but it's up to the programmers to find all the little loopholes that let them exceed the original expectations for the system.
--Zero
crazyjackcsa
02-26-2005, 06:38 PM
I think you did answer your own question actually. But, look at it this way, there is software, middleware and there is hardware. The hardware never changes through the life of the system. The Software and "Middleware" Do. The middleware are the programs and code that run the software, developers can create "tricks" that fool the eye as well as the hardware. I don't really know that much about programming so I can't give examples to many examples, but the most famous I know of, is that with Shining Force 3 on the Saturn, the programmers actually used the sound chip as a graphics chip, I'm not sure if they borrowed memory from it or actually used some of the processing power, but they did.
Another example would be the drivers on your computer. If you never update the hardware, you can always update your drivers to get the most performance out of it. Better more streamlined code, and the like.
robotriot
02-26-2005, 06:57 PM
The C64 is a good example as well - the hardware has so many bugs, that coders were able to find a lot of tricks you could do with the machine that weren't intended to work. Only one or two years ago, a new graphics mode was discovered :)
Raedon
02-26-2005, 07:07 PM
The C64 is a good example as well - the hardware has so many bugs,
Nono!! the term is "Features."
crazyjackcsa
02-27-2005, 01:45 AM
Didn't they figure out a way for the C64 to do some simple 3D?
soniko_karuto
02-27-2005, 02:41 AM
The C64 is a good example as well - the hardware has so many bugs,
Nono!! the term is "Features."
you just pulled a microsoft mate!
hezeuschrist
02-27-2005, 02:46 AM
pretty much. Nowadays, it's not so much that they didn't realize the system had the capabilities, but they learn more efficient ways to code certain common effects. The less code that needs to be executed by the system frees more resources for other effects or AI or whatever.
I've been blowing nut all day about how badass Gran Turismo 4 looks. It's absolutely blowing me away. So far Resident Evil 4 is the only game that's made me do a double take about photo realism in a game, and GT4 is really making me do it with it's screenshot mode in the game. Check out some pictures these people are capturing with the camera mode in the game. Amazing.
http://discuss.futuremark.com/forum/showflat.pl?Cat=&Board=gamingconsole&Number=4951855&page=0&view=collapsed&sb=5&o=0&fpart=1
robotriot
02-27-2005, 04:05 AM
Didn't they figure out a way for the C64 to do some simple 3D?
Yea, they even did texture mapping, realtime raytracing and bump mapping ... not very fast and a lot of it involves some sort of fakes, but still, it's way cool :D