Wednesday, 23 October 2013

Week 1: Workflow and the Player

Whenever I start a project, I don’t just jump in randomly and do random stuff. I follow a certain workflow that just works right for me. Establishing a certain flow on how you work is mostly different on each individual but for me I follow three steps whenever I work on something:

Make it work
First thing I do is to make sure that the code I’m working on is working properly the way I want it too. Whatever I have to do, whether it is hard coded or not as long as it works the way I want too then I’m all good to go. It may appear messy at first but I fear not as long as I understand what’s going on.

Improvements and optimizations
Now that I know my code works the next thing I do is make improvements and optimizations. Make it human readable, keep it clean, comment out codes, use design patterns and make it as reusable as possible. I need to always keep the reusability of my codes in mind so that I will have a code base I could refer into for future works.

Constant testing and tweaking
Testing tweaking constantly will always be a part of my workflow. Trial and error is always present when I work on a project. Trying things out to see different results and learning from it is what I do and constant testing makes me feel at ease that everything is working properly.

These three steps is what I follow whenever I work on something but anyways enough with my ranting and let’s get on with the development updates. This is what I have at the moment:

It shows a character placeholder that I modelled and animated myself in Maya. It’s not that great yet and I’m on the process of learning more of Autodesk Maya but it’s a great placeholder. I named the character “Mini”. At the moment the player can control his movements and actions, he can move 8 ways and has two animations for idle and 1 animation for running and 1 for attacking.

Player movement
I’m a simple guy and I like to keep things simple and Unity is simply amazing. For my player movement I used a character controller to move the character around. A PlayerMovementHandler script handles all the movements of the player which moves the player on the Horizontal and Vertical input axis and faces forward on that movement. The player in itself only has the player scripts and the character controller as its component and I made the model which handles the animations and the camera as a child of the player.

The implemented camera at the moment is a simple one. It is locked in its position and it looks at the player when at runtime and follows its every movement. For now a LookAt camera fits my needs and I will of course update it on the coming days to give it more interactivity as a third person camera and any suggestions on how to implement a great third person camera is welcome.

Say Hello to Mini
I am a beginner when it comes to Modelling and Animating a character and not that confident yet on my skills on this side of things as my main focus is as a programmer but here’s Mini, a placeholder character I created for the purposes of my gameplay demo.

You really got to be amazed by how Unity3D made it easy for your animated models to be used directly from Maya. It needs to be noted that I am not using a .fbx model here, I’m directly using the .ma from Maya. It makes it easier for me if there are any changes to the character in Maya because by just saving any changes in Maya it is directly changed as well in Unity especially on the animation side of things.

That’s about it for now; I’m proceeding on the next phase of my development which is the weapons and the combo mechanic.

No comments:

Post a Comment