Polygonal Mind
  • Home
  • Metaverse Builder
  • CryptoAvatars
  • MegaCube
  • Blog
  • Decentraland
  • Projects
  • Assets

Blog

Nails, bolts and some ducktape, good looking scenarios in a low spec platform

3/24/2020

0 Comments

 
EspaƱol
The Mission

We all want to get great results in our daily tasks of creating stunning scenarios and replayable (or not) experiences for a selected range of audience. This article goes through tips and workarounds when working with high technical constrains that are out of our control and we just have to get along with them.
Resources

  • Maya LT 2018 or higher
  • Unity 2018 or higher
  • DCL Unity Plugin (external)
  • DCL (Target Platform)
  • Photoshop CC (Bitmap editing tool)
Good looking scenarios in low spec platforms
#01 First of all, understanding your platform: DCL

When developing for a specific platform, you get the advantage of knowing what can and what cannot be done. This way you can get an idea of what you were thinking of doing won't get along with the engine at first sight and start thinking workarounds for the first production expected-unexpected troubles to get the same visible results.

Decentraland (DCL from now on) is an online 3D-powered-platform that aims to create a vivid digital world as a life sim owned by its users, ruled by a few (apparently) technical constrains and backed by blockchain technology. I must add that the platform engine is still in development and can change as the final first release of the platform is made. Although its documentation is scarce when explaining how to work with 3D scenarios and is not well told how the engine works, artists can take a huge hint on how their creations will look or behave in scene by knowing that Decentraland runs in its core Unity.

Their "publishing-tech-constrains" are online to take a general boundary, >>Link<<, but overall there is one thing that Unity loves when rendering your scene: keep it as simple as possible and drawcall reduced at maximum.

Don't panic if your scene has an incredibly amount of theoretical drawcalls, DCL will end rendering your stuff but making it easier for the engine will reduce the time your creation appears on screen.
​
So what are the tech highlights in DCL:
​
  • All childs of a mesh will be blended into one mesh (parent), if the mesh has to interact with the player, you should remove it from the hierarchy and place it in root.
    • In Unity the best suitable scenario is to make one mesh with only one material to avoid drawcall duplication, but is not clear if DCL is affected.
 
  • In order to create colliders you must create another mesh with the name "_collider" on its end to indicate DCL that the mesh will work as a mesh collider and should not be considered as a visible model.
 
  • Within Unity, the export plugin will detect the instance of materials as independent materials, but during the export this "issue" is fixed. You have to keep a manual count of the materials you are using.
 
  • Unity works with the X axis inverted, this is a huge trouble at first because the export will flip the model and cause the model to surpass your LAND boundaries (or just make it look displaced). This issue is fixed by rotating the model 180 degrees on its Y axis to preview and test inside the Unity Editor. The transforms are reset once you export (and they will look as its shown in Unity).
 
  • DCL uses a general "Ambience Light" mixed with the basic skybox of Unity that highly lightens your scene, keep that in mind when creating your palette of colours or planning textures, as clear tones will get highly lighted.
​
  • Although it accepts the PBR pipeline and the Standard Material from Unity, it doesn't get all of its capabilities, making it tricky to get good results without applying texture channels or being able to modify the shader texture input to save texture count.
    • Emissives are a good way to enhance your creations, the DCL renderer has a bloom post-effect.
DCL doesn't work with common 3D file extensions (.fbx .obj ...) instead uses its own file extension .gtlf where all data is stored and compressed for the engine to place in scene.
Useful DCL official docs for this issue:
https://docs.decentraland.org/3d-modeling/3d-models/
https://docs.decentraland.org/3d-modeling/meshes/
https://docs.decentraland.org/3d-modeling/materials/
#02 Blending DCL boundaries, atlas packaging

At first sight it may seem that DCL is quite restrictive with the amount and size of textures permited but through reutilization, reconversion and a little bit of creativity you can achieve great results and at the same time not use a lot of textures.
​
For example we have this spooky tower composed by a notable amount of triangles but using only 2 textures for the whole appearence, achieving nice looking results.
South Tower in Decentraland
The spooky tower as seen the 27th of December of 2019. The Base of the tower is still in development.
South tower in Decentraland
South tower in Decentraland
The key in this type of projects is to work with Atlas and reusable-tileable textures. Even small textures can make a difference in your scenes.
One atlas texture was designed for all the "ground" and the dirt elements such as the rocky stairs and the wasted garden. The other texture was designed for all the house elements. It is important to keep the textures as neutral looking as posible to avoid repetition to be noticed.
512 px textures for south tower in Decentraland
The building (512px x 512px)
This is an Atlas made out of neutral looking textures with the purpose of being reused constantly in the environment.
512 px textures for south tower in Decentraland
The grounds (512px x 512px)
This is a tileable, easily reusable and seamless texture
In multiple cases by folding the UV geometry you can place the whole model within the atlas and get the desired results.
UVs for south tower in Decentraland
The Uv-s of the interior walls are folded in a way that it seems a wall with double color, the same goes for other parts of the house as they keep on repeating without being clear. Note that all the pieces use this texture, creating coherence between rooms without being noticeable that they are just repetitions.
512 px textures for dark house in Decentraland
A texture of 512px made this!
Furthermore even hosting the geometry projections in a really reduced UV area can be valid as a result. Texels are quite important here, so keep in mind to give a major space to uvs that will be seen closer than the ones that cant be barely visible.
Textures in Decentraland
The top roof cant be seen from a normal point of view, it simply uses a minimum of space where matches with the surrounding colors.
UVs position textures decentraland
Its Uvs are located bottom-left under the ston railing
The building of course shares other materials with other props among the scenario, materials representing bare metal, gold or even rock are shared and non-exclusive from an area of the environment.
Unity materials for rock, metal, gold
#03 VFX for a non-VFX platform

Visual effects are a  ̶p̶a̶i̶n̶ ̶i̶n̶ ̶t̶h̶e̶ ̶a̶s̶s̶ troubling and sometimes messy issue, commonly avoided when developing just because the engine is not used to it. Even a simple AO or Bloom can ruin your frame rate in a low platform (or even in the high ones) and DCL doesnt support any (but bloom) **so here is when you put on your creative-mood-hat and you get to work with some useful workarounds for Volumetric Lighting, Ambient Occlusion and Bloom.

Luckily DCL enabled recently the emissive channel from the Standard Shader and with this feature they introduced the Bloom post-effect. Bloom is handled with the Intensity value in the emissive channel, as you increase the Intensity value, the bloom gets bigger and brighter.
​
For the rest of post effects we will have to do an easy workaround. We created a set of materials that were going to help us in the journey of embellishing our scenario.
Unity set of materials
Each fade was made with a specific purpose, but they all share the same texture.
For example, in the environment we decided to place some AO in a white building as the scene lighting killed all perspective or sense of geometry occlusion/collision.
Ambient Occlusion for South Tower in Decentraland
The AO is built with one quad placed on both sides of the corner.
Ambient Occlusion for South Tower in Decentraland
Another achievment in the scenario was to fake volumetric lighting, being rendered softly but giving the room the approach we were looking for. In this case we used the emissive bloom mixed with a fade to transparent material.
​
As you can see, the effect is barely noticeable but appreciated in the graphical context and composition. Bloom can be a double side effect, giving you the opportunity to turn your composition into something stunning or basically ruining it.
fake volumetric lighting in Decentraland
fake volumetric lighting in Decentraland
#04 Thinking outside the box

The only way to achieve higher results than expected is to understand the basics of what are you doing.

Matching a sequence of UI buttons to get supposed results leads only to unexpected crashes. Getting to know whats happening behind the frame will help you create workarounds once the technical problems and visual bugs appear, because you know they will.

There is a thing when working with high technical constrains that leads to reuse and think constantly about multi-purpose asset creation. Turn a rock into a brick, make the brick be a door, the door now will be a window, later a broken beam on the ceiling and so on.

Composing a whole scenario with a 512 pixels square texture is harsh, but you don't need high texture detail or mesh tessellation to get good results. In the end the composition and graphical coherence is what defines a good environment. There are a bunch of good looking games of all type of genre and art direction because they rely on visual coherence and strong technical understanding of constrains and how to surpass them adapting your project ideas to the platform.
​
Although the post is heavily oriented towards the production of an environment in the Decentraland platform, all this tips can be easily used when developing for mobile or other platforms that make us artists struggle with different constrains to reach our graphic goals.
​
Until next time, au revoir!

Picture
Kourtin
ENVIRONMENT ARTIST
I purr when you're not looking. I'm passionate about environments and all the techie stuff to make them look rad. Learning and improving everyday to be a better hooman.
Twitter
0 Comments



Leave a Reply.

    Categories

    All
    Blender
    CryptoAvatars
    Decentraland
    Decentraland En Español
    Maya
    Metaverse
    Mixamo
    Morphite
    Substance Painter
    The Sandbox
    Totally Reliable Delivery Service
    Unity 3D
    Updates
    Vrchat

    Archives

    March 2022
    July 2021
    June 2021
    May 2021
    April 2021
    March 2021
    February 2021
    January 2021
    December 2020
    October 2020
    August 2020
    July 2020
    June 2020
    May 2020
    April 2020
    March 2020
    February 2020
    December 2019
    October 2019
    September 2019
    August 2019
    June 2019
    May 2019
    February 2019
    January 2019
    December 2018
    November 2018
    October 2018
    September 2016

    Picture
Home
Projects
Assets

Picture
Crypto
Friendly
Picture

Subscribe to get some 💚 in your inbox once in a while.

Follow us and your visit will never be forgotten!
Picture
Picture
Picture

 © 2015-2022 POLYGONAL MIND LTD. ALL RIGHTS RESERVED.
  • Home
  • Metaverse Builder
  • CryptoAvatars
  • MegaCube
  • Blog
  • Decentraland
  • Projects
  • Assets