As a C++ developer: learning Unity or Unreal Engine 4 first?

C# isn't that far off from c++. Unreal engine's c++ is also highly customized with their own macro and memory management system. I would say it's almost equal effort to learn either coming from plain ol c++. I have used both engines and I can give my 2 cents but I depending on your objectives my opinions may be irrelevant so I would suggest exploring on your own.

Unreal engine
- Good for high end devices and next-gen graphics
- Much less dependent on asset store as it comes with a myriad of tools
- You get access to libraries otherwise very costly for an indie (rad game tools, quixel, metahumans)

Unity
- Less bloat than unreal engine
- Easier to deploy to mobile devices
- Much more resources and tutorials being the most popular game engine
- A much richer asset store but that also in turns means you might have to spend more money

It's definitely worth trying multiple engines especially if its a hobby. But my suggestion based on your needs would be to use unity.

/r/gamedev Thread