Project B and the future
What to expect
When is the promise of this new speed from vector processing going to happen, and how?
From what we can figure, there are going to be four kinds of games in the immediate future.
Current Games
Right now, we have a lot of Current Games that were written for existing and older machines, like the iMacs, G3's, 604/603/601s. These games were designed for older processors, and don't have any code written specially for the G4's. They will get some speedups on G4's, just from the fact that G4's have faster clock rates (MHz) and also that some of the regular things both G3's and G4's do are faster on G4's.
System Extensions
Current games use the operating system to do certain things. For example, reading files, moving memory, displaying pictures and movies. When the code behind these System Extensions is re-written to make better use of G4 features, such as the Velocity Engine, then they will be faster. The more the games use these extensions, the more they will be improved. Some games use extensions more than others. It is quite common to actually avoid using extensions in favor of custom game code, such as memory move or screen blitting code. Such code will not be sped up by faster system extensions. However, some more recent games make use of extensions such as Draw Sprocket, Sound Sprocket, Quickdraw, and OpenGL. If these extensions are made faster, games will go faster too.
Existing Pieces
Some games can have Existing Pieces re-written with G4 features in mind. 3D math can be speeded up by changing code to use the Velocity Engine. Drawing can be made faster, and memory moving can improve. This will result in an overall improvement which is similar to that from upgrading System Extensions, as the same sort of things are being speeded up. As a result, speedups are likely to be of a similar size, though slightly higher as the authors can customize the code just for what they are doing. Note that the Existing Pieces and the System Extensions speedups are complementary. For example, an application which uses a huge amount of System Extensions code will not be speeded up much by improving Existing Pieces and vice-versa. Also, for an Existing Pieces improvement, a new version of the game must be created and released.
Ground Up
Finally, there are games which may not yet have been started on, which will be designed from the Ground Up to use the G4 architecture. They will assume things like the Velocity Engine, fast graphics (through AGP 3D cards), and huge amounts of storage (DVD ROM) exist. This will allow much more freedom to design new games with new technologies. These game will not have massive frame rates, but whole new ways of seeing the world and interacting with it. Instead of being super fast, these games will be such CPU killers that they will be unplayable on older machines. Given that the usual industry development time for a leading edge quality game is 18 months, these games are probably some way off.
G4 game technology adoption
|
|
Technology |
When? |
% speed increase on G3's |
Current games |
Existing |
Now |
0-30% |
Games + new system extensions |
New OpenGL drivers, operating system, etc re-written to take advantage of G4 |
Months - years? |
10-40% |
Games existing pieces |
Game 3D math, drawing, physics etc re-written to take advantage of G4 |
Months - years? |
10-50% |
Games made ground up for G4's |
Velocity Engine, fast 3D graphics, massive DVD-ROM based storage |
One year+ |
20-100% |
Note - these are estimates based on developing our engine. They may vary.
The % speed increases are estimates of game software performance on a fast (e.g. 400MHz) G3 compared with our estimates for how the announced G4's (400-500MHz) will perform. This, and the fact that differently written individual software will give different improvements (+ some uncertainty) gives the wide ranges of figures. If you add more hardware (e.g. a new 3D card) improvements may vary even more. For example, speeding up 3D math will have little effect if the 3D graphics card is maxed out when drawing, so a faster 3D card may improve things. The table reflects the kind of speed increases in a G4 you can order today, and does not include any speed increases due to future faster G4 processors.
From the table, you can see how different things will take effect at different times. What may be interesting is that over time, existing games may gradually get faster ON THE SAME MACHINE. A similar thing happened with the transition from 68k to PowerPC. At first, some software and the System used the older 68k code. As more code was written 'in 'native' PowerPC format, the System speeded up and some games (even though they had not been altered) also improved slightly. Eventually, some games were written for a fast CPU like the PowerPC, and did things that 68k machines would find very difficult (e.g. 3D monsters vs 2D 'cardboard cutout' monsters). They did not have huge frame rates, but instead showed new things that you could not play on 68k machines.
G4 gaming over time
|
|
Technology |
Games |
% speed increase on G3's |
Now |
Existing software |
Current Games |
0-40% |
Months-years |
System Extensions, and new versions of Existing Games re-written to take advantage of G4 |
Current games, new versions, and new games |
10-50% |
One year and beyond |
Games designed from, the ground up. New 3D, physics, AI. |
New games only |
20-100% |
The road from PowerPC to G4 may be similar, but there are some differences too. Above is what we estimate may happen, and the real changes may be very different. The speed increases exclude improvements due to new unannounced machines or 3D cards. If you get a faster machine or 3D card, the percentages may be even higher, but may follow the same pattern (i.e. no matter how fast your G4 is, a game designed especially for G4 will likely run faster than a generic PowerPC game or a game with some G4 bits ported/added/altered).
The uncertainty at one year and beyond results from the rate at which game developers adopt G4 technology. For a while, it may not be financially worth making a game from scratch or porting one and including Velocity Engine instructions. In addition, it is possible that a game ported from another architecture (e.g. using Intel SSE instructions) will not perform as well as software designed for the Velocity Engine from the start. It is also possible that the difference will be so small that you won't notice it. The other major factor is whether developers approach the G4 by designing from scratch or being more conservative and tweaking parts of an existing engine.
Conclusion - how important is G4 software for you?
|