3 ms·
For games, I highly recommend you check out Unity. My background is strongly ObjC/C++, but I still found that Unity was definitely the way to go when making my
by tolmasky 12y ago
For games, I highly recommend you check out Unity. My background is strongly ObjC/C++, but I still found that Unity was definitely the way to go when making my game (after first trying UIKit, then C++/OpenSceneGraph):
1. It is widely used in the gaming industry, including by big names like Blizzard.
2. The tools are pretty fantastic. I was (am) a huge fan of Interface Builder, but the visual tools in Unity blow it away (at least for games). It can import from the 3d graphics programs (we used Cinema4D, and thats the least supported one I think), so if you are working with an artist it really is living the dream of importing their models/movies and scripting them.
3. I am a complete C# convert. Generics, lambdas, and GC, all at 60fps! The Unity framework is also very sensible to work with, and designed specifically with games in mind.
4. Apple has a bad track record with high level gaming tech. Sure, they are doing more now (SpriteKit, SceneKit), but ultimately the motivation is to get you stuck on iOS. That was maybe OK back when paid gaming was a viable revenue model, but today the only revenue models that really work are free to play. In that world you definitely want the option to be able to ship on Android (with its higher market share). And here's the kicker: Gaming is the one place where "native controls" are meaningless, so theres no "aesthetic" quality loss in not using "native" frameworks. The place Apple is actually impressively advancing gaming is with Metal, and Unity is on it getting it to compile to Metal instead of OpenGL ES. That's the beauty of tools like that, its in their interest to make you worry about the "art" while they worry about the tech.
- agentultra 12y agoCan't stress this enough. Every indie developer who has graciously taken time to chat with me gave me this advice. The problem with starting a game "from scratch" is that you have to invent the entire universe. While this can be fun and is less of a hurdle once you've made game #1001; it's tedious and error prone. You could get frustrated long before you even get to programming your game. If nothing using Unity, or other tools like it, you will save yourself time prototyping by avoiding a slew of typical game boilerplate.
- thorn 12y agoWhat about performance aspect? What kinds of games Unity is suited for? I heard that Unity has some troubles keeping up with smooth 60 fps when the number of objects is quite large. Don't want to sound ignorant. Just wondering.
- amarsahinovic 12y agoI've started to learn Unity recently primarily for 2D game development, and I have been following these [0] tutorials in which they make 2D platformer, seems great so far. [0] https://www.youtube.com/watch?v=cL9iHR1JxcE&list=PLt_Y3Hw1v3QSFdh-evJbfkxCK_bjUD37n https://www.youtube.com/watch?v=cL9iHR1JxcE&list=PLt_Y3Hw1v3...