I've finished porting over all the primitives needed for the Train Defense assets. I've spent a fair bit of time learning unity shader pipeline and trying to work out how to get my dynamically generated entities to appear in the Unity scene view. I'd like to use Unity to set up levels as level editting is one of its strengths. The method I finally settled on was to add a script that chooses which mesh to use from the library of dynamically generated meshes. There is an [ExecuteInEditor] attribute that you put on classes which means the Awake() and Start() functions for your scripts will run while entering editor mode.
I've also started working on the AI framework. Unity has much more mature components than the systems I was using for Train Defense #1, so I'm trying to clean up the code instead of just porting it over. Train Defense #1 uses a very simple physics system for movement and pushout. I'll be porting that also since its a lot cheaper and more controlled than using full physics.
Train Defense 2 >