Disclaimer
I'm sure most of you will disagree with my views, however please don't think of me as someone who is saying "I'm totally right, everyone else doesn't know squat", since these are merely opinions.Happy birthmas!
So I've finally created my GDNet journal. Took me quite a while, too! I hope to be more active around here, as well as in my blog.I've been working for a living as a game programmer for CandyCane LLC, a small smartphone game studio who has been producing a few games mainly for the iPhone, and more recently for HP Palm's webOS, Android, and Windows 7 Phone, where their probably most popular game is Fling, a game where you "fling" various game pieces so they bump and send each other out of the board until you get only one left. I've been working for them for exactly one year now.
It was a rough year, especially since this is my first job in the industry and I am still kind of a rookie, even though I've been programming for almost 11 years now. My biggest challenges so far have mainly been the game ports from iPhone to webOS and Android, but I'm getting better so it'll probably stop being such a challenge in this upcoming year of work.
Although my dreams of making awesome evolving 3D worlds, a project I called "WorldBase", have been delayed because of my job, I'm hoping to restart working on it in a few years when I have plenty more available resources and thus more security for the entire project, in order to prevent it from failing once more.
Learning how game technology works is very importantBut people tend to end up trying to make their own 3D Game Engine in the end. This is often a bad idea, especially nowadays when we have the UDK and Unity available free-of-charge.
Spending too long developing game tecnology is a curse you can't escape from
After you've learned how a large part of game tecnology can be developed, you start to feel picky when trying to select a game engine for your projects. That's mainly because you end up developing your own "style" and since all game engines are developed in different ways, with many different tools and interfaces, you will end up disliking them all, leaving you to make your own, once more. This is even more of a curse than most people expects, since you can start a project thinking "I'll make a simple basic game engine" and spend years working on it without realizing you're spending too much time on the tech with little of the game to show.A lot of commercial game engines out there that are geared for Indies are not that great
Everyone loves talking about Torque, Unity, UDK, C4, etc. But fact is that some of those engines have less-than-friendly Indie licenses or are apparently not very good. As an example, I ordered Torque 2D when GarageGames was reborn and started selling all their products for $99 with Source included. I saw their License, and after posting a thread in their forums, they said the following:@Nuno - The license allows you to use a copy of T2D for your own development. If you want others to help you in development, such as writing code or creating levels, they will each need a license. Anyone touch the editors, TorqueScript or C++ needs a license. If you have an artist that just creates the sprites but just hands them off to you, never touching T2D, then they do not need a license.
Make sense?
Well, this is horrible from an Indie point of view. Often Indies will have more than one programmer, and spending twice or more of the original license makes the whole thing incredibly expensive. Indies don't always have that much funding, so just getting $99 is quite a feat. If you get a SVN server for your project, which will include torquescript and maybe some C++, even if your artists don't use the SVN directly, you have to spend those $99 once more. Imagine this when their $99 promo goes back to the old price which is probably more than twice as expensive.
The worst part is that it seems that a lot of asset producers seem to be limiting the number of persons that can have access to purchased assets to one, maybe two persons, and the real world just doesn't work that way. In a world where websites like xp-dev.com and assembla.com provide free file versioning services like SVN and GIT, the ammount of people who have access to a SVN server is generally everyone who is part of the group that created the server. So what can you do in order to keep everything A-OK? Create a separate SVN server? Remove access to the SVN from most team members?
Often you'll also find engines that look great, but once you try their demos or look at their samples you notice how they're not something you'd enjoy using. A couple of examples would be C4's engine demo, which although looking pretty sweet, has horrible physics, and the Leadwerks engine's API, which is just ugly.
Now, I don't know if the developer who created the C4 demo just wanted to setup the demo's physics quickly, but trying the demo made me not want to get the engine at all. The biggest demotivator was when i tried to climb some stairs. I'd get stuck, press SPACE constantly in order to jump, and more than often I'd jump backwards somehow, causing me to have to painfully climb those stairs all over again.

0 comments:
Post a Comment