1- Company Strategies.
Every engine companies have their own focuses. Epic’s strategy is virtual production projects and games with high level graphics. Unity’s strategy is mobile games (especially for hyper casual games). So, they make their investments to technologies and partners based on their needs.
I actually like this because when you want to focus on mobile devices (especially Android for gaming), you have to support weaker devices as well and this can prevent engine’s improvement on high visual projects. (this is why WebGL deprecated)
2- Language Choice.
Blueprint scripting is really strong and maybe it is the most powerful node based programming environment in the world (maybe Siemens TIA Portal and Node-Red can be competitors for it) but you “have” to use real languages to integrate third party libraries such as monetization tools.
As you know lots of developers don’t like C++ and lots of academic institutions prioritize Microsoft based technologies such as C#. Also Microsoft encourage them.
In short, you will find Unity developers easier than UE and entrepreneurs make their technological stack choice based on if they can find employees or not (you know, companies have to withstand against employee circulation)
3- Package Size
I have some friends who have experience with both engines. They say, Unreal Engine based projects take much more space on storage and there is an APK file size limit on marketplace. Of course you can use ABB or OBB files but mobile projects have to agile. So, developers don’t want to force their users to install big games.
4- Lack of LibUVC
This is a personal thing. I work on digital twin projects. Some potential customers asked us about Vuzix and Epson Moverio based AR projects. Unity can make projects for these devices because of Vuforia and Vuforia can be used for them because an open source Unity Libuvc plugin.
That plugin is old (didn’t get any update for 3 years). So, there are deprecation possibilities and Libuvc is a C project. So, we can integrate it to UE but building it and its dependencies for Android is really hard
and this means project-inside-a-project. So, its not worth for a low cost project.
Eventually I will try to make one but sometimes we just prefer to pass that projects to a Unity team.
5- You said “we couldn’t get any answers about Google Play and monetization and etc.”. You couldn’t get any answers because most users don’t know/care about them I am not perfect and sometimes I have silly questions but I have 7 years Unreal Engine exprience and I haven’t made any mobile project besides Oculus Quest, yet and I have zero experience about your questions. You can get answers about a TV project which use nDisplay, but not about monetization
6- NFT/Metaverse projects. Unreal has some plugins about crypto wallet integrations but actually they just use a cloud API. They are not actual crypto clients. Nearly all libraries are for JavaScripts and Unity has WebGL support. (UE deprecated it at 4.24) So, you can integrate your wallet without a cloud API. This also make it more popular.
You can say that “why UE deprecated it ?”
Because WebGL is a client side technology (for server side rendering we have pixel streaming but it is completely different story). So, if end-user’s machine can’t run it as a native app, they won’t be able to run it as web app. Actually performance will ne much worse because even if you use WebGPU and WebAssembly, you won’t have all hardware acceleration libraries.
So, WebGL platform was an obstacle for Unreal’s improvement on their focus.
And this moved away some developers.
//
In short,
if you want to make mobile games with C#, use Unity.
if you want to use C++ use Godot.