Independent work helps to achieve my career goals and overall contributes to my growth as a game developer. Projects considered independent are those which have significant time outside my employment but naturally are not completely removed from the wealth of growth from my time in industry. I hope to achieve my independent career goals and improve the industry.
Overall goals of independent work:
- To educate and spread better information than that which already exists.
- To create and contribute creative works to the games industry openly.
- To grow and share that growth with others so that they may learn.
Main Goals: Answer Project Structure and Technical Questions
This prototype was an attempt to figure out how to create, structure, test, document and technically construct a larger project. Snake was chosen as simple enough project whilst giving me the opportunity to answer a lot of these structural questions.
Test driven development in Unity can act a little strangely and during this I aimed to figure out the caveats and edge cases of testing the MonoBehaviour Update loop. There are many difficulties when it comes to approaching TDD and this loop, including methods to give control over the update cycle to the tester among a lot of NUnit caveats. These have been written up ready for the next project.
I also created a Tool for visualising the world loops the game creates for the designers. This refreshed and updated my knowledge on Unity Tool building and fed into my educational efforts by instructing a talk I gave at the Game Dev Group.
In general the project was a success in answering many questions I had, allowing me to research (and use techniques I researched) and give me confidence for the next project of a larger scale.
Main Goals: Education and Growth
My blog attempts to use researched methodologies paired with well known technologies to give solid advice for the reader who may be looking to take their game project to the next level. I write about clean code, test driven development and design discipline. The posts are written with one or two pieces of research (generally books) in mind to ensure that the advice given is done so in good faith and where opinions (or punditry) are given the reader knows the difference openly. The content is given as a jumping off point with sources given.
Test driven development is a theme among these blog posts generally because in the gaming material models (such as mocking, dependency injection, seams) are used without consideration for the technique (in a lot of tutorials). When approaching any model or technique the importance should be on why the model is used, it’s advantages/disadvantages and the technique itself. Given the material researched before I began writing appeared to lack in this area, I felt my blog had something to offer.
General themes of the blog are to be the pillars I stand by for software development, clean, confident, and robust code. Design and documentation also do appear but these lean more heavily on growth and research.