On my last article of this series, I gave you my impressions on the new hair system. Also, I would like to report I managed to "fix" the issue.
It turns out the Niagara Groom Asset has issues with the PhysicsAssets, causing the game to crash (as I mentioned). I noticed the game would work just fine if I removed the PhysicsAsset from the character (keep in mind that you may need the PhysicsAsset for specific things in your game, like localized damage).
RELATED: Unity user explores Unreal Engine 4: Part 1
RELATED: Unity user explores Unreal Engine 4: Part 2
RELATED: Unity user explores Unreal Engine 4: Part 4
RELATED: Unity user explores Unreal Engine 4: Part 5
RELATED: Unity user explores Unreal Engine 4: Part 6
Before I continued exploring the more advanced features of UE4, I thought it was a good idea to start with the basis: building a scene from scratch. Rather than coming up with a random scene, I decided to recreate a scene of one of my studio’s projects (a horror game).
Importing assets into UE4 is as simple as using drag-and-drop from the Windows Explorer onto the UE4 window. You are shown a window that contains different import options.
Using UE4 to build a scene is pretty similar to Unity: you drag your objects from the Content Browser (the equivalent to the "Project Pane" in Unity) and start building. However, there are some minor things that are very different to Unity. In Unity, you can use CTRL+D to duplicate an object, but UE4 uses CTRL+W (or holding ALT while dragging an object to create a duplicate on the fly). Another thing Unity has but UE4 lacks is the ability to "reset transforms" on the scene (in Unity you can right-click and "reset" all transforms, sending all objects to 0,0,0, but UE4 requires you to manually enter the 0,0,0 coordinates). These are minor things, and I actually was very used to do all of this while I used UDK, but, after using Unity for a while, the lack of these tiny time-savers feels like a big issue to me.
While UE4 doesn’t require you to turn your imported assets into "prefabs" (UE4 calls them "actors"), I decided to do it because I think that will make things more manageable, and also because I think that will allow me to create variations of different objects (for example, imagine having 2 versions of a table, with 2 different textures). Making actors was pretty simple: all you have to do is create a BluePrint class as an actor, and then drag-and-drop your models onto the BluePrint editing window.
Another thing I touched a little bit was material creation. I can say it will take me a little while to understand all the functions in the material editor. Other than that, the material editor is similar to any other node-based editor, which makes me feel right at home because I’ve been used node-based material editor since I first tried Maya over 10 years ago.
One thing that is very evident is how Unreal’s renderer is "smoother" than Unity’s. For example, the shadows have a different, smoother fall-off, and the shadow baking displays less artifacts. Also, out of the box, the materials are a little more realistic. Overall, right out of the box, the graphics quality is better in UE4 than Unity (however, I do think developers should strive to develop their distinctive look for their games and not stick to the "UE4 default photorealistic graphics" look). Keep in mind that has changed in the latest versions of Unity (specially now that we have the HDRP) and the Unity renderer has gradually improved with every update.
I am going to make a better lighting and light-baking comparison when I finish the scene. Right now, the lights in the UE4 version of the scene bakes the lighting a lot faster, but it only has one light and two pieces of furniture (as opposed to the 4 or 5 lights and the 8 pieces of furniture), so I think it is unfair to make a comparison right now.
There are a couple (more) of things I don’t quite like about UE4: on one side, having to manually save your assets (if the editor crashes, whatever changes to your assets are lost). On the other side, having all post-process effects on by default (this was specially a problem when I was setting up a light, since the "eye-adaptation" is on by default, making it hard to visualize what’s the "real" lighting in a scene).
I think it’s best to continue with the graphics side of things before I delve into things like programming and AI. My next stop is post-processing, so I can get a better understanding of that before I move on to more complex things.
Get Unreal Engine: https://www.unrealengine.com/en-US/get-now