- Home /
How to achieve the same rendering
Hello everybody,
I already own a model of the city like this one. But now, I try to find the best way to get the same rendering of the screenshot below. It comes from the game Mirror Edge.
Have you some good shaders or tips to advise me?
Thank you a lot
Answer by Higgenbothom · Jun 10, 2014 at 11:29 AM
Simply put: you can't. Let me clarify: Mirror's Edge was made in the Unreal engine, and you're working with Unity. It's not the same.
Having said that, this not particulary hard look to accomplish. This is not so much a shader thing as it is a lighting thing; there's no real use of textures, it's pretty much all a simple lambert (flat) shader, much like the default Unity shader (with the exception of the water, but that's a whole different story). A directional light with hard shadows should go a long way. You might want to bake the light into a light map to get the best result.
These light blue shadows are pretty easy to do. If you go to edit>render settings, there's an option to change the ambient light color. That color is applied to all objects that are not lit. This basically means that it changes your shadow color.
The shadows you see on the base of the buildings is an effect called "Ambient Occlusion". Unity can do this in real time, but you need a pro license for that. Even then, it doesn't look that good. You can also do this for free (and it will look much better too), but you will need to bake it into a static lightmap. You might want to turn the ambient occlusion down a notch though, full AO (all the way up to "1") might be a bit too much for a look like this.
If you do use light maps, you should be able to get darn close to this. Unity uses a seperate program to bake lightmaps called beast. Mirror's Edge used it too.
I hope I've answered your questions. Please let me know if there's anything else I can help you with.
Additional info on the lighting of Mirror's edge: http://www.slideshare.net/DICEStudio/henrikgdc09-compat
I have followed all your advice and this is what I have today. I will still try to make it better but I think I'm quite close now. Thank you a lot!
Don't forget that there's an eyedropper tool next to every color selection box in Unity, which you can use to sample the ambient color directly from the image you posted above (the one you have now looks a bit too light I$$anonymous$$HO). Also, like I said, the Ambient occlusion is too much (look at the picture, the dark grey shadows are very subtle). Try putting it on 0.25 or something like that.
Your answer
Follow this Question
Related Questions
Using Color.Lerp with Lightweight Render Pipeline 1 Answer
Layer Dependent Reflections 1 Answer
how to do a simple multi-pass rendering? 0 Answers
Forward Rendering for Terrain, overriding the shader? 0 Answers
How to remove URP from the project 0 Answers