|
Concept
Game consoles are popular because they are specialized for the purpose of
video games, while being general enough that any type of game effect can
be programmed. Thus, the task of creating a game console is twofold; one
task is to perform enough of the labor of running and managing a game that
the console user derives some benefit from the console, and the other is
to keep from restricing the game programmer sufficiently that he/she can
program any desired game or effect. Without both of these two goals being
met, a game console is very weak indeed; a console that could only run
space shoot-em-ups is destined to failure as much as a console without
standard controller ports. In any case, a balance must be struct between
lean simplicity and structure, which both aids and guides the game programmer
when producing a game for one's console.
If there were no benefit to be derived by the game programmer from having
a console, then consoles would have faded from existence, in reality, the
opposite is true; consoles are a booming market (just look at PSX and
Dreamcast sales). This boom, incidentally carries over to something similar
in the realm of PC games, the 3D Engine. There is a lot of talk about 3D
Engines nowadays, but it wasn't always the case. It seems only yesteryear
that every game company was creating its own highly optimized 3D engine for
games it created at high expense and with much leaked secrecy. Like the
hard game market, though, 3D engines have been generalised and sold to
developers outside of the original companies. Often, the 3D engine will
have a distinctive look and recognition among fans, who chomp a new releases
just to see new models in their favorite engine in the same way that console
owners line up in stores to get the next big game for their console system.
z* hopes to be to networked games what servlets are to web services. Perhaps
a little wierd, probably a little slow, but cozy and easy to use. Just as
a beginning programmer can manage to make a web service with a servlet, a
beginning programmer should be able to create a game with z*. This also means
that good programmers can be highly productive with it, and will probably use
it for mid-level 3D systems. Just as postscript describes a page better than
HTML, z* is not the end-all of 3D gaming. We are hoping that it becomes the
universal first-step in 3D gaming, and in most cases, the last step, too.
Overall, we hope to benefit the open source community by helping to reduce
the barriers to entry for scripters and young programmers who have the energy
and creativity to produce top quality game stories, artwork etc. These young
programmers are often discouraged by the difficulty in just "getting it on
the screen" that so many of us have faced in the past. We will never replace
top quality, cutting edge 3d and game programming, but we can hopefully
provide a good tool for mid-level game development, and especially, take
advantage of the creative talent that's running around text MUDs and other
such multiplayer games, by making multiplayer programming trivial.
|