Unreal Lightmass Study
June 22nd, 2015
So I recently took a vacation and during that time I thought I’d sit down and play with the Lightmass rendering system in the Unreal 4 engine and see how it compares to a high end renderer like mental ray. It turned out quite well although there were a few visual issues that came up.
Here is the series of images that shows my progress towards my scene match.
In this first pass I learned the lesson that when you have multiple monitors, make sure they are calibrated correctly. I had the reference image on one monitor and was doing the work in the other monitor.
They were the same monitor but one was hooked up using DVI while the other used HDMI. For whatever reason this caused them to have different color and temperature profiles.
Once I looked at them on the same monitor I began to see how different the two shots were.
The camera in my scene was also not setup very well. It didn’t match the shot and seemed to be a little rotated.
This second show shows some of the progress I made setting up the camera and getting the color profiles to match. I did this by checking the reference image and working in the same monitor.
Unfortunately there’s also some steps backwards here. The shadow on the floor is too sharp, there are bright light artifacts on the top of the screen. The floor texture is too dark and non-reflective. Finally the wall in the back of the scene had the floor texture applied to it!
The texture error seemed to be due to some funky stuff going on when exporting my model from Maya to Unreal. Resetting the materials and then re-applying materials per-face eventually fixed the issue. The materials always seemed correct in Maya though. It’s possible it was a exporter bug. It’s also possible it was a human error on my part.
This next pass cleans up the texture errors and attempts to make the floor texture better but still suffers from the over-bright corners in the top of the scene and the odd shadow on the floor on the bottom of the scene.
The floor shadow is also still too sharp.
In this pass a lot of the errors are starting to get cleaned up. I also modled in the small piece of trim along the bottom part of the wall.
The over bright corners at the top have been fixed up. This seems to have been a result of me dropping the global illumination contribution of my main light as well as disabling screen space ambient occlusion (I still use AO for the global illumination pass though).
The floor shadow is now also softer and the floor is more reflective.
Also starting here I broke my main light into 2 lights. One with a low GI contribution and very soft shadows to sort of act as a advanced ambient contribution light. The other light had sharper shadows and significantly less contribution to the global illumination calculations.
This final pass is where I told myself I just need to walk away from this project as it had now began to consume a decent amount of time. I was attempting to get some of the details that were blown out in the previous render visible again.
Unfortunately I deviated too much with my lighting color and took a bit of a step backwards from the previous render. There is also a slight artifact on the bottom trim where the wall changes angle.
This was a fun 2 hour quick project that ended up becoming a 6-8 hour study about how Unreal 4’s lighting and material system works. The lessons I learned from tweaking various material, light and render values helped me understand Unreal 4’s rendering process immensely but towards the end of the project the gains were becoming less and less profound so I cut myself off and considered this project complete.
I learned a lot and will be applying what I’ve learned here to all my future unreal projects.