UE4 for Mobile Games

Hey,

I would like to know if UE4 got better in the last years for mobile development?
Are there any performance problems?
I heard that UE4 has huge package sizes :confused:

I’m using UE4 for Windows/MAC/Linux but never tried it for mobile.
Since now I’ve used cocos2d-x for 2D Android/IOS games and would like to create some 3D mobile games, but I really don’t wanna use Unity!
But I’m also not sure if UE4 is good enough in terms of performance,size, etc for mobile.

Can anyone give me some detailed info about this?
I’m quite interested in mobile dev, because I’m working as mobile game developer with a unknown custom engine.

i think tappy chicken is the standard in the smallest UE4 game you could do - https://play.google.com/store/apps/details?id=com.epicgames.TappyChicken&hl=en - 26M

GameDNA has made this tool to strip content out as well so I’m sure you could get your size down even more - [FREE] Android Manifest Configurator - Community Content, Tools and Tutorials - Unreal Engine Forums

UE4 has gotten a lot better for android in the past year, still has a way to go but yea I think its worth a go

There are a couple of things you have to keep in mind depending on your requirements…

  • Unity supports more platforms. Windows Phone, Blackberry, Tizen for example.
  • Unity’s store has plugins for more platforms. UE4 can export to Android, sure. But what if you wanted to take advantage of Amazon’s store with IAPs and GameCircle for achievements / leaderboards? You will have to implement those yourself.
  • Unity supports more Android devices. I don’t know about CPU / GPU support, but at the very least it doesn’t require as powerful hardware to run. So you can more easily target older devices while still getting good performance. For UE4 to target a ~4 year old device (which is really quite ancient) you need to pretty much be completely unlit or performance is terrible. But let me put it this way: A $200 phone I bought this year can do pretty much anything in small amounts.
  • C# vs. C++. Personally, I find there are next to zero tutorials on C++ with Unreal Engine. It’s an absolute pain in the you-know to decipher how things work. Aside from that, it’s just that C++ is a little more typing-intensive.
  • C# vs. Blueprints. There’s a neat thing called Blueprints that lets you code visually without knowing how to program “proper”. You can do the same thing in Unity, if you buy a store plugin.
  • Writing shaders vs. UE4’s material editor. Again, if you want to visually edit shaders in Unity you gotta buy something to do it.
  • I wouldn’t worry too much about APK size unless you are targeting so-called “developing countries” where limited, expensive data is a concern. The Play store now supports OTA downloads (without an obb file) of 100mb as well. This said, last I checked UE4 spit out larger binaries. Unity released an update today which officially supports compiling to C++, so with this new version I’m curious to look at the difference in file sizes now. But UE4 was about 15-20mb more than Unity last I checked.

There are other things to keep in mind like royalties vs. licenses, splash screens, but those aren’t directly related I guess.

Are there any tutorials on how do they get such small package size?
Small package size is very important in tearms of game promotion.

I agree with most of this post.

I find it near impossible to use C++ with UE4. I’m a C# coder myself, and there have been times I’ve had to learn C++ to make use of DLL files with C#, but even then C++ felt much easier outside of UE4, than it does within UE4.

The package size is BIG. The lowest I’ve been able to get a nearly blank package is around 33mb, and that’s using ManifestRequirementsOverride and PakBlacklist-Shipping, removing as much possible without breaking the project. I’m curious how tappy chicken is only 26mb.

Lastly, what I consider a huge issue is the fact that UE4 is drastically behind with support on mobile features. The in-app purchase setup is ridiculously complex, and there’s no single tutorial that explains it all. There are a lot of features missing for mobile devices but that are found in Unity.

I do enjoy how easy UE4 is to pick up, and how intuitive the interface is. I’m confident in saying that it’s power and ease of use makes it the best engine for beginners looking to go pro. But they really do need to work on the mobile department.

Give Godot Engine a look, might be what you need!

For me the deal breaker with Godot is how hard it is to get mobile services to work. If you want Google Play services, you need to compile Godot from source. Not just once, but you need to recompile the entire Godot engine for every single unique package name you want to deploy. Absolutely unacceptable, but that’s the price of it not being an official feature, it’s rather half-baked.

  • I just care about Android and IOS for mobile
  • For my next game I’ll target modern devices anyway :slight_smile:
  • I actually only want to work with C++, thats why i like ue4 more than unity, I rarely use BP in UE4. I know C# and also worked with it for few years but I like C++ much more.
  • As far as i know its possible to write shaders in ue4, but the tutorials to do so aren’t that easy to understand :o

if you look at unreal engines youtube video history, i think they did a live stream on tappy chicken (and then match 3 which is the new demo) and in those videos they talk about techniques they used. there is a guide on the website too about file size and tips. its something you’ll have to do some research on but yes its possible and there is material out there

btw, does UE takes royalty for the games we created for android?

For everything you create with UE4.

My experience with android after learning it for a year or so that UE4 is not for android ,they have 1000 of fix every update but nothing that let this engine run smoothly on android , so if you are a beginner then don’t wast your time on UE4 for android game development and go for unity as you will make games that run 10 times better than UE4 , but if you already have knowledge on UE4 then yes you still can make some cool games for high end device . its been many years and still UE4 doesn’t support direct wifi or Bluetooth connection between 2 android device to make mp local games which sometime is a deal breaker .

My device can run asphalt 8 smoothly as for tappy chicken i get lag sometime that make me lose :open_mouth:

Moto G 3 - Mobile HDR True - with settings in low - get 35+ FPS
Moto G 3 - Mobile HDR True - with settings in mid - get 20+ FPS
Moto G 3 - Mobile HDR True - with settings in high - get 15+ FPS

Moto G 3 - Mobile HDR False - over 45 fps

Moto G 4 - Mobile HDR True - with settings in low - get 35+ FPS
Moto G 4 - Mobile HDR True - with settings in mid - get 27+ FPS
Moto G 4 - Mobile HDR True - with settings in high - get 15+ FPS

Moto G 4 - Mobile HDR False - 60 fps

Moto X - Run nice in mid and low, high is rly high for all devices, but you can tune a little to get high fps.

UE4 is the best engine forever, I know it since 2000, in Unreal Editor 2
Remember, actually the curve is low devices to high devices… more years… more high devices… less low devices…
UE4 vs Unity? HA! kidding me? Vulkan? and GG!

Enjoy :wink:

There’s always going to be low-end > high-end devices, I keep hearing this from other people too saying “wait for the smartphones to mature”, they already have!

UE4 is not for 2d games/WebGL etc that’s just bad marketing from EPIC.