An opportunity arose to test porting between a Maya scene with an animated character to Unity for an AR application. This provided a great starting point for getting to know the Unity software. We originally built everything for our animated character without knowing we’d later need to port it to an AR application, but as a result we gained great insight into what does and doesn’t work inside Unity. Typically I expect things to fail miserably when attempting to bridge between two software programs without any prior planning, but seeing that it was possible was a pleasant surprise.
I’ve been a Maya user for the last 15 years, and I haven’t touched any gaming platform software before. I’ve always been fascinated with video games, so when an opportunity to test Unity came along I jumped at the chance to check it out and hopefully demystify the process of getting from 3D assets to interactive. In case you aren’t familiar with Unity, it’s a cross-platform game engine developed by Unity Technologies, which is primarily used to develop both 3D and 2D video games and simulations for computers, consoles, and mobile devices. I did manage to dip my toe in the program enough to make the following determinations:
I hit the wall pretty quick with what I myself can do with with Unity. So the fact that Unity has such a large support base gives me confidence that there’s great potential for overcoming any unforeseen issues, which is one of the attributes I look for when selecting any piece of software. If I get the feeling I’m going to be struggling with unsolvable technical problems down the line, while dealing with an absentee developer response, then best forget it (or roll the dice and hope for the best).
Clearly there still is a lot of reconciliation between how we run our setups in Maya and what Unity expects to see on its end, but we found that the roadblocks weren’t as severe as anticipated, and there were at least a few workarounds that could be applied. For instance, blendshapes were only an issue because we couldn’t directly copy the animation for them, but they were still supported within Unity. Also, non-joint-rigged geometry (say, if you were using lattices bound to a joint) don’t port over. But this theoretically could be remedied by adjusting how you skin your meshes.
I’m excited for the future of Unity because it’s clear the developers are working hard to provide everybody with the tools, features, and educational resources they need, and this means it’s only going to get better. Maybe now I’ll FINALLY be able to make that video game I designed on graph paper when I was in the 2nd grade.
What’s your experience with Unity or another 3D and 2D video game software? I’d love to hear your input.