{"id":785,"date":"2011-01-12T01:15:36","date_gmt":"2011-01-12T01:15:36","guid":{"rendered":"http:\/\/blog.cjohnson.id.au\/?p=78"},"modified":"2011-01-12T01:15:36","modified_gmt":"2011-01-12T01:15:36","slug":"december-development-milestone","status":"publish","type":"post","link":"https:\/\/cjohnson.id.au\/game-dev\/december-development-milestone\/","title":{"rendered":"December Development Milestone"},"content":{"rendered":"
Along with this blog I was intending on having a separate development blog that would detail my progress on the games I am developing. However I decided to keep both blogs in the same place, right here. In the development blog I would post up milestones for my projects. The milestones would take roughly a month of development, each component of the milestone would have to be completed or be very close to being completed.<\/p>\n
Currently I’m not specifically working on any game in particular. Instead I’m working on bolstering up my code base in order to make development easier over the next year. My intention is to release a game that I started ages ago, Rotablock<\/a>, once the code base is up to a much higher standard. I’m hoping that after two milestones from now which will be mid March, I’ll be ready to work on Rotablock. From there on I plan to work on an expansion to my first game jam game, Everything Shall Come to an End<\/a>.<\/p>\n Started on December 10th<\/em> The first thing that I wanted to do was to move my code to a hosted online repository.<\/li>\n I’ve been using this code base for all of the Game Development Club Game Jams and it was becoming very messy so I wanted to clean it up.<\/li>\n In order to make drawing different shapes easier I wanted to create classes that would handle this for me and generate display lists automatically.<\/li>\n Common game settings such as resolution should be stored outside of the game binary. Since YAML is clean and easy to read, I wanted store these properties in YAML.<\/li>\n Create a GUI System that consists of buttons, drop down lists, radio button groups, check boxes, text fields and sliders. Items would need to skinnable.<\/li>\n The existing Sprite classes should extend upon the drawing classes for rectangles. There should be sprite classes for a standard Sprite, Multiframe\/state Sprite, Animated Sprite, Sprite with sliding texture coordinates and a tiled sprite.<\/li>\n Create a Stage Objects class to simplify common operations such as rotation, translation and generating bounding boxes.<\/li>\n Create Classes for Vectors of 2, 3 and 4 dimensions and Matrices of 2×2 and 3×3.<\/li>\n Setup a testing framework using CMake<\/li>\n<\/ul>\n As you can see, most of the milestones were completed. I’m happy with the progress I’ve made over the last month. The code base is much tidier than it was before but in a few errors it needs to be touched up. I’ve moved all of my code to a private repository on BitBucket<\/a> which I’m finding along with Mercurial<\/a> to be excellent replacements for subversion and my local repository. I unified all of the building scripts into one CMake file. I’m wanting to update the resource managers in the future to allow for reference counts on items so that resources can be shared between game states.<\/p>\n When porting Platform Chunk Clump<\/a> I noticed that loading detailed YAML files was very slow on Windows. In the future I’m wanting to switch out using yaml-cpp<\/a> to something much faster.<\/p>\n I’ve attached several screen shots to show my progress.<\/p>\nDecember Milestone<\/h2>\n
\nFinished on January 12th<\/em><\/p>\n\n
Migrate Project to online version control system<\/h4>\n
General Tidying up of the Code Base<\/h4>\n
Drawing Classes for Convex Polygons<\/h4>\n
Game Properties yaml file<\/h4>\n
GUI System<\/h4>\n
Improved Sprite Classes<\/h4>\n
Stage Objects classes<\/h4>\n
Math Vertex and Matrix Classes<\/h4>\n
Testing Framework<\/h4>\n
Milestone Progress<\/h2>\n
\n
Migrate Project to online version control system – Completed!<\/font><\/h4>\n<\/li>\n
General Tidying up of the Code Base – Mostly Completed!<\/font><\/h4>\n<\/li>\n
Drawing Classes for Convex Polygons – Completed!<\/font><\/h4>\n<\/li>\n
Game Properties yaml file – Completed!<\/font><\/h4>\n<\/li>\n
GUI System – Completed!<\/font><\/h4>\n<\/li>\n
Improved Sprite Classes – Completed!<\/font><\/h4>\n<\/li>\n
Stage Objects classes – Completed!<\/font><\/h4>\n<\/li>\n
Math Vertex and Matrix Classes – Completed!<\/font><\/h4>\n<\/li>\n
Testing Framework – Completed!<\/font><\/h4>\n<\/li>\n<\/ul>\n