I Messed Up Leweria’s Terrain – Unity3D’s Terrain Works Kinda Like PreFabs

I’ve been tinkering with the Terrain within the Leweria level of my Super Space Trooper video game.  Towards the end of the level I began working on some fire effects for the oil refinery boss.  As I was making progress, I began to notice that the section of the level just didn’t fit in with the forests of the rest of the level, so I saved the level as a new one (Buuru) and began working my way backwards on that level.  As I made progress on that, I loaded up the Leweria level only to find that all the work I had done in Buuru had been copied over to Leweria.  So in essence I completely lost the environment of the Leweria level, meaning the level would need to be made all over again.

Unity's Terrain is Like a PreFab

Terrains that are created in Unity become assets available within the Projects window. This means they’re similar to PreFabs where any changes made to them will be ported across the project.

It took me a good three or four hours to figure out what had happened.  It seems that the Terrain options within Unity3D work somewhat like a Prefab.  So if I have a terrain that I use in one level and then save that level as a different level, whatever I do to the Terrain in either of them will be updated in the other.  Totally not what I had expected.  I have since remade the Lewerian forests but the new version just doesn’t feel as nice and dynamic as the original.  That said, it did provide me with the opportunity to streamline a lot of the level by using reduced poly trees and bushes, fixes to textures and materials of greenery and ground.

So in the end I continue to learn, which is really what it’s all about.

Posted in Super Space Trooper, Unity 3D, Video Game Development

Leave a Reply

Your email address will not be published. Required fields are marked *



You may use these HTML tags and attributes: <a href="" title=""> <abbr title=""> <acronym title=""> <b> <blockquote cite=""> <cite> <code> <del datetime=""> <em> <i> <q cite=""> <s> <strike> <strong>