Saturday, April 18, 2015

So much to do, so much to see

I have gotten an occlusion culling system implemented into Unity Free! It uses a combination of realtime and baked modes for optimal results. Check out the video for more details. Download the source + an example scene via the link below. It is worth noting that Unity 5, which came out this previous week, includes occlusion culling, LOD and all of the other previously restricted-to-pro engine features. I've additionally done some low level research and done an occlusion culling presentation at work! (Slideshow here)

I've also done some further testing with markerless motion capture tech. iPi Motion Record / Capture yields some satisfying results for simple animations. More complex animations require an additional Kinect to be placed perpendicular to the current camera. Any frames where an arm or leg is occluded (which is rather often) requires manual placement of the limb for each frame. The best option would seem to be using 6 PS Eyes.

The behavior tree has gotten some work as well. I've put in the back end to start setting up the logic and am working toward getting a character moving around with it. I've been dividing time between this and playing with tasty new Unity 5 features, though I've also had my eye on Unreal Engine's freeness too! I've gotten a Google Cardboard VR headest I've been playing with. I'm intrigued by the possibility of using HRTFs for accurate 3D audio response with VR. I've gotten a test scene working with some custom assets I'd made (learning my way around blender a bit too!) to further work with the VR tech.

In the immortal words of Smashmouth's Steven Scott Harwell, "So much to do, so much to see." -MB


Progress
  • Polished occlusion culling script
  • Added baked version that creates cells with mesh information
    • Can be used with realtime scanning or on its own
  • Generates bounding volume of mesh renderers
    • Can define unit size for grid in each dimension. This is the maximum size a given grid cell will be before an additional cell is added in that dimension.
  • Buttons to disable LOD, culling, baked, realtime, or both
  • Created example scene and uploaded with source, avail above.
  • Behavior Tree logic progress
  • Structure of tree logic using event based system
  • Starting creating action logic
  • Primitive data passing through tree
  • Further motion capture research
  • Got a solid walking animation, took a bit of work
  • Tried for some other animations with poorer results
  • Created a test scene for Google Cardboard VR


Goals

  • (Behavior Tree) Make AI character execute GotoGameobject behavior
    • Add arguments to BT nodes
    • Add inspector panel to VBT
    • Write action
    • Make VBT connect to and implement BT logic
      • Write composite and decorator logic into VBT
  • Dig in to Unreal Engine with startup tutorials, using C++