I am about to dive into Unity and/or UDK coming from a background of Game Maker, Warcraft 3, and Python.
I plan to make my FPS game using either Unity or UDK.
However, I will be using the FPS game as part of a Turn based game where players will fight over control nodes, which give extra resources in the turn based game.
Will it be easier in the long run to make everything unity, so it is easier to share data between the games? Or maybe make them all one client? A turn based game doesn’t seem possible in UDK.
I studied UDK in college and I found it to be extremely redundant when it comes to implementing assets. If you want to make a tbs fps hybrid, I would use Unity just for the easy of workflow. I made a tbs/fighting game hybrid with game maker, if you want to blend two genres together you want a system you know very well. Like he said, both can do it. I would go with the system that is easier to learn. Unity.
Chariots,
Have you tried the more advanced features in Unity? Things like character animation, IK controls and ragdoll?
How do they compare to UDK?
When I started with UDK I was amazed at the powered ragdoll physics and lighting in the engine but as time has progressed and my team attempts to turn a demo into a real game the AI, Kismet, endless unfixed bugs and slowness of things we write in script is killing us.
I am considering jumping to Unity also for the more favorable licensing cost and better Oculus Rift support as well.
Anyway, have you had experience with advanced character and physics systems in Unity? How were they in comparison?
Don’t get me wrong bro,but you asked it it the wrong place.Everybody here uses unity in their projects and loves it,I know it sounds cliche but you should try both and see wich one fits in your project better
However I think that’s it’s way easier to make a fps using udkhaters gonna hate(it’d feel like creating a mod for ut3 or something)
The question can be answered only by people who know both Unity and UDK. There are two obvious places to find them: Unity forum and UDK forum. But on UDK forum they do not allow comparisons between engines, so Unity forum is the only place left.
But it’s kind of tendencious.It’d be the same as starting a BMW vs Mercedes topic in a BMW forum,you obviously won’t have neutral answers.Besides that as I said before I don’t believe there is such thing as best engine,everybody should try as many as possible and use the one that can get the work done easier
If you are in the middle of nowhere and something serious has happened, say, to the car’s engine and the on-board computer knows it, will both Mercedes and BMW still let you drive to the nearest place where you could get technical assistance despite the fact that it might kill the engine completely? Some people say, these cars behave differently in this situation, one of them cares more about itself and the other one cares more about the driver.
When someone asks about the differences between Maya vs Max vs Cinema4D vs …, what one can do that others can’t or what tools one has that others don’t, the typical answer is like “they’re all the same, use whatever you like”. It’s a bullshit, not the answer. There’re always big and little differences between Mercedes vs BMW, Maya vs Max vs others, Unity vs … When someone is curious about these differences, usually nobody wants to help them to clear things up. The actual problem is not about answers not being neutral, the problem is - there’s usually no answers at all, as if both Unity and UDK had the same funcionality and the only thing that is different is the workflow.
I know from UDK forum that this engine can’t create geometry at runtime. You can instantiate preset objects, but don’t have access to vertex data and can’t procedurally generate anything like you can in Unity. This is a pretty huge difference that makes it impossible or prohibitively difficult to create certain types of games, like voxel-based (there’s no minecraft clones built with UDK except really primitive ones) or city-building games (how would you generate road network if you can’t create arbitrary meshes?)
When nobody wants to help, it would take years or at least many months to learn two engines well enough to be able to make justified decisions.
I have found Unity to have an extraordinary amount of leniency to people discussing touchy or taboo topics on these forums. It’s like they value people’s freedom of expression, which is strange since they don’t legally have to on their forums. UDK’s forum policies are what I would typically expect of a company. Just another one of those things that makes Unity special. They appear to actually have some philosophy in addition to a business model.
If I’m not mistaken, that David Helgason himself said once that the thing they created turned out to be not just an engine, but a movement. In Russian these two words even share the same root.
I’d imagine that creating a FPS using UDK would be easier for a lot of things, since it’s a FPS/shooter-focused engine (or at least appears to be). Unity is quite different - it gives you the basic tools and framework, then gets out of your way. This could mean that you end up needing to write more code - but there are third-party solutions such as http://www.fpscontrol.com that would be worth looking at.
Considering I currently have to work in the UDK for a project, I can honestly say that Chariots hit the nail on the head. UDK is more of a Mod development environment than a game development environment. Their documentation for setting up a game project even uses the project name “MyMod” instead of “MyGame”. That and I find it incredibly frustrating trying to get anything that isn’t the norm for an FPS to work.
Especially as, in UDK, you’re stuck with their class hierarchy and their component model. In Unity, I can set up the project architecture however I want…and by doing so, I’ll know the project far more intimately than anything I could do in UDK. If it wasn’t for the facts that the project had a) a non-existent tech budget and b) required Rift integration, I’d have forced a switch to Unity long ago.
Oh, and the documentation for UDK is a real pain in the arse.
I have worked with both and I LOVE them both, UDK for the included tools and raw graphical power, and Unity for it’s flexibility and ease of use. UDK for an FPS seems like a no brainer, hell, you could even do it with Kismet without touching any code. However the turn based part will take more work and learning if you don’t know their codebase, but it can be done. With Unity you will have to do everything from scratch which is good because you have more control, and you can also publish on more platforms than with UDK.
I think it’s a no brainier use duke for an fps game. If you came from war3 you can make a lot of games with Warcraft 3 look at dota for example it’s only if you need to go outside the engines limitations, ie compare dota to dota 2. It’s not to say unity couldn’t do a highly stylized fps super hot or flipped,because you could crank a pro type very quickly
I studied UDK quite a bit before learning Unity. UDK has some really nice features, but the code base is heavy and bothersome to understand and work with. You could of course ignore it totally and make a game from scratch by not extending UDKGame (I think it was), but I can’t see the reason why you’d use UDK in that scenario as the main reason of using UDK just went away (reusing existing code). Unity is far easier to learn and work with IMO.
Ever since I started using unity, I have never looked for another engine. I did miss the material editor from UDK for a while, but then Strumpy made this excellent editor for unity:
You’ll learn a lot whatever choice you make. Any experience you get will be valuable.
EDIT:
ALSO, Unreal Engine 4 is just around the corner, and UnrealScript will no longer be used. So I wouldn’t bother learning a language that isn’t going to be used anymore.
Furthermore, UDK is not anywhere near as popular as Unity. Check the forums. Having an active community that can help you, and which contributes with scripts everyone can use is very powerful.
Unity is easier to use than UDK. Getting assets are dumb simple and accommodates differing assets extensions(fbx, collada, max, etc). The scripting is easy to implement since you get an integrated ide. You can also find external code highlighters for other IDEs like sublime text 2.
I’ve used UDK for about 2 years before discovering Unity. UDK’s kismet is great for development, but has one fatal flaw: non-persistance through levels. Playmaker FSM is used on the gameObject directly so it can be prefabs and used in any level.
Unity is missing extensions that UDK has from the start, but a little coin can solve that.
I suggest:
Playmaker -visual scripter for rapid development.
Aron A* - manual AI solution
Ultimate FPS - weapon creation solution
AI for UFPS(it has a bug in it that makes me not use it)
Remember: Companies that use UE3 are not using UDK. UE3 comes with native code that their programmers can tweak to their hearts desire. That’s something to think about.
I am waiting to see how UE4 is going to look, though.
You can choose either of those engine, it just that each has it’s own pro and cons.
I did a ton of research online to figure it out which game engine we wanted to use to make our games. Despite the fact, that UDK provdes a better “realistic” look, we choose Unity for the sole sake of getting the codes done in a fraction of a seconds with tons of online references.