Eden District
Updated a year ago
Introduction :

Hi, my name is Adil, I'm a game programmer and a 3d environments artist, I decided to take part in this competition to practice my modular level design skills , and see how far can I push Unity's rendering capabilities.

The Story :

Somewhere in the future, scientists have managed to save human consciousness inside quantum computers, this breakthrough had unprecedented repercussions on humans, It lead to the emergence of new industries, and the collapse of many others...The local governments have lost their power to increasingly wealthy and powerful corporations. Featured Technologies : -Hovering aircrafts. -holograms -Virtual realities that are designed to engage and entertain dead people who's consciousness is saved on one of many consciousness hosting companies. -robotic exoskeleton that allows dead people to interact with the physical world. -Cryochambers, for those who want to freeze their bodies and pursue their adventures in virtual realities inside the quantum computers. Graphene becomes abundant, and it's the material of choice for construction, because it's resistant and lightweight...

Assets creation pipeline :

Concept :

Pre production :

I spent more time in pre production than I usually do, I was preparing the texture sheet and the shader for maximum re-usability. The challenge was to find shapes that wouldn't look too repetitive, and at the same time not look dull and boring.

Materials :

I used one MasterMaterial for about 80% of the scene, It takes 1 color mask texture, 1 global normal map, 1 surface details packed normal map for plastic, and another one for metals, and finally one packed maps texture to drive weathering with vertex colors .
The material inspector looks like this :
The first 3 textures define the overall shape of the object (Sampled from UV1)
The Decal Texture is Sampled from UV4, and it allows me to change the color of any mesh in unity by simply offsetting the UVs4.
The Masks Textures are moduled by the vertex painting to drive the weathering effects, and break the repetition.
The 3 normal maps have 2 extra channels packed in , to give a more accurate shading, without sampling more textures.
And Here is the material in action

Colors :
I didnt make a color pallette for this one. I used unity built in pbr calibration tool, to avoid crazy values on my textures, it helped me produce more realistic assets.

Meshes :

I used Face weighted normal to author the environmental assets, because it results in a decent shading without, without the need to bake custom normal map for every mesh.
here are some modules I used to build the level :

Decals :

I modeled some panels and details, and baked them into a normal map, and used it sparingly to add variation and visual interest to the level. I need to mention that I used exclusively deferred decals because they offer more geometry blending features, and are super performant, if ran in one pass.

I used Simple Decal System from the asset store to quickly populate the scene with decals, it's a super handy tool, and it comes with the code source, so it was possible for me to add some features like vertex coloring, and auto-parenting.....

Atmospherics :

I used SlightlyMad volumetric lights to add depth to my scene, and I used Larsbertram69 Lux v2 to add some area lights that work with slightlyMad's volumetric lights solution. I tried to use unity's combo, but the performance took a severe hit on my 10 years old machine.

Lighting :

I went with the fully dynamic GI solution, I used a resolution of 1.5 texel, used lightprobes to light the small objects, and lowered the lightmap resolution for outdoor objects. I followed the advice presented in this Unity's tutorial, and managed to bring my bake time to few minutes instead of hours.

Animation :

I wanted to try Cinemachine to animate my cameras, but I ended up using it to animate any moving object on the scene, the smooth dolly track and carts are such a time saver. I was also impressed by the ease of use, and the time saved when used in conjunction with timeline in playmode.

Post-production :

I used the Unity's postprocessing stack V2, because it plays nicely with Cinemachine auto focus. I tried to keep the effects as subtle as possible and used SSR for reflections, at first I was not happy with the reflections, but after some tweaking I managed to get them to look good in most of the situations. I also used the ACES Cinematic tonemapping, camera motion blur / depth of field combo.

3rd party assets :

Building an environnement from scratch in 45 days all by myself, is not an easy task, so I had to "cheat" a little and grab anything on the asset store that could be used to speed up the process.

Asset store :

Unity Recorder
Science Fiction : Ambiance Sound Free Collection
SciFi Music Pack
Unity Particle Pack
The Blacksmith: Characters
Free Steel Frame Pack
Dieselpunk Hovercraft 01 PBR
Low poly combat drone
Kitchen Props Free
Old Television PBR FREE
Modular Railing Set
Retro Lamps v.1
Pipes Kit
Free SF Fighter

Sketchfab :

Robotic Arm by deryckeredries is licensed under CC Attribution
Two Hour Bust by Devin Spencer is licensed under CC Attribution-NoDerivs
Space Ship by Comrade1280 [FORGE3D] is licensed under CC Attribution
And Mixamo's characters and animations.

Adil Bouchnita
Game developer/Freelancer - Artist