Skip to main content
Undergraduate study

Course overview

The combination of cutting-edge research with current industry practice prepares you for a career as a games AI specialist or to undertake advanced research in the area.

The fourth year extends the three-year BSc (Hons) Computer Games Programming to study and apply advanced techniques following two topics illustrative of the most current industrial trends in the area of games development.

Advanced AI Applications for Interactive Entertainment will cover the application of AI planning to interactive entertainment applications, such as interactive storytelling; aspects of symbolic AI relevant to games, including modelling for constraint programming, and other logical formalisms and advanced techniques in natural language processing. Intelligent Multimodal Interaction will cover advanced topics in human-computer interaction relating to adaptive, intelligent and multimodal interface design and implementation, and their current and potential future use as part of games technology.

Each module applies a research informed teaching approach to present advanced AI techniques applied to current computer games. It is particularly suitable if you want to study AI to a more advanced level to develop particular expertise within game development.

Professional accreditation

bcs Accredited Degree This degree has been accredited by BCS (British Computer Society), The Chartered Institute for IT.

Accreditation is a mark of assurance that the degree meets the standards set by BCS. An accredited degree entitles you to professional membership of BCS, which is an important part of the criteria for achieving Chartered IT Professional (CITP) status through the Institute. Some employers recruit preferentially from accredited degrees, and an accredited degree is likely to be recognised by other countries that are signatories to international accords.


Course details

Course structure

Year 1 core modules

C++ Programming

You are introduced to C++ programming, focusing on the learning, development and application of algorithms and data structures within computer games, and the basics of class-based object-oriented programming using C++ language.
You demonstrate conceptual understanding and practical competence of programming by designing and implementing solutions to specific programming problems.

You study standard C++ libraries, and where appropriate one or more 3rd party libraries. You are required to demonstrate an understanding of professional practices and appropriate codes of conduct.

Game Middleware

You look at programming techniques and concepts needed to create a modern computer game using industry-standard middleware products.

You are introduced to general game programming skills, and a range of game middleware components and their utilisation.

You study the game production pipeline and the ethical and legal considerations of licencing and copyright when using industry-standard middleware.

On completion you are equipped to create a 3D interactive game environment.

Game Studies

You study and analyse computer games and computer games development, and the contemporary and historical issues affecting the games industry and wider society. Industry speakers share their experiences of games and professional development.

Games Development with C++

You study advanced aspects of C++ language and its continual evolvement, focusing on game development.

You develop your knowledge and practical application of object-oriented programming, including exception handling, polymorphism, design patterns and templates, and the standard library for containers and algorithms.

You are required to demonstrate an understanding of professional practices and appropriate codes of conduct.

Maths for Games

Knowledge of advanced mathematical concepts for building a games engine is essential for a games programmer. You learn basic and advanced mathematics in an applied context.

Systems Design and Databases

Successful, robust and user-friendly systems or applications begin with a requirements analysis and detailed design. You are introduced to the concepts and techniques of systems analysis and design, enabling you to break down and simplify complex systems and represent them visually using industry-standard approaches such as Unified Modelling Language (UML). In industry, the resulting models are used to communicate designs to developers and stakeholders prior to implementation.

You learn to design and implement fully normalised relational databases as part of an information system. Using data modelling techniques you define how the system stores data and interacts with it. You implement your design using Structured Query Language (SQL): Data Definition Language for creating tables, and Data Manipulation Language for accessing the data.

You develop professional practice and transferrable skills essential for industry, including project management."


Year 2 core modules

3D Graphics Programming

Essential algorithms and models used within interactive 3D computer graphics and animation and introduced in this module. It is useful for those interested in programming interactive visualisation applications such as computer games.

You will be able to design and implement applications capable of the interactive visualisation and animation of a virtual 3D environment using C++, a graphics library such as OpenGL or Direct3D, and a shading language such as GLSL or HLSL.

Algorithms for Games

Complex coding and scripting for a computer game requires an understanding of problem solving, data structures and algorithms needed to define the contents and behaviour of a virtual 3D world. You are introduced to these topics using an informal yet rigorous approach. The algorithms range from simple to advanced, widely used in AAA games. Recreational problems, like games and puzzles, are used to convey the important algorithmic concepts.

Game Jam

You are provided with an intensive game-studio experience relying on agile development methodologies in a controlled environment.

Game Jam concentrates on the skills and knowledge required in the development of a computer game, including important key transferable skills such as the ability to work in a team, the ability to follow a game design specification, and the ability to adapt to change.

Teams are drawn at the start of the module. You are then provided with a game design document written by a member of staff who act as the client throughout. Lecturers support the teams through practical sessions and lectures.
Lectures are delivered on topics to prepare you for the team working agile development process as well as covering standard gameplay programming techniques.

Games Engine Construction

You will gain an in-depth view into the design of core computer game architectures and implementation using an Application Programming Interface and object oriented programming. You will develop your own computer game engine, which involves implementing and integrating computer game engine core systems eg graphics, simulation. Subsequently you will extend your existing C++ software engineering skills by integrating design patterns commonly used in game engine development.

You will be required to implement efficient C++ algorithms, both in terms of performance and memory use, and use profiling tools to inform your design choices and demonstrate knowledge of the underlying architecture.

Network and Multiplayer Gaming

This module will give an overview of networking protocols, and their quality of services, and related APIs. It will also introduce you to concurrent and distributed programming paradigms. Issues faced when developing a concurrent or distributed application will be tackled, including security and synchronisation issues.

Suitable abstractions will be studied (design patterns, distributed objects models and architectures), and case studies will be used to illustrate the theoretic content of this module with appropriate technologies, eg distributed architectures for online games, cloud, AJAX.


Year 3 core modules

AI for Games Engines

You consider artificial intelligence (AI) and its application in computer games and explore advanced AI techniques.

Beta Arcade

You gain experience of working as a member of a games development team that is as close to industrial practice as possible. Beta Arcade simulates the working criteria and mix of development skills that are required to produce a polished prototype of a computer game concept which would be suitable for publication.

Game Programming Project

You undertake a large scale piece of work, supervised by a member of academic staff. You also produce a substantial computing artefact and compile a report and a viva with a presentation, demonstration and discussion of the artefact. You develop work-discipline and a professional outlook. You are responsible for the planning and execution and consider legal, social, ethical and professional issues. You explore a chosen subject and analyse, synthesise, and creatively apply what you have studied on the programme, demonstrating critical and evaluative skills and professional awareness.

Mobile and Gaming Devices

You expand your knowledge and skills of games programming, computer architecture and software development to include native development on mobile or gaming hardware. You build upon existing programming skills in C/C++ and knowledge of computing architecture and expand your games software programming skills, focusing on developing, analysing and optimising code for limited gaming devices.

Physics Simulation

You explore the physical laws and numerical methods necessary for the development and enhancement of physical realism in 3D games, and are introduced to new concepts such as rigid bodies, moment of inertia and soft body dynamics, with an emphasis on physics realism versus computation speed, stability and accuracy.


Year 4 core modules

Advanced Game Prototyping

You build upon fundamental concepts involved in the creation of a game prototype as part of a small team, and examine the contrast between the creation of a strong core mechanic, which is immediately tactile, and how it can be expanded upon through player learning, subtractive design and variety to provide longevity – ultimately providing an accessible, engaging and substantial gameplay experience informed by playtesting.
You enhance your skills both inside and outside of a contemporary game engine. Inspired by the structure of relevant titles, you are encouraged to rigorously plan tasks from a macro and micro perspective prior to development.

AI for Games

Integrating AI into game engines can be difficult due to the fact that game engines typically do not use symbolic or declarative representations of characters, settings, or actions.

You cover the wide variety of software technologies applied to the integration of AI techniques within the context of industry standard game engines, as well as forthcoming technologies developed within AI-based research (such as interactive storytelling systems). You explore the design and implementation of AI-based systems applied to the wide variety of game engines technologies and applications, including multi-platforms specifics desktop-based and immersive virtual reality systems, as well as web-based and mobile gaming platforms.

Games Programming MComp Project

You undertake a major, in-depth, individual study in an aspect of your course. You research and investigate a chosen area of games programming before producing a significant deliverable (the product). Example areas include AI, graphics, physics, game software engineering, gameplay mechanics, networking, multiplayer and concurrent programming.
The project management process gives you supported opportunities for goal setting, reflection and critical evaluation of achievement.

Real-time Graphics

You extend your understanding and abilities in graphics programming to include efficient high-speed rendering of high-quality imagery. Your emphasis is on the rendering of 3d virtual environments, particularly useful if you are interested in creating interactive, high-quality graphical applications such as computer games.
After completing the module you are able to research and select appropriate algorithms and techniques to solve a problem and then construct an implementation using C++, a graphics library such as OpenGL or Direct3D, and a shading language such as GLSL or HLSL.

Studio Development

You focus on the computer games industry and how to plan a game development studio. You investigate how to develop a seed game idea into an attractive business proposal in an appropriate and viable games publishing market, then deliver a product pitch for the new concept that fits within your planned business organisation.


Modules offered may vary.


How you learn

It is essential for you to gain experience in being a programmer. Your modules use a combination of lecture sessions to study the theory, computer lab sessions to put theory into practice with tutor guidance, and controlled studio environments to practice your professional and teamwork skills.

How you are assessed

Our course focuses on the application of the knowledge and skills you acquire. Most of your modules require you to design and develop software to demonstrate your new abilities. Your assignments are set by your tutor and you work on them throughout the academic year whilst receiving valuable feedback to guide your work.

Our Disability Services team provide an inclusive and empowering learning environment and have specialist staff to support disabled students access any additional tailored resources needed. If you have a specific learning difficulty, mental health condition, autism, sensory impairment, chronic health condition or any other disability please contact a Disability Services as early as possible.
Find out more about our disability services

Find out more about financial support
Find out more about our course related costs


Entry requirements

Entry requirements

Typical offer
112-128 points

Find out how many points your qualifications are worth using the UCAS tariff calculator. If your qualifications are not listed, contact our admissions team as we may accept alternatives.

We may also be able to help you meet the entry requirements through our Summer University modules.

Maths and English
Acceptable qualifications in maths and English include:
• GCSE grade 4 (or higher)
• Level 2 Key Skills (Communication and Application of Number)
• Level 2 Functional Skills.

We also accept alternative equivalent or higher level qualifications.

For additional information please see our entry requirements

International applicants can find out what qualifications they need by visiting Your Country

You can gain considerable knowledge from work, volunteering and life. Under recognition of prior learning (RPL) you may be awarded credit for this which can be credited towards the course you want to study.
Find out more about RPL



Career opportunities

You are ideally suited for employment in the games development industry and similar creative industries. There are a variety of programming roles within these industries such as gameplay programmer, tools programmer, middleware developer and mobile application programmer. The course gives you a strong foundation in computer programming, also allowing for a career in mainstream software development.

Professional placement
Being able to include work experience on your CV makes you a much more attractive applicant. You have a much higher chance of improving your degree classification and the boost in confidence will give you the edge in job interviews.

98% of our students who complete a work placement achieve a high level degree classification and are offered a graduate job within six months of graduating.

We have established excellent long-term relationships with businesses giving you the opportunity to apply for summer, year-long and graduate placements with key organisations such as: Microsoft, Rare, Team 17, ZeroLight, R8 Games, Hammerhead VR, Dojo Arcade, Schlumberger, Sumo Digital and Coastsink.

Student selection is carried out by the employers through competitive interviews and often skills tests. Placements are not compulsory but are assessed and contribute to your final degree award.

Our placements team gives you help and support throughout the placement process, including guidance on applications and interviews, to help you get a placement that suits you.


Information for international applicants


International applicants - find out what qualifications you need by selecting your country below.

Select your country:


Useful information

Visit our international pages for useful information for non-UK students and applicants.

Talk to us

Talk to an international student enrolment adviser



Entry to 2020/21 academic year

Fee for UK/EU applicants
£9,250 a year

The final year is discounted from £9,250 to £6,500

More details about our fees

Fee for international applicants
£13,000 a year

The final year is £12,045

More details about our fees for international applicants

What is included in your tuition fee?

  • Length: 4 or 5 years dependent on whether you undertake the placement year.
  • UCAS code: IGK6 MComp/CGP
  • Semester dates
  • Typical offer: 112-128 points

Apply online (full-time) through UCAS



2020 entry

Fee for UK/EU applicants
£4,500 (120 credits)

More details about our fees

  • Length: Up to 6 years
  • Attendance: Daytime
  • Enrolment date: September
  • Semester dates

Apply online (part-time)



ExpoTalent is a unique opportunity to meet businesses to secure placements, internships and future employment opportunities.


Choose Teesside


Are you eligible for an iPad, keyboard and £300 credit for learning resources?



Live in affordable accommodation right on-campus



Study in our town-centre campus with over £270m of recent investment


Industry ready

Benefit from work placements, live projects, accredited courses


Get in touch


Open days