Thursday, June 9, 2011

The Whys And Wherefores

Here are a few common questions. Perhaps once I've posted examples and started getting feedback, I'll roll these into an official FAQ.

"Why create an engine from scratch when there are so many out there to choose from?"

Indeed, 3d engines are very common now and some are even free to use. However, I spent some time researching and found few that are inexpensive, cross-platform, and offer a wide enough range of features. The remaining ones required use of C++ and had a fairly steep learning curve. Because I'm doing all of this on my own at the moment, it is essential that I'm able to develop at a rapid pace. I can't afford to spend days at a time spinning my wheels.

It is also fair to say that I simply wanted to do it. It really has been fun delving into the many aspects of 3d engine design and I've learned so much along the way. I am comforted by the thought that I will be able to add in whatever features are needed to complete future projects and that I won't have to rely on workarounds. Down the road, I think I'll be glad for the time I spent on this even in the unlikely event that I switch to something else.  I'm developing a multimedia platform - the engine is secondary.

"What programming language are you using and why?"

My programming language of choice is BlitzMax because I found it to be the fastest out of the gate, but I will probably end up porting to another language. I will eventually need to pass the baton to other programmers while I manage other aspects of the project and I'll have a lot more hiring options if I switch to a more common language. Also, porting to another language gives me the benefit of compiling to platforms such as mobile phones and pads.

"Why not just use Adobe AIR and Flash?"

For those unaware, there is a pretty powerful multimedia development environment already available called Adobe AIR. It makes use of the popular Flash platform, which has had great market penetration and is therefore almost universally available (except on Apple hardware). AIR appears to be a solid product, but not aimed squarely at the market I have in mind. Its support for 3d is still pretty rudimentary and although I think that will change, I'd prefer to start with a clean slate and see what my many years of game development experience brings to the table. In time, it is quite possible that I will add a Flash export feature to my tool set.

No comments:

Post a Comment