Belirttiğiniz ihtiyaca göre oldukça zor bir karar. Unreal görsellik için daha avatantajlı bir motor fakat C++ ile kullanacaksanız zorlayabilir.
Unity uzun süredir kullanıyorum, Unreal tecrübem çok sınırlı. C++ ile kullanımı için giriş seviyesi çok bir kaynak bulamamıştım. Udemy'den bir dersle baktım fakat Unity'ye göre daha zor geldi. Bence blueprint ile mantığı kavrayıp sonra C++ ile tekrar bakmak gerekiyor. Unity de ise tam tersi bir mantık var. Dahili görsel programlama sistemi olan Bolt neredeyse C# ile birebir aynı. Kodları kutu olarak koyup birbirine bağlıyorsunuz sadece. PlayMaker biraz daha farklı çalışıyor ama şu an Bolt kadar yaygın kullanılmıyor. Açıkçası Unity'de görsel programlama çok daha sınırlı, biraz farklı bir şeyler yapmak isterseniz bulacağınız kaynaklar hep C# kullanacaktır. Unreal'da ise Blueprint oldukça yaygın kullanılıyor gibi duruyor.
Unreal'in şöyle avantajları da var. Yıllardır kendi görsel programlama (blueprint) ve görsel shader programlama desteği var. Unity'ye görsel shader editörü olan shader graph çok daha sonra geldi. Bundan önce de ücretli Amplify Shader Editor kullanılıyordu. Unity'ye yeni başlayanlar için şöyle bir kafa karıştırıcı bir durum da var. Şu an aktif olarak kullanılan 3 farklı render motoru mevcut Unity'de. Yıllardır kullanılan dahili render motoru buna built-in diyorlar, yeni çıkan render sistemi ile hafif siklet cihazlar için geliştirilmiş Universal Render Pipeline ve yüksek donanımlı cihazlar için geliştirilmiş High Defination Render Pipeline. Bunların hepsinin özellikleri ve kullanım şekilleri farklı. Shader Graph built-in'de çalışmıyor örneğin fakat çoğu asset built-in geliştirilmiş durumda. Unreal'da anladığım kadarıyla böyle dertler yok ama dediğim gibi detaylı kullanmadım.
Bunun dışında Unreal'in gelir üzerinden komisyon istediğini unutmamalısınız. Diyelim ki mobil bir oyun yaptınız gider olarak 10 liralık reklam verdiniz 12 liralık kazanç el ettiniz. komisyon olan %5'i geliriniz olan 12 üzerinden hesaplayacaksınız karınız olan 2 üzerinden değil. Mobil oyunlar için bu çok çok büyük bir sorun. Unreal zaten mobil oyun için çok ideal bir motor değil Unity orada hakimiyetini koruyor ama pubg mobile gibi bir örnek var tabi. CoD mobile ise Unity'ymiş.
Bence sizin durumunuz için C++'ı hiç düşünmeden Blueprint ile Unreal düşünülebilir. C++ öğrenmek ve bunu Unreal ile kullanmayı öğrenmek çok fantastik bir hedef. Sizin için ana amaç görsellikse C++ ile hiç uğraşmayın derim.