I met a girl who is working on her masters degree in VR and holograms at University of Montana. I cannot remember what the degree is exactly but she really knows Unity, Unreal Engine, Oculus systems and all sorts of cool stuff like that. She used to work for an indie game company building game environments. She came and talked to my game making classes. She suggested I look at Unreal Engine for VR instead of Unity. So I did. After several days of tinkering and experimenting I am now able to make some comparisons.
They are different, very different. Unity has a huge number of quality tutorials on their web site and a lot of good stuff on YouTube. Unreal is suffering. The Unreal web site has tutorials but not a lot for beginners. There are some but they are very limited in what they cover. There is a shortage of good beginner stuff on YouTube.
Unity is much more flexible. C# programming allows you to do almost anything with it. Unreal uses C++ or BluePrint, a sort of drag and drop language. Unreal as a result is not as flexible but is much easier to work with when doing the tasks it is best for.
Unity has a massive asset store. Unreal not so much. In fact the Unreal Marketplace is pretty paltry. With Unity I can find almost any object for free. Need a domino? It is there. Unreal? Better know how to run Blender or the like.
VR is an unwieldy, unfriendly pig in Unity. Finicky and version particular. Have to download various modules from the Asset Store and hope they work with this version of Unity. Unreal has VR built in and is a piece of cake to get running. If you are going to work in VR, Unreal is the platform. It took me days to get the Oculus controllers to pick up objects in Unity and it was inconsistent. It took minutes to pick something up in VR with Unreal. Unreal has a module that will load everything needed to do Oculus VR. But the trouble is I can find a tutorial that shows me how to make Beat Saber in Unity. I can only find a couple of intro tutorials for VR in Unreal. I need to start searching because the VR is so easy to get started with in Unreal and I really want to get that Oculus ticking.
First person shooter is built into Unreal. With Unity it takes some work and some C#. Build FPS in Unreal. But again there are not a lot of quality tutorials compared to Unity.
At the moment I cannot give a real unbiased opinion. I have a lot more experience with Unity so almost everything is easier in Unity. After three years of dabbling in Unity C# I can actually debug issues and know what the code is doing. Unreal’s BluePrint is still a mystery. By far the biggest separator between the two, at least for me, is the lack of free assets in the Unreal Marketplace. I can learn Unreal but I cannot build all the cool assets Unity has available. For teaching these are just so handy.
Right now I am working through the exercises I give my Unity classes to make a real comparison. The learning curve is not too steep, it just takes time.