Sunday, August 14, 2016

Sunday, 14 August 2016

Hello yes it is I, MrMisterSwift.

I've  been really busy these last few weeks. After many trials and tribulations I finally have a basic grasp of the indescribable eldritch horror that is Blender and its UI. I've found after much experimentation that the more I constrain myself in 3D modelling, the more productive I am and the less I get burnt out. That's my reasoning for making counterfeit LEGO and Space Engineers blocks:

 
 

Using these modular blocks means I don't worry about making sure every angle on my spaceship is correct to the fraction of a degree, and that my tolerances are half the width of a human hair. It also helps greatly with being consitent, not just in style but also in the scale of things. Without any further ado, creations:


They're all quite inconsitent as I struggled to figure out materials and whether to use Blender Internal or Cycles, as well as standardising on lighting, camera angles and backdrops.

Of course, it's no fun just making pretty static renders. So from one abomination to another, we end up struggling in the PvUI (Player vs User Interface) game that is Unity.





Getting meshes from Blender to Unity was painless. Getting the colours was... another story. I spent hours tweaking Cycles' Material Nodes in Blender, only for it all to be for nought since I have to redo everything in Unity. Alas. After that I had to map the camera to the player's ship, assign controls to let you move the player ship, add some crude and rudimentary cursors and labels, and last but not least, struggle to get a thruster exhaust visual.

For most Unity veterans (and probably intermediates) these are all 5 minute tasks but I'm super rusty with Unity so. The hardest part was the exhausts. I spent the better part of a week trying to get them right in Blender. Eventually I managed to get some Node Material spaghetti that works right half the time if I'm lucky. After getting things into Unity I had to start all over again. This time I just opted for a particle system like everyone else has been using for the last 10 years and used some cutesy star polygons as sprites. Doesn't look too bad.

So, in summary:
  • Importing meshes from Blender to Unity
  • UV wrapping and Baking in Blender for import into Unity
  • Low poly icospheres for celestials with some random vertex deformation
  • Starfield particle system 
  • Collision boundaries
  • Some small placeholder models in Blender
  • Cursor below player ship
  • Velocity and Facing vector cursors for player ship
  • Cursor with label below stations
  • Rudimentary lighting 
  • Ortho camera with mouse wheel zoom and follow player
  • Engine exhaust particle system
Still to do:
  • Add Moons for planet
  • Proper backdrop 
  • Foreground particle system for sense of motion
  • Asteroid entities for mining
  • Celestials rotate
  • Thruster exhausts reflect ship's momentum and applied forces
  • Wrangle the overall colour scheme into submission
Not too shabby for one weekend's tinkering around and getting back up to speed with Unity. And to think it all* started from this on Friday:

* Excluding the Blender work