Search Tips Advanced Search |
| Delphi Graphics and Game Programming Exposed with DirectX 7.0 by John Ayres Wordware Publishing, Inc. ISBN: 1556226373 Pub Date: 12/01/99
Search this book:
Previous | Table of Contents | Next
This goes along with the strong typing imposed by Pascal compilers. Pascal is used as a beginner’s language in universities and colleges because it forces programmers to write in a very structured, easily understood manner. The result is that programmers are forced to develop good programming practices. C/C++’s language structure is much more open and unrestricted. While this does allow one to perform some lexical tricks that may be difficult to reproduce in Delphi, it can result in code containing bugs that are very difficult to find. Delphi’s strongly typed compiler helps find logical errors and mistakes that may have compiled without so much as a warning in a C/C++ compiler. Writing Delphi code is never bug free, but the strong typing imposed by its compiler helps the programmer find some bugs faster than would be possible with the same code in a C/C++ compiler. Another great advantage to using Delphi is the overall attitude of the Delphi community at large. Overall, the Delphi community has a very helpful attitude. There are literally thousands of Delphi sites featuring thousands and thousands of free objects, code tips, and applications with source code. There are dozens of sites available that deal specifically with Delphi game programming, and there are several freely available game programming examples and objects, complete with source code. The JEDI Project, the Delphi Games Creator, and DelphiX are just a few examples of the type of free source code that one can obtain when searching the Web for Delphi game programming knowledge (many of these are contained on the accompanying CD). While you can find just as many (if not more) resources for C/C++ game programming, the Delphi community has an overall helpful attitude, indicative of the type of Delphi programmers that exist in the world. Disadvantages The biggest disadvantage that one may face when pursuing Delphi game programming is in the lack of knowledge available in the industry. Almost every book you see discussing game programming will contain examples written in C/C++. Fortunately, the algorithms discussed in these books can be implemented in just about any language, but the code examples will be almost worthless unless you have a working knowledge of C/C++. This may require the aspiring Delphi game programmer to take a course or two in C/C++ in order to gain the knowledge to put the examples in the myriad of C/C++ game programming books to work in Object Pascal. Unfortunately, the result is an increased learning curve for future Delphi game programmers. It is interesting to note that when Delphi appeared several prominent figures in the game programming industry took note of its abilities and even heralded it as the next great game development platform. The editor of a major gaming industry periodical even predicted that the best games of the coming year would be written in Delphi. This same periodical, and others, have run several articles illustrating game programming techniques using Delphi, written by some of the most visible programmers in the Delphi industry (most notably Charlie Calvert). Hopefully in the future we will see more books written about game programming in Delphi, spreading the knowledge of game application algorithms and generating more jobs for the Delphi games programmer. Another major disadvantage already touched upon is the fact that Delphi programmers will probably have slower access to the newest programming technologies than C/C++ programmers. We can use DirectX technology as the perfect example. Microsoft has seen fit not to include a type library for the DirectX COM objects. Had a type library been included, Delphi could directly import the library and offer developers immediate access to all of the functions and procedures offered by DirectX. Instead, Delphi developers must translate the C/C++ headers that define the function calls, constants, and data structures by hand. This is a very onerous, time-consuming task, prone to errors that may be difficult to fix. Unfortunately, this means that most Delphi programmers must either write an import unit themselves or wait for one to be made available (for free or for purchase) before using the latest technologies. Thanks to the efforts of the JEDI Project and the individuals participating in it, many technologies previously out of reach of Delphi programmers are now becoming available. Indeed, Erik Unger, a JEDI Project participant, wrote the DirectX import units around which this book is based. Hopefully in the future we will see more cooperation between Microsoft and Inprise, which will result in immediate access to the latest technology by Delphi programmers. ### Opportunities The game programming industry is as competitive and hostile as the movie production industry. Venture capitalists and investors are quick to throw millions of dollars—more than $2.5 billion a year— at promising startups in hopes of grabbing a piece of the pie. Production costs of games typically average in the millions, and game companies rise and fall almost as frequently as most people change socks. In such a volatile environment, how can one expect to make any progress without being trampled? Fortunately, the gaming industry is one of the few industries in which someone can compete from their garage or home office. For example, take the game Solitaire, a standard game shipping with Windows. Solitaire is arguably the most popular game in existence today. Probably everyone who has ever taken a look at Windows has played it at least once, and there are many who play it daily. This is a simple game that by no means pushes the envelope of technology, yet it offers an addictive, entertaining pastime that many people enjoy. A similar phenomenon, Tetris, has been copied and cloned to the point where you can find freeware Delphi Tetris components ready to be dropped on a form for instant gaming satisfaction. Theoretically, if Solitaire and Tetris can be such runaway hits, anyone with a good idea that translates into a simplistic game can do just as well. For example, take a look at Deer Hunter. It’s a relatively simplistic game using technology that is well documented, yet it is one of the best-selling games in recent history. It took the developers three months to complete, and it is certainly nothing that would be beyond the reach of a Delphi developer. Its concept is simple, it’s aimed at the mass market, and the price point is right (it runs for about $20). With the global distribution available in the form of the Internet, and third-party companies offering the ability to take credit card orders for your software (for a nominal fee or percentage), it is possible for even the most remote programmer to compete with the big boys. The market for game software is much more open than the vertical markets (such as exist for word processors and spread sheets), and has a wider audience than that available for niche markets. Although you may not get rich from selling a $5 shareware game, you could become quite wealthy by selling several $5 to $10 games. As a reality check, bear in mind that the process of making games is no longer a one-man operation. Most games consist of good programming, good graphics, and good sound, and the combination of programmer, artist, and musician would be the equivalent of a modern-day Renaissance man. Indeed, to compete with such games as Quake, Wing Commander, or StarCraft, a team of several programmers, artists, content writers, game designers, actors, musicians, and sound engineers would be required to make a serious effort. Even for the most simplistic game, the talents of an artist should be sought out for all but the most elementary of graphical resources. Although it is possible to compete from one’s garage, employing the talents of several individuals may be required to meet the demands of your users.
Previous | Table of Contents | Next

Products | Contact Us | About Us | Privacy | Ad Info | Home Use of this site is subject to certain Terms & Conditions, Copyright © 1996-2000 EarthWeb Inc. All rights reserved. Reproduction whole or in part in any form or medium without express written permission of EarthWeb is prohibited. Read EarthWeb's privacy statement.