Creating the Flybot!

Hey there! 

I do realize it's been a while since I've written anything, but I've been very busy with Uni work these past weeks, and just haven't found the time nor the energy to work on any side projects what so ever. That is, until tonight.

I'm currently writing this blog at 1:35 am, because I was just too worried that I might forget all this new information that I've discovered today if I slept, so I'm going to put it all here both as a reminder to myself and both as an update to what I am currently working on. So let's get right to it.

The Scrapbot

About 2 nights ago (yes nights, I can't work during days apparently) I started working on a robot model. I consider myself to be adequate with Autodesk Maya, but if there is anything I still struggle with, it is skin. The way it stretches along with weight painting is just too difficult for me, and something I will have to tackle another day. Therefore, robots and mechanical parts are way easier because you can use a method where you simply target all the vertices that you want, and tie them to a bone. No stretching involved. Because of all this, combined with a sudden inspiration surge to do some personal projects, I started to work on the robot I was about to call "The Scrapbot". I called it that because it feels like I can get away with not being a fully trained animator/3D artist by making scrappy stuff.

Either way, I immediately got to work, and I did feel like I made heaps of progress on it. In fact, after the second night had past I was completely done with both model, skeleton and animation. I was also fully aware I had completely skipped some of the key guidelines for modeling. One of them for example, is to combine every part of your robot so that they're not separate pieces. Even though I knew all this, I continued working (for some reason) possibly to experiment with what would happen.

I went from this, in Maya: 

RunBot.gif

To this in Unreal Engine 4:

oops.gif

Needless to say, something went horribly bad in the export. I already knew the skin stuff based on the amount of errors I got when exporting, however I was still very confused about the slow-mo running (more on this later). This had me drained of work energy so I went to sleep. Next day (today) I was determined to keep working on this model, however once I had the free time it just didn't click for me. I didn't want to start over with the rough animation and the rig. I decided that I had to make something even simpler, for the sake of time. Enter "The Flybot".

The Flybot

The flybot was my attempt at making something smaller that barely needed animating or skeleton. The first idea for the flybot was a little head on two legs that was running around. Then I went on to brainstorm a head with a propeller and a grappling arm. It ended up just being a head with a jaw and a propeller on top for simplicity's sake. I did everything all over again, even the things I missed last time like texturing and combining. I was ready to export. The first good sign was the error box, which turned out empty. I had my hopes up. I then hopped into Unreal Engine to start working, and behold there it was in all it's glory. No error messages, fully intact and textured, the flybot.

Now the fun part was about to start. I placed the animation inside the scene to have a look at my masterpiece and.... disappointment. The animation worked, sure, but it ran at 1/30th of it's original speed. Now, some of you might already have realized what is wrong. The key is in the number 30. Apparently (after some online research) Unreal needs Maya to have a playback speed of 30 fps instead of "Default" (which apparently is each frame). This also lead to me having to move keyframes spread out over 600 frames, down to about 90. It was a bit tricky, but hey it worked!

Flybot2.gif

Some other things I learned in the process of Importing from Maya to UE4 was that UE4 requires your Maya scale settings to be set to centimeters instead of meters, unlike Unity which requires the opposite. Now my model was arguably a bit too big still, which I am currently working on solving.

Finally, I learned a helpful little trick that I might be able to use in the future. When making animations, you can make the run, jump and death animation in the same file, and when you import it into UE4 they will give you the option to import different frames separately. Important to note though is that only the first animation has to be imported with the mesh. The other animations are fine if you import the bones only.

That's all for now! The reason I didn't say what the game is yet is because I am still figuring it out and testing. I need it to be really simple because I just want it out there really. This whole modeling project I've been doing is partially just to prove to myself that I can do it, and so far it has worked, but the game is the final piece.

Anyways, thanks for reading! Until next time.