+ 132

C# vs C++ for mobile games?

Anyone know if C# or C++ would be more performant on iOS devices? I already know C# and it tends to be slow sometimes when handling multiple physics objects and "high" graphical effects. Would C++ be better for these tasks on mobile devices?

18th Jun 2018, 4:45 AM
j..g
j..g - avatar
179 Answers
+ 123
I don't know about mobile apps written with C++, but I do know that you can write iOS apps with C# and Xamarin.IOS library.
18th Jun 2018, 8:06 PM
Igor Makarsky
Igor Makarsky - avatar
+ 108
If you guys keep debating on which language is best suited for games, I don't think you'll ever even get started with anything. Pick a language, create stuff with it, try the next language, create stuff with as well and choose the Language that fits YOUR needs. NOTE:: What others prefer in games might not be what you want
19th Jun 2018, 10:18 AM
Dlite
Dlite - avatar
+ 91
C++, for two reasons. 1) a lot of games are programmed in C++. No mainstream game is, as yet, programmed in a managed language. 2) C++ is as hard as it gets. You have to master manual memory management and generally no bounds checking (beyond the excellent Valgrind!). If you master C++, you will find this transferable to managed procedural languages. Less so the other way around. C++ has a level of complexity close to APL! You'll never get better by playing weaker opponents. People who understand how the machine works make better programmers, because all abstractions are leaky
19th Jun 2018, 2:25 AM
Maninder $ingh
Maninder $ingh - avatar
+ 53
C#, a Microsoft made language, on iOS, made by Apple? Thats an oxymoron... Really though, I don't know awnser. C++ is more performant than C#, but that's not accounting for the possibility of if they can even be developed on iOS. I just don't know. I know Java can though (and obviously Swift).
18th Jun 2018, 5:17 AM
Ahri Fox
Ahri Fox - avatar
+ 32
Lev Vasilyev Let's just say both are great in their own ways
18th Jun 2018, 6:48 PM
Dlite
Dlite - avatar
+ 32
yeah the followings are the steps for Unreal -> step1-.learn C++ class and Blueprints...how they are related step 2-learn Class Viewer step3-learn OOP ( encapsulation, inheritance) step4 -learn to use API reference step5 -learn what is Difference between UClass and object instance step6 -learn how to make actor reference and setup object variable step7 -learn how to make function calls from actor references (without interfaces)
19th Jun 2018, 5:26 AM
Andrew Ting Mai Zau
Andrew Ting Mai Zau - avatar
+ 28
I guess c++ is good with game application and consoles
18th Jun 2018, 6:44 PM
Pius Githugu
+ 28
I like c++ for electronic project
18th Jun 2018, 10:34 PM
JDL
JDL - avatar
+ 25
yeah..Unity is slow when it comes to performance...unreal is better ..my recommend ation only..try Unreal..you wont regret
19th Jun 2018, 3:47 AM
Andrew Ting Mai Zau
Andrew Ting Mai Zau - avatar
+ 20
Ahri Fox it just uses the mono implementation for c# just like xamarin. Christopher DeWeese the benchmarks that i know don‘t really show that much faster performance when using c++ over c#. it might also depend on your usecase. if you are doing mainly 2D+physics a more 2D focused engine might be better if you want to use unity and have physics problems you could write your own physics code in c++, but unitys physics should be pretty optimized
18th Jun 2018, 5:41 AM
Max
Max - avatar
+ 20
KyuZee Ahri Fox I have already built and published 4 games to the App Store using Unity. I recently started learning Unreal to make 3D games and so far I am liking the workflow. My goal is to make 3d mobile games, and I'm debating wether I am better off using one of these game engines or code it natively in Apple SceneKit. I heard SceneKit is very limited and that it's best to use Unity. Unity seems quite bloated and slow when it comes to certain tasks, and Unreal beats Unity at this. Do y'all think Unreal is overkill for a 3d mobile game? Or is it fine enough for me to keep learning it?
18th Jun 2018, 7:22 PM
j..g
j..g - avatar
+ 18
C++ for better perfomance (HARD LEVEL, TOUGH SKILLS) C# for beginning, can be used for cross-platform coding (by means of Xamarin)
18th Jun 2018, 6:47 PM
Lev
Lev - avatar
+ 16
Prefer C++ as far compatible
18th Jun 2018, 6:46 PM
Bandana Bisht
Bandana Bisht - avatar
+ 16
I recommend C# with unity, as you said you already know C# and because unity lets you earn 100,000 dollars a year with no royalty or without paying a penny, where unreal has a royalty, so I suggest unity :) then again.. I am a newb so what do I know? lol
19th Jun 2018, 3:14 AM
Something
Something - avatar
+ 15
HEY MAN!!!! 👉don,t go here and there and only listen to me. take your start with unity3d without worrying!!! unity3d +C sharp will take you to the top!!!!,🙌🙌🙌🙌🙌
19th Jun 2018, 2:21 AM
Bilal Khan
Bilal Khan - avatar
+ 12
Max True, Unity uses C# to code the game, and it can be usable on iOS. But it may be converting the code to something else so it works on iOS. It doesn't necessarily mean C# works on iOS. Though it does mean it's possible. But the OP is looking for performance, and Unity is a bit bloated, so I think it's disqualified.
18th Jun 2018, 5:22 AM
Ahri Fox
Ahri Fox - avatar
+ 12
C++ greatest challenge is memory allocation
19th Jun 2018, 7:31 AM
Dlite
Dlite - avatar
+ 11
for me c++ if python one of the choice's i choose python for 3d games pandas3d and for 2d pygame. :)
19th Jun 2018, 3:46 AM
Real Gutch
Real Gutch - avatar
+ 11
Ishola Obafemi With C++, you can still write a GUI, it's just harder. But with C#, getting the graphics quality above a certain point is impossible. C++ has this point, too, but you reach it slower.
19th Jun 2018, 5:40 PM
Timon Paßlick
+ 9
C# is not as “close to the metal” as C++ , in C++ you can use c as well. Almost every Linux machine you can find GCC and g++, so that’s a big win. I like C# as well though, it’s a nice language. Look at the benchmarks: https://benchmarksgame-team.pages.debian.net/benchmarksgame/faster/csharpcore-gpp.html
20th Jun 2018, 6:12 PM
Bill Zelenko
Bill Zelenko - avatar