ICT207 Games Design and Programming



This unit was the first to involve a large project with a project team of 3-4 people the task was to model a real life area at the university building from a previous students work and to create one or more games within that environment. We had to model one area of the university called ECL and one lecture theatre in detail. The program was written in Visual C++ 6.0 using OpenGL and SDL for some sounds in the final implementation.

Personal Requirements

This was a four person group based unit
My task within the group was to model the lecture theatre scale and place it correctly to be integrated with the other group members contributions

How it went

The day the first stage of the project was due(full modeling done with no game at this stage) two of our four person group un-enrolled from the unit and had apparently neglected to create anything of which I was informed of about 5 hours before we had to hand in the inital project, I had finished my model of the lecture theatre, the remaining group member had completed one bridge about 10% of the overall task so in the end we submitted the lecture theatre and the bridge that didnít quite extend to the lecture theatre and a lot of blue background where the rest of the building was mean't to go.

this image shows my lecture theatre from the outside This image shows a closer view of the entire structure
just inside the entrance to the lecture theatre as you can see I have modeled paintings, doors, lecture tables, projector screens, projector room, lecture podium, stairwells among other things the lecture theatre is precisely sized all angles and objects are from the real building and floor plans most textures are pictures taken on my digital camera and edited for the objects another view of the lecture theatre showing the projector screens in greater detail and another painting
image showing the lecture podium/desk which is a full desk not a box along with side ridging different wood types image shows looking back at the projector room over the lecture tables painting
shows the roof which is precisily matched to the angles from the actual building

Once the fiasco of the first assignment was complete all was looking up I had been steadily working the entire time creating a game multiple small game omnibus which in addition to my colleagues contributions should have been very impressive I ended up finishing three mini games by myself A dodging game with at each stage the player had to avoid more enemies which had thier speed and sight range increased.

A chasing game where the player had to chase down a ai player which used basic collision detection and avoidance AI to avoid the player, each level increased the speed and range of collision detection A avoiding game where AI player chased the player using basic collision detection to move towards the player if within range, each level increased the sensitivity or eyesight of the AI and increased speed and number of AI players

A flocking experiment in which the leader moved in random directions for a time and other AI's flocked around the leader using basic collision detection to avoid each other

Lastly a particle wave fountain which I implemented as a power up system to give the player a range of bonus's including extra speed, invulnerability, temporary shield, extra lives, bonus time limit and extra score, all depending on which game they were playing at the time.

Unfortunatly my remaining team member took this progress as a signal to stop working himself and in the end my games were the only ones submitted.

This image shows the first game involving avoiding being hit by AI who get faster based on what level you are on the aim of this game is to get to the other side of the quad where lo and behold u find yourself back at the beginning with faster AI and a higher score to content with any AI to run through the player removes 1 life This image shows the particle fountain power up system it sprinkles particles onto the ground which after time burn out it was actually quite lovely to stand inside of watching the almost rain like effect go past
This image shows the goal area of the dodging avoiding and flocking games if a player walks past the roofs supporting poles onto the paved area the current game resets at a higher level this image shows the flocking experiment which I read about in a Michael Crichton novel just before starting the game which got me interesting in trying to program the same behavior
The leader is the central figure of the transformer while the ogres are flocking around him in patterns which are spontaneous and highly interesting the rule base -> Advanced indicates that this variation of the game is using collision detection for every model

Problems Encountered

  • Lack of Commitment from Team members
  • Lack of Communication from Team members
  • Inexperience programming in OpenGL
  • Complexity of creating objects in code rather than modeling software
  • Problems Resolved

  • Lack of Communication and Commitment from team members resolved by informing the unit cordinater of problems as they intensified during the semester and all team members ended up failing the unit except me.
  • Inexperience in programming in OpenGl was resolved by completing many tutorials studying and using examples found online, and discussions with other teams on different methods of how to overcome problems.
  • Complexity of creating objects in code was not overcome as it was a requirement for the unit follow on units do not have this requirement so I was able to use modelling software to fix this issue in later units.
  • Conclusion

    Writing animations, models and games in raw OpenGL isn't very fun. This project gave me a good understanding of how animations and opengl functions and how objects and huds are created at a bottom level, it also gave me a fundemental understanding of why we abstract things and try to develop at higher level rather than low to avoid recoding the wheel at every stage

    The main thing i learned from this experience is that communication and consistant levels of commitment are essential to sucsessful team projects.