Dissertation Progress

Over the Christmas break I’ve been continuing to work on the lit review for my dissertation. I’m very close to finishing the entire first draft, so I should be on track to finish it by the end of this weekend.

I’ve also been working on my 3D animation assignment, and I’ve finished creating the rigged skeleton for my creature in 3DS Max. The next step will be to create the animations.

Dissertation Progress

Last week I continued work on the first draft of my literature review. The section I worked on involved AI steering behaviours. I had initially decided to break my dissertation up into the three sections: dynamic difficulty, AI and player experience. However, after further thought, I’ve decided to drop the section on PX, so as to devote more effort to AI and pathfinding in particular, as PX had felt a bit tacked-on and devoting more research to pathfinding would better suit the dissertation since my accompanying game demo emphasizes it heavily. So now my three core topics are: dynamic difficulty, steering behaviours and pathfinding. I’m continuing work on it this week, and I’m aiming to have the first draft of my lit review done by the end of Christmas break.

Weekly Progress

Last week I finished off the first section of my literature review for my dissertation. This first section describes the various approaches to dynamic difficulty balancing in games. I also made a start on the second section which focuses on AI behaviours.

I also managed to create a¬†basic 3D model for a creature I’m making for my 3D modelling class, using 3DS Max. 3D modelling is an area I’m not very experienced in, but after I got used to using the toolkit I found it quite enjoyable. Next I need to add more detail to the model and texture it.

Assembly Programming

Yesterday I successfully managed to teach myself assembly programming, using Masm/Winasm. It’s something I delved into last year, but found quite confusing. However, yesterday I really felt I had “levelled up” in my programming ability, and everything just clicked in terms of using the CPU registers properly.

I’m currently writing a little Hangman game for practice, and everything is going well so far. It uses console output for now, and later on I’m going to progress to using 2d graphics.

The whole experience is teaching me a lot about memory and computer architecture, so I think it will be beneficial to all aspects of my coding.

Game Progress

Last week I managed to implement my own algorithm that generates a navigate graph dynamically. This made creating a navigation graph much quicker, though the added complexity of the graph layout¬†revealed that the search algorithms used by the AI were insufficient for smooth, natural movement. In the basic, hand-made graph, this wasn’t evident, as the simplicity of the graph served to better control the AI’s route. Therefore, until I can write my own, improved search algorithm, I’m going to use a simple hand-made navigation graph, so my time can be reallocated to more important areas.

Here’s a short video demonstrating the navigation graph and search algorithms in action. This demo was written from scratch in C++ using the DirectX9 libraries: