Sunday, December 4, 2011

Arkanoid 3D

My current personal side project is to create a simple 3D version of Arkanoid.  I will be using Direct3D 10 and C++.  Other than DirectX and a yet-to-be-determined audio library, I won't be using any third party libraries.  This project serves a few purposes, 1: to develop a game from start to finish, that is complete. (Eg, start-up screen, menu screen, loading screens, ....) and 2: To be used as a demo to show to different recruiters, to portray my ability level.

So far all of my personal projects have had a specific goal in mind, not one of them had the goal of being a complete game.  Most of the time the goal was to learn some new technology.  For instance I created a Pong game, with the goal to learn Allegro 5.  Although the game was fairly complete it wasn't very polished.  Later on I made another pong game: Paddledroid, with the intent of learning how to program for the Android OS.  Paddledroid again, was fairly complete, but it still lacked a bit of fine tuning, and features.   On another occasion I put my efforts towards developing a tower defence game that I titled RoadBlock.  The purpose of that was to learn a bit about graph traversal, and different algorithms like the A* path-search algorithm.  The list goes on...

So this time around my goal is to develop a complete game, that has all the features and refinement (as much as is feasible) of a game that is fit for distribution.   Bear in mind that when I say this I refer more to the gameplay quality, for when it comes to graphic design, and anything art related I have a relatively big handicap.

I am currently very happy with current status of the project. To handle the different states of the game, such as intro screen, menu, and gameplay states, I created a state manager.  The game currently has an introduction sequence, a main title/menu screen, and a game running state.  In the next day or two I will add a state for when the game ends.  The Main menu only consists of 2 options, start and exit, all that is left is to find an adequate font and a background image.  The game state is working and functional.  The only things that need tweaking are: the 3D models for the ball, paddle, and bricks, and the collision detection for ball-box collisions.  After that the game will be fully functioning and it will be time to add in some eye candy.  Things like fancier animations when bricks get hit, sound effects and background music, and other aesthetics.

So far I am happy with the progress.  Visit Arkanoid 3D - Adam Kromm for more info.

Friday, December 2, 2011

Milestone 1 nearing completion

The project that I am working on has been split up into six milestones.  Milestone one is nearing completion, major coding and small scale testing has been done.  Next up is to try it out on the intended servers in full scale.  This also comes after switching from using Java with SVNKit to using C# with SharpSVN.

The purpose for milestone one is: Determine code deltas for each branch.  The purpose of this milestone is to determine the code differences between different branches.  For example how much code has changed between team branch 1 and the integration branch and vice versa.  By discovering the differences, we can pre-emptively discover potential merge conflicts.

The purpose of the following milestones is to then take this data and discover where in the code merge conflicts are most likely to arise.  We can then notify developers a lot earlier in development where problems could arise, and thus speed up production time.

More to come...