Post Mortem – Aftermath
Hello in this blog I will be reflecting on my aftermath project. This project took a lot of experimentation and learning new workflows so that means there was plenty of room to make mistakes, but I am extremely proud of the final product.
I was heavily involved in the creative process, going back and forth with Patrick to find the best result, we both where really passionate about this projects as it was basically our dream project. The problem was that we had very different ideas of what was the way to go. For example we discussed heavily the dimensions of the train, I was leaning toward it being smaller so we could work more on the detail and refining, while Patrick wanted a larger train where he could add as many assets as he could, we finally found a middle ground. The creative process taught me plenty as I learned how to push my ideas but also sacrificing some of them. I also learnt how to push back on scale to attain a better result, as we originally had 5 carriages and in the end we decided on one more polished carriage.
Me and Patrick where the main modelers for the project so we had to maintain constant communication. We where working off of a a few reference pictures and concepts. I do think we could have spent a bit more time developing concepts, as it did slow us down. Maintaining consistency was easy as we where always showing our models and getting feedback, we where also using Quixel which meant we where working with the same library of materials.
This was the first time I used a modern asset production pipeline. I mostly followed the hard surface modelling workflow that my tutors taught me. I will be using one of my assets as an example of how I made everything for my final environment. I first start by modelling a low poly model, this doesn’t mean it is super low poly but something that is economic and has a good silhouette as well as having enough geometry for vertex painting.
From the Low poly model I created a Higher poly model with chamfered edges to give it a more realistic edge highlights as well as adding small details such as wall splits and screws. I tried not affect the overall shape in any drastic way as this would result in me having to adjust or remodel the low poly base.
With High and low poly models made, I then unwrap the low poly model, The unwrapping process is pretty similar to older assets I have made, the only diffidence is wherever there is a chamfered edge I have to have a split in the uvs, as chamfered edges through normals can cause shading errors if the uvs are not split, this video explains it better I ever could. From there I use a multi sub object shader to add different colours to the parts of the High poly I want to be made out of different materials. I assign a projection modifier to the low poly model, adding all the high poly elements I wan to bake down, and expand the cage so it has all the parts of the high poly within it. With the cage set up I then open the bake to texture window checking on all the right options and using it bake down all the details from the high poly into maps that fit in the low polys uvs. In this case I had trouble using mental ray for baking so I used quicksilver. I baked the normals, material ID and with a complete baked down the ambient occlusion.
I did my texturing within Quixel as it is the fastest way of getting high fidelity textures. I t also creates maps that are calibrated to work with PBR based engines, as well as producing maps are calibrated for specific engines. i brought in my low poly mesh as well as all the baked maps, the most important being the ID map as it cut down my texturing time significantly. I used mostly the base smart materials changing some of the masking patterns and the base colours of certain elements. I then exported all the maps for Unreal Engine 4.
I the finally brought the maps and mesh into unreal engine where I calibrated the maps so they look in engine, the most important being to turn off sRGB for the grey scale maps, as they often make the model look shinier than it is meant to. In this sketchfab link there is most of the models I made, make sure to make it HD.
This wasn’t the first time I had made assets for a project that would use a game engine, but this was the first time that I had to be involved in implementing the assets I created as well as well as relearning stuff like lighting and effects in a brand new package. Another thing to consider is that things behave very differently in a game engine compared to a 3d package such as Maya or 3ds max.
The first step in working with Unreal was to establish scale so that everything we brought from 3ds max would just work, we also used unreal to block out the main elements of the environment. After that was the nightmare that is implementing, now I understand why the teachers said we should allocate a fair amount of time to it, as it took a lot of time and learning. Patrick was mostly in charge of that, and I was in charge of lighting and effects, a pretty important job. Lighting is probably the biggest difference between unreal and 3ds max as it works with a completely different set of controls. The hardest part was getting the shadows to work appropriately, but with a lot of testing I got it to work.
I believe this was a successful project, although we at the end didn’t completely meet the brief, as we made a good looking environment but it didn’t really tell a story. I am a big fan of working with real time rendering, but it isn’t the area I want to pursue, but I am open to working this way to help with other types of projects.