Focus: Unreal Engine is a series of posts where I'll share my experience and discoveries working with Epic's free Unreal Engine 4 for video game creation. There will be no set time for the series to end, but I will have a goal: the creation of a playable game level for Halloween in October 2019. I will share the level with everyone for learning and for fun!
Feeling In Over My Head
For the last week, I've gained increased respect for game creators. The amount of details you have to attend to and the mountain of work is daunting, to say the least. Being a beginning creator with Unreal, I have often felt in over my head. I thought perhaps that using a project-focused learning path would actually work better than a chronological approach. I don't think that now. Not knowing certain important elements of Unreal has left me stuck and, in some cases, nearly losing all of the work I just spent hours working on.
Level Streaming is a good example. I thought I understood the basics, but once I started creating new levels by migrating content from my main level, I got mixed up and nearly lost an entire level. It seems I don't really understand how the level streaming process works. The problem is that the persistent level (my main level with the haunted house) is the one where I created all of the sets and my list of assets for the level is nearing 200 pieces and was badly disorganized. This was why I screwed up the asset migration.
So, I spent several hours organizing my files and they are in good shape now. The Unreal details panel, however, has a nasty habit of opening all of my folders when I load my main haunted house level. Which is a pain because I have to go through and close them all to start a new session.
Finishing Up Level Design
The good news is that I finished the majority of my level design which was a blast. I really enjoyed setting up the cemetery and the basement. I also learned a key trick in creating things in Unreal: if you put something together (a row of headstones for example), just copy them and move them to another spot. You can always come back and adjust them so they don't look exactly the same. This copy/move technique is a real time-saver and makes designing a scene go much faster than other parts of the creation process in Unreal.
All I have left to do is some final environment design, the end of the ride (which is a secret, so no spoilers) and a few pieces inside of the haunted house which I'm creating in Blender 2.8
Using Blender 2.8 to Help Design Process
I'm really starting to get the hang of creating and exporting .fbx files in Blender. I've created a new cart for the ride (coffin cut in half with a big skull on the front). Also, there is a spider tunnel I created and a few other small things. I'm also able to adjust assets I've found in the .obj format and then export to .fbx which Unreal likes very much.
Textures and materials are a bit harder to sort out although it's not a problem with Blender, it's my own ignorance. Fortunately, there are many, many great tutorials out there for the Blender/Unreal match up. I've been watching them a lot, especially the ones on animation. I've gotten my first Mixamo NPR in the game and will be adding many more. The process is fairly easy. It's getting multiple animations to loop that is somewhat hard. And I don't even know how to trigger animations yet. My forehead is already sweating.
Starting on Lighting
I've started lighting the various sets (house, basement, cemetery, and lake) and it's a slow process as I don't know the features of each light yet. I add one type and experiment until I find what I like. I have a feeling the lighting process will go faster once I'm more familiar with the lights. I keep reminding myself to keep things simple.
Help from Unreal Tech
I tried and tried to understand how the demo pawn and camera set up works. That's where the camera is focused on the player start and a pawn is placed inside of my cart with the effect that the player travels along inside the cart and can look around as it moves. Unfortunately, after hours of work (I even have an example map that contains the blueprint code), I simply couldn't recreate the effect. I reached out to the Unreal forum, but no response. Probably because my request for help was badly worded.
Eventually, I looked for direct technical help through Epic's PR person who I had told about the Dark Ride project at Siggraph 2019. She got me in touch with someone who will use the game communication system Discord to share a screen and help me solve the problem. He's got a busy schedule so I have to wait until next week.
Although I'd like to solve the problem now, I can easily work on lighting, animation and scares for a week. It looks like I'll make the October 31st deadline, but just barely and perhaps with not as many scares as I'd like. But the goal is to get it done so simple, simple and simple is the theme.