Click here to Skip to main content
15,885,546 members
Please Sign up or sign in to vote.
1.24/5 (3 votes)
I want to start making a MMORTS mobile game but i am confused which development tool to choose and after some searching on the internet got to know about Unity3D and Xamarin. But i dont know which one is better Unity3D or Xamarin.

Can anyone suggests me its pros and cons?
Posted

First of all you need to understand the basic different between them so that you can choose which one to use in your case. First of all, Unity3D is a gaming engine and Xamarin is a cross-platform application development framework. Although there purpose is same, but their functionality and features are different. They both do support C# as programming language and can build cross-platform executables. But there are major differences in both of them.

In Unity3D:

1. You can develop or edit 3D models (external resources can also be used, such as Autodesk Maya).
2. You can also use those models for your applications. Such as: games, presentations and other similar simulations where you would require 3D objects and a little programming.
3. Binaries can be created cross-platform.*

In Xamarin:

1. You can develop entire application, but not the graphics that will be presented. You have to provide the graphics by external resource.
2. Cross-platform support.*
3. You can import FBX or other 3D models (or your 2D graphics if that is a 2D game) but that would then again require more capabilities for Xamarin, thus asking you for a better license subscription. Have a look[^].

*Binaries for different OS would require the OS to be running, such as MacOS or iPhone require you to be on MacOS to build the project for Apple products.

Now, since you want to create a game. I would right away ignore Xamarin and recommend you to use Unity3D because it is a gaming engine. You will be able to import your resources add a little tinkering effects and compile them in binaries (please see the * note above). Xamarin on the other hand, can develop games. But is not a gaming engine so most of the frameworks and assemblies you would have to write yourself or purchase another license and etc. Unity3D is free for indies and low-budget teams, Xamarin doesn't care about that, if you're a student you get offer, if not you get to pay a license. Even for building a cross-platform UI you have to get a commercial license. That is why, I would never recommend using Xamarin, even if C# is the language offered. :-)
 
Share this answer
 
v2
Comments
[no name] 2-Sep-15 9:58am    
Wow, great explanation/Points, have a 5 for this.
Afzaal Ahmad Zeeshan 2-Sep-15 12:01pm    
Thank you.
 
Share this answer
 
Comments
[no name] 2-Sep-15 9:56am    
Nice link, have a 5 for this.
Member 11931150 14-Jul-16 2:43am    
like what external resources?
Member 11931150 15-Jul-16 9:22am    
can we integrate unity in xamarin project?

This content, along with any associated source code and files, is licensed under The Code Project Open License (CPOL)



CodeProject, 20 Bay Street, 11th Floor Toronto, Ontario, Canada M5J 2N8 +1 (416) 849-8900