There will be hundreds of terrain objects in our game Herogrinder at launch, and this number will only increase with continuous updates and new arena styles.
To make life easier for our content artists, we have decided to build a standalone tool for modeling levels. But this isn't the only function of the editor tool, since we are using it to implement our assets into the finished game itself. So one of the most important factors is the ease of continuous editing, both from a design and a 3D modeling perspective.
The task needs to be shared and coordinated by two teams - one for creating the environments in Unity and one for meshing and texturing. We immediately realized how difficult it is for designers to test their small modifications right away, so we decided to use the tool to compile and render the environment and make it a testing environment for our designers.
A game object (meaning every asset that can be placed onto a level design) has many layers of properties. Different damage stages need to switch the meshes and textures, different variations of the same object have to be categorized, and of course there are scripts that manage, modify, and serialize the base properties of an object (rotation, hitpoints, hardness, etc) since every object and wall will be destroyable in Herogrinder! So for objects to appear on the map as they will in the game, our unity developers always had to implement them when the designs were ready, one by one.
We have now fully automatized this process with a scriptable object and just a few editor scripts that follow the changes in the files and generate the prefabs. Thus, designers can check their modifications in Unity with a single click, and immediately finalize assets involving our entire team in the developments.
Do you have any questions for us? Ask us anything on the comment section below!