• The Future of Open Source Game Engines

    Designing and implementing a game is no easy task.  On top of the desire to formulate the best ideas for gameplay and storyline, there’s a technical element that is just as difficult to nail down.  Countless indie developers conceive of  a great idea but ultimately flounder and lose direction as their brainchild becomes bloated and unmanageable.

    It has been a tough struggle for small scale games to be able to break out of the realm of Flash and make the jump to a full desktop application.  The reasons for this are twofold, manpower and technical tools.  Let me qualify this seemingly short sighted statement with the assertion that games are downright hard to make.  It would follow that so much work divided over a number of people makes the task easier, but what are these folks doing once they’re all in on the plan?  Well, let’s look at the setup of how a game studio works, you’ve got digital content creators (modelers, animators, environmental designers), artists (menus, 2d assets, etc), programmers (insert code here), writers, and producers.  Phew, that’s a lot of stuff.

    Now the trick is to make it all come together somewhere along the pipeline in the chosen game engine.  The choice of a game engine is one that can’t be taken lightly, and as almost anyone who has simply picked the first will tell you, you will go back and rethink your decision.  For years, indie developers have been pretty limited in their choices of engine.  The big commercial engines traditionally cost big commercial bucks while the more affordable engines targeted at smaller developers give little hope of competing with any reasonably sized releases.

    Using something like Torque could give decent results, but any product it produces still has that small scale taste.  One of the inherent weaknesses of this particular platform is the content pipeline.  Going from Maya or 3DS to Torque was not a pleasant experience.  If you wanted animation, that was another can of worms which had to be opened (and was still never easy enough to get down to a muscle memory).  While cheap and Mac/Windows compatible, Torque is a hard sell considering what else is out there.

    Now consider Unity, an engine that has come much into the forefront in the past few years based on a few interesting paradigms.  First, its deployable to damn near any platform (including cross-platform web browsers) and the developers seem intent on keeping up with the newest stuff that can run anything with 3D graphics.  Second, its probably the first game engine to have started out as a Mac-only development toolkit.  While it was able to be played anywhere, it was only able to be developed on OS X until recently.  Also earth-shattering was the announcement this October that the indie version would now be offered free.  Fiscally speaking, saving $200 over the previous price of the package is not a huge deal, but it does take out the price factor completely.  We’re all well aware that people pirate $9 software titles just because they can, so I consider a free offering of this caliber to be quite significant.  What’s more interesting to serious indie developers is likely to be the relatively loose license that Unity allows for the indie version.

    Of course, the elephant in the room is Unreal Engine 3, who’s release as a free development kit has been a hot topic for a few weeks now.  While still a great engine, UE3 is starting to show its age when compared to the kind of work that Crytek is producing (regardless of how much we all hated the original Crysis for everything it was/wasn’t) with their own engine.  Unreal is exposing a real commercial powerhouse to everyone who wants to try it, which is great.  It allows content creators to see what their assets look like in game as well as giving aspiring game designers invaluable experience on one of the most sought-after platforms.  One important thing to note, however, is that Epic has you on the hook for some considerable cash depending on what you do with the game you or your company creates.

    While all of these steps towards the empowerment of indie developers is valuable, it is important to step back and take a look at the truly free options available.  Before the incrementally free (though still costly), there was the totally open source.  Engines like jMonkeyEngine, Delta3D, and Panda3D have found limited success in certain niche areas, but have never quite taken off like their commercial cousins.  With such open platforms are available, why is the popularity still limited?

    Drawing from my intimate knowledge of jMonkey and the wealth of users that make up its community, there are shortcomings for the project that I love so dearly.  The most common gripe that we come across in the forums and chat channel is the lack of a world editor.  For obvious reasons, this is a major feature that game houses, for good reason, find attractive.  Put simply, its hard to layout a scene in jME.  Mainly procedural work, like Betaville, don’t quite call for placing objects in the scene and setting up lighting in such an intimate nature, but it is an absolute necessity when creating a first person shooter or RPG.  Somehow, though, games get released, and those who have weathered the trenches of jME are in a good position to help the newcomers.  For some reason, this is an easier task for open-source projects rather than big commercial packages.  The community contributions and support at jME are impressive and humbling every day.  Still though, for all the excited newcomers, many are forced to jump ship when they realize the difficulties of piecing together a world line by line.

    Some likely go on to explore the Delta3D engine as it’s STAGE editor is certainly an appetizing offering.  Unfortunately, however, little in the way of support can be found on the lightly used forum.  They’re also going through their own growing pains about how to expand the project to be more self-sufficient as far as prolonged development goes.  See here for an interesting read on that particular topic.

    So, the debate between engines really boils down to two big factors, money and usability.  Although games like Grappling Hook and Mad Skills Motocross have been able to sneak through the shortcomings of open-source and see the light of day,  they are exceptions to the rule and the vast majority of released games continue to be developed in commercial engines.  It is clearly worth the price to many companies who need to answer to investors or are on rushed time frames, but how far can open source be pushed?  Can the right people at the right time make the right nuclear mixture to have gaming explode with open engines?  It hasn’t happened yet, but nothing says it can’t either.  Some will stay while others decide to move on to other engines that are available.  Personally, I’m firmly planted in open source for now and can’t wait to see where it takes gaming.

  • A Tribute To Lynx

    I’ll be the first to admit it, I’m a bit of a command line junkie.  Yeah, that means I use Vi for the fun of it and find chmod quicker and more intuitive than screwing around with an info window in Finder.  Most tech-savvy users are familiar with a few commands from the command line, perhaps they can move from directory to directory and view contents… maybe even move some stuff around!  Heck, I know some others who’s only use for command line is to update sources that they have checked out of a Subversion repository.

    But there’s one tool that’s fascinated me for some time.  That old reliable web-browser called Lynx.  No, it wasn’t the first web browser, and it didn’t do much of anything special.. it does something perhaps more unique than being the bleeding-edge.  What’s more special than brand new technology and features?  Try, for one, the fact that it just works when you need it to.

    That’s not to say that I enjoy the experience of navigating Lynx, it can be rather painful in a somewhat elegant way.  It takes the tab key’s use in the modern-day browser from ‘optional hot key’ to ‘mandatory tool’, which is cool for the command line folk like myself.  Of course I’d rather be ankle-high in Firefoxes and Safaris (and dare I say, Internet Explorers?), but the luxury of such overwhelmingly good web browsers is not always available (like in a terminal, for instance).

    So what do I do when I’m remotely connected to a server that needs Perl modules installed?  Well, normally I would start up one of these fancy browsers that we have here in 2009  and hit up the Webmin panel that I tend to install on a good number of machines that I touch.  From there, it’s less than five minutes to install whatever module I need rather than waiting for the sometimes clunky cpan shell to do its thing.  Unfortunately for me, however, this particular machine has not had the appropriate ports opened to it yet, so that Webmin installation is useless to me as it stands.

    Wait!  I know!  Lynx supports the HTTPS protocol, maybe I can log into the target machine’s panel via Lynx over SSH?  Well, why shouldn’t it work?  In fact, it does, and five minutes later, Email::Send::SMTP::TLS as well as all of its dependencies were installed and ready to go.  How’s that for easy?

    Installing a Perl module through the localhost's installed Webmin

    Installing a Perl module through the localhost's installed Webmin

    So what’s the point of this post?  There is none… Hopefully someone might come across this and find it useful in their moment of despair.  Perhaps someone else just added a new tool to their arsenal.  There’s also the far-off possibility that some new Mac user out there is now interested in what’s hiding under their shiny Snow Leopard and is going to open Terminal for the first time after reading this.  Yeah, that last one’s probably a long shot.

  • The Slap Chop: Made Famous By Vince. Adored By I.

    While at Ace Hardware yesterday afternoon awaiting a cashier to process my [important] purchase of Loc-Tite and screws, a fairly tame box caught my eye.  I’d never seen one in the flesh, but I instantly knew what I was looking at.  It was, as you might have guessed, The Slap Chop…  What’s that?  You don’t know The Slap Chop?  Really, that funny little device marketed by the guy who somehow convinces us that we’re gonna love his nuts doesn’t ring a bell?  Fine then, watch the infommercial first.

    Now that you’re all properly acquainted with Slap Chop and Slap Chop’s best friend/salesman, I’ll continue on with my tale.  For $21.99 I knew I had to have it, so I added it to the basket telling myself that it was a hilarious gag that I would give to my mother.  Deep down, I really knew who it was for.  I got home and eagerly tore open my new friend.  After some assembly, which Vince failed to mention in his three minutes of blue apron glory, I started searching for something to chop.

    A clove of garlic was the first thing to come into my line of sight from across the kitchen table; The rest may as well be history.  With a cutting board sitting happily under my new toy, I set down a clove of garlic and was ready to go.  Months of watching Vince work the device had trained me to use The Slap Chop not only as a small food processor, but as a personal defense weapon as well.  With a big goofy grin, I laid on the first chop.  Without looking at the results, I slapped off another chop.  After a few seconds of blissful happiness, I stopped to check out my garlic.  It was definitely sliced and diced.  Unfortunately, however, “the skin comes right off” might only apply to onions, as it most certainly didn’t work for the garlic.

    Feeling my sense of novelty fading, I brushed off the instinct to set it ablaze and set up another garlic clove… this one I took the care to skin first.  A few seconds later I was looking at a diced up piece of garlic.  Something I’ve had the capability of producing for years, but have never had the privilege of using a $22 device to create.  A six dollar knife always felt more up my alley.

    Now I got ambitious.  I added in some tuna, celery, and peppers.  Now attracting an audience from throughout the house I began chopping away at anything that I could find.  When I ran out of things, I simply made new things to chop.  15 hard boiled eggs kept me occupied for a while, and as I kept chopping, I remembered Vince saying how I would “be in a great mood all day”.  Damn, how right he was.  My girlfriend laughed when I first suggested that I’d do a few chops every morning to put a smile on my face.. apparently she’s not impressed by Vince, or myself.

    After a couple of hours of chopping, a 45 minute video Skype-ing to my brother in Montreal, and another egg salad to last the entire NYC school system a full semester, I gave it a rest.  Now it was time to clean the glorious device, and Vince was right again.  The damn thing opened right up and I was able to get at the blades.  I must say, impressive build quality for a company called “Square One Entertainment”.

    Its now been 24 hours since I’ve first cleaned and put away my now beloved Slap Chop and I’ll admit that I haven’t touched it since.  I’ll also say that I haven’t been in a great mood all day, so perhaps there is some truth to Vince’s absurd claims after all.

  • Is This Goodbye?

    Presonus. Makers of [good] affordable audio hardware. Anyone that knows me knows about my love affair with their stuff. I’ve got a Firepod, Firebox, Headphone Preamp and a TubePRE from them. I love them all dearly, the Firepod’s been the centerpiece of my home studio for the past 4 years and the Firebox has lived in my travel bag for the last 2.

    Credentials established, I think that I can speak on reasonably solid ground with regards to their products.. They’ve always been great. I’ve never had a driver problem, and when the old [yeah, really old] version of Cubase LE didn’t cooperate with my Macbook Pro, they sent me the most recent version with zero hassle. Happy days indeed.

    Over the past few months, however, I’ve been watching a bit of a slow saga unfold on the Presonus Support Forums in terms of Windows 7 support. A good number of users mentioned issues with the Firepod and Windows 7 which Presonus essentially brushed off since the OS hadn’t been released yet, but seemed to say behind the lines that it will be supported since they support all current operating systems.

    I’m not a strong Windows advocate by any means. In fact, my audio workstation is the only computer I own that has a single boot install of Windows and furthermore, is the only Windows I use that gets booted more than once a month. That said, I applaud their seemingly genuine effort to release 7 right, through Beta’s and RC’s. This also served as a bit of a warning to driver dev’s that MS didn’t want a repeat of the Vista launch. Nvidia and ATI clearly took the cue and Windows 7 compatibility and drivers are plastered all over their websites.

    Presonus has apparently opted to go for the wait and see game. This seems a bit dangerous for two reasons: Those trying out Windows 7 before its release are likely more technically inclined users, a.k.a those that can provide accurate, reliable feedback. Not offering pre-release drivers is like turning down free labor to do your testing. The second lunacy here is a failure to recognize the splash that MS is trying to make with 7 in order to account for Vista’s early shortcomings. Not having solid drivers ready to go at launch won’t fly like it did 3 years ago, as people are now expecting more. This time, they won’t be blaming Microsoft, they’ll be blaming Presonus.

    I’ve used Windows 7, I like it. I’ve got the retail version (OK, the ACM deal for 7 Professional) installed on two machines and would have no problem using it the way I dreaded some tasks in Vista. Unfortunately, audio isn’t my main gig and I’ve gotta keep moving with the times. I won’t be impeding the rest of my work to suit a single piece of hardware unless that piece is the source of my cash flow. In other words, I’ll be upgrading my OS and switching companies if a solution isn’t provided in a timely fashion. MOTU seems plenty happy to take my money but I’ve never had a reason before.. Now I might.

    I still love you Presonus, please wake up.

  • Oh The Things I'll Do To Avoid Productivity

    Sometimes 3AM rolls around and a man has just had enough NullPointerExceptions for a night. Some folks go to sleep, some watch TV, I make a 5 year overdue blog for myself. So what does this mean for you, the end user and information consumer? Well for one, it means that you can now study my wisdom line by line, word by word, keystroke by keystroke.

    I’m hoping to put some bits of code, recipe, topics of general computing interest, and about anything else that I feel like a likeminded individual may enjoy.

    So reader, I applaud you for coming here and if you’ve made it this far, further accolades are in order for not leaving.

    That’s it then? Yep.