Lately, I’ve been reading on posts that are “comparing” Unity and UDK. Everyone that participated in those exchange have made valid arguments on too which one is best. But I think that all of them, or at least the majority, are on the wrong track when it comes too game development.
This is an overview of what I think needs to be done in being productive and coming out with the best game possible. Also it doesn’t take into account the hobbyist, this is for game developers in mind.
1- Before even considering one engine or the other, you need an overview of what your next game will be. I say overview, because if you go in to deep with the details of your game at this point, you are losing precious time! The details of the game come in to play a little later in the process.
2- Once you have an idea of the type of game you want to do, you need to figure out your target audience. Who will playing this game? On what platform do they play these games? How much are they willing to pay for this game? and so on… If you don’t know this then how are you going to choose the right technology? How will you be able to establish the difficulty level and the amount of gameplay that you will need? etc. Also PLAY alot of similar games in order to see what’s out there and how you can bring something fresh and new to the gendra.
3- After that, you start looking for a publisher or “areas” were you might be able to sell your game. Do I go mobile? Do I go for a web player? Do I sell it off Steam or Big Fish? Or do I go for DLC on Xbox Live or PSN? Of course, for some of you, it might only be one option available and that is why,in point 2, you need to know if your idea is great for the only option that you have or if you will need to find another idea or just take a chance and roll the dices. Also to take in consideration is the size of the game, how many MB am I allowed to go to in order to publish on a specif platform? Do I go casual game or hardcore? (I would like to take time here to demystify the terminology of Hardcore gamer vs. Casual Gamers. Some say that casual gamers only play once in a while on silly little games and Hardcore gamers play all of the time on top notch state of the art games. Not true for both. You can have a casual gamer playing all of the time and the contrary is true for the Hardcore gamer as well. Also, there are game with a high level of difficulty in both categories as well. The difference between both, in my opinion, is the platform that they use and only that. There are other points to take into consideration but that goes into level design.)
4- At this point, you will establish a list of the strengths and weaknesses of your team. In case you are alone, like myself, then…You are the team! Why? Because, you need to know what you are capable of doing. And it’s not because you’ve never done it before that you won’t be able to do now. But you still need to now your limits.
5- Know that you’ve answered the 4 points above, you will be in a better position to determine what type of technology you need to use. It’s now time to choose your game engine. Are you building one from scratch or are you choosing an existing one? (Now I will spend a bit more time in this section. Because this is where i think allot of people are off track and just shutting there eyes on the big picture!) The famous question, should I choose to go with Unity 3D , UDK or something else? Well in this forum, you have people you say UDK because of the raw power, the beautiful graphics and the tools and others will say Unity because of the multiple option of platforms it has, easy to use and so on. No offense but both of you are wrong if you choose you’re game engine based on those arguments and some say that UDK is only good for FPS and that Unity is good for all of them. There again, you are wrong! The last statement only means that you have no imagination what so ever and that you’re shutting opportunities down because of your “fan-boyish” attitude.You need to choose you game engine based on multiple arguments and if you answered the first 4 points that I’ve mentioned, then you will be in a better position to decide which one is the best suited for the game you are planning on doing.
Example: You are doing a casual game publishing on Big Fish. Well no matter how you like UDK, you will probably have to go with Unity because you want to reach the most PCs possible and in some case, place like this, will restrict the size of your game. You will then either either have to cut into your gameplay or scrap everything all together.
Other Example: I need cinematics in between my levels in order for the story to hold and size is no problem. Well UDK right off the bat is the better option just because of this.
So choose wisely and consider EVERYTHING before choosing one or the other. Finally, it’s time to choose all of the other software that you will need. What texturing software are we going to be using? What 3D modeling software, Audio software? etc. If you plan on using something else than Max or Maya, make sure that it’s compatible with the game engine first.
6- Create a sandbox level where you will be able to test all of the mechanics that you would like to have and see if it works out or not. Because the last thing that you want is to set up your levels and notice that your metrics are off or that a specific animation does work at all and thus changes your entire gameplay.
7- Go create your game (Level Design, Localization, etc, etc.) and remember to create it for the player and NOT for you.
Lastly, some say that you need great graphics… Not true, look at games like farmville, cooking mama, Mario and other successful games. The number one thing must be GAMEPLAY. How are the controls disposed on the keybord or any other input device? Is the game FUN to PLAY? that is the most important thing. See my list below of important things and the priority that I give them.
**This is not the order in which to do them. It’s an order of how good them have to be. So number 1 has to be the best of them all.
1- Gameplay (Controls, gameplay, re-playability, Realism of the world that was created, etc.)
2a- Story (For story driven or mission type games.) if applicable…
2b- If you don’t need a story, Sounds and emotions. (I put them both here because the sounds that you will be using will kind of dictate the emotions that you want the player to have.)
3- Graphics. (You want nice graphics? Yes! But without gameplay, sound and story, they are nothing to a gamer. This doesn’t mean you can get away with shtty graphics. Your gameplay and story line will dictate a bit of the quality of the graphics that are needed.
4- Platform availability. (I put this last but it’s still important because to often, companies will port there game from one platform to another. It’s just wrong and there are just in it for the cash(Yes, we all need the money. But do we have to do at the expense of the consumer by pushing shtty games? and not creating great games. It’s not because your game is good on PC that it will automatically be good for the mobile devices. Your controls might have to be reconsidered and the types of controls that you use on your game might not be fun on a mobile device. etc.)
5- Being popular (Follow trends yes but don’t go at it just to make money because you will fail. Stay on what you know and love.)
If you have insight, constructive criticism, please feel free to add to this.
Thanks you and have a nice day to all.