F20GP Computer Games Programming

Ben KenwrightDr Mohammad Hamdan

Course co-ordinator(s): Dr Stefano Padilla (Edinburgh), Ben Kenwright (Edinburgh), Dr Mohammad Hamdan (Dubai).

Aims:

To develop programming skills and techniques specific to the area of 2D and 3D computer game.

Detailed Information

Course Description: Link to Official Course Descriptor.

Pre-requisites: C++ programming skills.

Location: Dubai, Edinburgh, Malaysia.

Semester: 2.

Syllabus:

  • Computer Games Design Concepts (Genres, Narrative and Fun).
  • Elements of Game Design (Formal, Dramatic and System Dynamics).
  • Character and World Design.
  • Design Programming Patterns (Input, loops, structures, objects and optimisation).
  • Games Creation Concepts (Conceptualisation, Prototyping, Playtesting).
  • Game-state, simulator, renderer, (hierarchical) controllers.
  • Tools, environments and coding practices– e.g. graphics, C++ and engines.
  • 2D and 3D game programming techniques.
  • Physically-based modelling, particle systems, flocking.
  • Obstacle avoidance and path planning.
  • Group movement.
  • Learning and adaptation in games.
  • Action and behaviour selection.
  • Procedural Generation.
  • Course summary and review.

Learning Outcomes: Subject Mastery

Understanding, Knowledge and Cognitive Skills Scholarship, Enquiry and Research (Research-Informed Learning)

  • Understanding of game theory and computer game history, genres and impact
  • Understanding of game design concepts, elements and characters.
  • Understanding of available tools and their application
  • Knowledge of algorithms for path planning and navigation
  • Knowledge of physically-based modelling in games and selection of techniques
  • Knowledge of AI techniques in games and selection of techniques
  • Ability to understand, design and implement a small-scale game using 2D and 3D tools
  • Practical skills in graphics and AI programming in the computer games context

Learning Outcomes: Personal Abilities

Industrial, Commercial & Professional Practice Autonomy, Accountability & Working with Others Communication, Numeracy & ICT

  • Representation of, planning for, and solution of problems.
  • Ability to plan, design, prototype and communicate a game.
  • Ability to think and plan in three dimensions.
  • Team working skills.

Assessment Methods: Due to covid, assessment methods for Academic Year 2021/22 may vary from those noted on the official course descriptor. Please see:
- Maths (F1) Course Weightings 2021/22
- Computer Science (F2) Course Weightings 2021/22
- AMS (F7) Course Weightings 2021/22

SCQF Level: 10.

Credits: 15.