Do you like games? What type of games? There are many types of games: computer games, board games, football games, Olympic games, basketball games, or the game of life? I would answer that I like all sorts of games. In computer games, you love great stories, great action, and great high definition graphics. Performance is a key aspect of great computer games. With our modern PCs, Macs, consoles, smartphones, tablets, and hand held devices, we have a wide range of fabulous games.
What does it take to develop a game? For Delphi developers, two good starting destinations are the Pascal Game Development web site Pascal Gamer Magazine. You can find the OpenCL API registry at http://www.khronos.org/registry/cl/.
Some of my favourite desktop and online games include Portal 2, World of Warcraft, Halo: Reach, BioShock, Assassin’s Creed, and Call of Duty: Black Ops. There are also game and physics engines that support Delphi including Jordi Coll’s Thundax Physics Engine, Newton Game Dynamics Physics Engine, Cast II Game Engine, Asphyre Sphinx Game Engine, and JEDI-SDL for Delphi. I also have been playing around with Delphi and OpenCL. OpenCL, Open Computing Language, allows you to use the CPU and GPU for computation. While games can use the GPU for great looking High Definition graphics, you can also use the GPU for high speed computations.
Delphi is a great language for building business applications, web applications, web services, and multi-tier applications. Developers also use Delphi to build great games. If you have an idea fora game, you’ll find tutorials, on the Pascal Game Developer site, that will help you get started. If you’ve got an NVidia graphics chip or if you are lucky enough to have a Tesla modules, you’ll find information and resources for programmers at http://www.nvidia.com/object/GPU_Computing.html.
if you are a C++ developer, NVidia also has information for you on their GPU computing site. Many of the resources listed above are also great places to start. The OpenCL version 1.1 C++ bindings document is available in PDF format at http://www.khronos.org/registry/cl/specs/opencl-cplusplus-1.1.pdf.
While I was a college student, I had a summer job in 1970 as a computer operator. I ran an Burroughs B-500 computer. The B-500 had a COBOL compiler. The applications I ran processed log inventory and accounting jobs. During my spare time while the jobs ran overnight, I wrote an Artillery game entirely in COBOL. I had to write the game logic, random number generator, and console graphics output in COBOL . Why COBOL? It was the only language compiler available on the B-500 I operated. Today, we have so many other choices for languages, game engines, graphics, and physics.
The things we learn from writing interactive games with wonderful graphics can also be applied to the user interfaces and graphics for business applications. Wouldn’t it be great to have application platforms that could work for both worlds? What games do you like? What graphics cards/chips do you have in your computer? If you write games or scientific/engineering graphics, do you use Direct2D, Direct3D, OpenGL, or some other graphics system?