About the course
Games development is a large and thriving industry in the UK. We want to help you gain the skills to become a great programmer so you can get a rewarding job in this exciting sector. You could be a games developer, or you could choose to take your skills and work in any programming job.
Your course will cover general computing and software engineering knowledge and techniques that apply across the computing industry. At the same time you’ll have the chance to explore the latest issues in computer games. We’ll look at the technical aspects of games development, and support you to develop a strong knowledge base. From computer games programming to games systems and development techniques, we’ll cover some vital topics.
We’ll also cover:
- Game engine architecture
- Computational mathematics
- Artificial intelligence
- Physics simulations
You‘ll study programming languages including Java and you ‘ll be supported in progressing to C++ later (as it‘s the industry standard). You‘ll also explore game specific technologies, shaders, computer vision, virtual reality (VR). As the ability to work in a team is a vital skill in the games industry, we support you in developing your team working skills through group project work.
After your second year you can choose to take a year-long placement in the industry. Thanks to our links with a range of leading employers in the UK and internationally, you could end up working for a big name in your chosen career. Previous students have undertaken placements with Sega Europe Ltd, Rebellion Studios, Rockstar Leeds and Red Kite. Or you could have the chance to take a placement at the University’s Canalside Studios, working as part of a team researching and developing games for a range of platforms.
If you’d like to try your hand at setting up your own business, our Enterprise Placement Year (EPY) gives students from the UK or the EU the chance to start your own independent studio. You could set up your own company in The Duke of York Young Entrepreneur Centre, which is located in our flagship 3M Buckley Innovation Centre. You can work on your own, or set up a company as part of a group. Business advisors and a games industry mentor will support you as you get things off the ground.
Computer Science with Games Programming at Huddersfield brings together cutting-edge research, industry standard technology, facilities and passionate and supportive staff. But that’s not all, this course is built around flexibility! Designed to give you the chance through projects to tailor your study to your own strengths, goals and aspirations. By blending a core computing course, with a specific focus on games programming techniques and not forgetting the opportunity to undertake a placement year with a games company, or in our in house commercial games studio, or start your own indie games company we support you in getting ready for graduate employment.
Dr Duke Gledhill, Senior Lecturer
Computing Science and Mathematics
In this module we introduce you to basic computing science and mathematical concepts related to software development. Topics covered include set theory, graphs and trees, finite state machines, grammars and languages, propositional logic and searching and sorting algorithms. You’ll put the theory into practice using a programming language, such as Java, and software that lets you directly implement finite state machines.
Working as part of a team, this module aims to provide you with an understanding of hardware, software and industry best practices used by businesses. In your teams you’ll be supported in planning, designing and developing a prototype product. This experience has been designed to introduce you to the product development cycle, technology limitations and possible future developments.
Hardware and Networks
This module explores how computers and networks function by introducing you to their components and structures, from the basic building blocks to fully functioning systems. The module covers how computers execute programs, how data is stored, recognised and manipulated, and which hardware and software components are used to achieve this. You’ll also get the opportunity to study how networks are constructed and what techniques (e.g., network addressing, subnetting, routing, virtual private network, access control list) are used to ensure that data is transmitted correctly and securely through them.
Software Design and Development
This module aims to provide you with an introduction to the design, development, and testing of large scale software systems. The material covered includes introductory programming (in a language such as Java), program testing (using JUnit testing techniques), systems modelling (using unified modelling language- UML), graphical user interface (GUI) development, and rapid prototyping techniques.
This module is studio based and takes a practical approach to the knowledge and skills covered. You will have opportunities to produce and evaluate a software prototype related to your chosen study path. Through this practice based approach you will be introduced to the concepts and principles of programming/scripting in different development environments. You will be required to plan, design, implement, test and deploy solutions in response to a requirement specification. Ultimately you are expected to produce a useful software product, whether it is a game, entertainment feature or business or media product. Throughout this module you’ll be supported in acquiring sound development and problem solving skills and be expected to assemble a portfolio of work.
Computational Mathematics 1
This module covers the mathematical foundations required for scientific computing. You’ll be introduced to fundamental concepts in algebra and be supported in developing an understanding of both analytical and numerical methods for solving equations in one variable. You'll also be introduced to error analysis and proof.
Algorithms Processes and Data
In this module you’ll be supported in expanding your programming skills to cover a range of standard data structures (e.g. lists, trees and graphs; shared variables, semaphores and monitors) and algorithms (e.g. searching, sorting and traversals; Dekker's algorithm and bounded buffer algorithms) for both sequential and concurrent systems. You’ll also study how to analyse systems in order to determine their correctness and safety, and to calculate their efficiency.
This module introduces the concepts and practices of modern computer games development through analysing and utilising various common computer graphics application programming interfaces (APIs in an industrial standard C++ programming environment). Our aim is to equip you with knowledge and skills in designing and developing a professional computer game for any targeted platforms through a rigid quality control process. The main focus is on the graphics engine, and this is supported by a careful study of the theory and practice of game mathematics and computer graphics.
Game Engine Architecture
This module aims to familiarise you with the major non-graphical components of modern game engines including the resource management and physics subsystems. It also covers the game object model and the various tools used to build a game, such as level editors. The module covers both the theory and implementation of these typical components, as well as the overarching architecture of the game engine. You will be supported in using a games industry standard programming language (e.g. C++) to explore approaches to game engine design and development. You will also study engines and middleware used by industry (e.g. Unreal Engine, BulletPhysics, BulletPhysics) to help you gain an understanding of the challenges facing professional game engine programmers.
Team Project (Games)
This module gives you the opportunity to work as a team to design and develop a prototype computer game. You’ll be supported in exploring theories and principles of team working and project management through the development of your chosen game. Weekly tutorial sessions will be held to allow your team to get regular feedback and guidance on the progress of your project. Alongside this you’ll also explore important legal and professional issues relevant to people working in the IT industry.
Choose one from a list which may include:
Object-Oriented Systems Development
This module allows you to explore the programming language that underpins major operating systems, applications, the Internet and the World Wide Web. Throughout this module you’ll be supported in expanding on the procedural and object based coding skills that you have developed so far. You’ll be supported be given an introduction to 'C' programming leading into C++ programming with a push toward Objective-C. You’ll then be supported in building a client-server system where the client could be a smartphone, tablet or a desktop PC. Techniques for accessing Object Request Brokers and databases will be covered, and the concept of Design Patterns will be introduced.
Operating Systems and Language Translators
In this module you’ll study two related areas. Firstly, the modules covers the architectures of computer operating systems, including how they deal with resource allocation, management and security, in both single processor systems and multiple distributed processor systems (networks). Secondly, the module covers language processing, a key operation in modern computer systems. You’ll explore the structure of computer languages and the tools and techniques to automatically analyse them.
Relational Databases and Web Integration
This module aims to equip you with the knowledge and skills needed to design, implement and query a relational database. You’ll be supported in gaining an understanding of the functionality necessary to enable web pages to interact with a database. You’ll be given the opportunity to become familiar with web architectures and the design considerations necessary for implementing a database driven web application.
This course offers an optional one-year work placement after Year 2.
Can machines (in particular computers) be intelligent? And what does that mean precisely? These are the main questions that we try to answer in this module. We will explore how machines can achieve intelligent tasks in a variety of settings. In term one we consider settings with full observability and determinism, these are like laboratory conditions or puzzle games. In this setting, we will look at knowledge representation, problem solving, and planning. In term two the settings are relaxed, and we will study how to deal with the uncertainties that arise from this. In particular, we will see how to deal with opponents, with incomplete and/or uncertain information, and how intelligent agents can learn.
This module is driven by you. You are asked to select a problem to solve which is relevant to your degree, and of appropriate scope and depth to be tackled within a timeframe of 30 weeks. Carrying out the project enables you to develop and demonstrate your ability to undertake research, manage time, use your initiative, learn independently, discuss and write convincingly on a subject requiring independent learning. A supervisor will support you throughout your project. You’ll use your existing knowledge and be encouraged to acquire additional skills as you carry out your project. The aim of the project is to suggest a solution to an identified problem. Your final report should describe the aims, scope and motivation of the project, the research you have undertaken, and the technical solution provided, including justification for design and development decisions.
Advanced Computer Games Development
This module aims to develop your advanced specialist skills in computer games development. It covers advanced games programming technologies and techniques, particularly relating to gaming interface systems such as Kinect, Emotiv, Novint Falcon, Oculus Rift or HD WebCam. The module will explore the advancements in, and potential of, novel human computer interface (HCI) technologies for future developments in games and new game genres. It also introduces technologies and tools for defining and measuring software quality through adopting software metrics, software quality models and process maturity model.
Team Project (Games)
In this module you'll work in a group to simulate a company environment. You’ll be supported in working as a team to design, code and implement a vertical slice of a computer game. The module covers all aspects of a game development cycle, conceptualisation, asset development, software development, team working, team management, company structures, professional issues and ethics. This aims to help you develop business and entrepreneurial skills and provide you with experience of software development in a group environment working alongside other game industry professionals.
You will be taught through a combination of lectures, tutorials and practical sessions; in subjects such as software development and modelling, applied in practical games studio sessions. 67.7% of the study time on this course is spent in lectures, seminars, tutorials, practical sessions etc. Assessment is through a combination of coursework (both written and practical) and exams.
Your module specification/course handbook will provide full details of the assessment criteria applying to your course.
Feedback (usually written) is normally provided on all coursework submissions within three term time weeks – unless the submission was made towards the end of the session in which case feedback would be available on request after the formal publication of results. Feedback on exam performance/final coursework is available on request after the publication of results.
The teaching year normally starts in September with breaks at Christmas and Easter, finishing with a main examination/assessment period around May/June. Timetables are normally available one month before registration. As this is a full-time course, you may have to attend every day of the week.
Your course is made up of modules and each module is worth a number of credits. Each year you study modules to the value of 120 credits, adding up to 360 credits in total for a bachelor’s qualification. These credits can come from a combination of core, compulsory and optional modules but please note that optional modules may not run if we do not have enough students interested.
If you achieve 120 credits for the current stage you are at, you may progress to the next stage of your course, subject to any professional, statutory or regulatory body guidelines.
BBBat A Level
120 UCAS tariff points from a combination of Level 3 qualifications
DMM in BTEC Level 3 Extended Diploma
In addition you must have GCSE English Language or Literature at grade 4 or above and Maths at grade 5 or above, or grade C and B respectively if awarded under the previous GCSE grading scheme.
Applicants whose first language or language of instruction is not English must meet the minimum requirements of an English language qualification. The minimum of IELTS 6.0 overall with no element lower than 5.5 or equivalent will be considered acceptable.
Other suitable experience or qualifications will be considered. For further information please see the University's minimum entry requirements.
- Huddersfield is a TEF gold-rated institution delivering consistently outstanding teaching and learning of the highest quality found in the UK (Teaching Excellence Framework, 2017).
- We won the first Global Teaching Excellence Award recognising the University’s commitment to world-class teaching and its success in developing students as independent learners and critical thinkers (HEA, 2017).
- Here at Huddersfield, you’ll be taught by some of the best lecturers in the country. We’ve been the English university with the highest proportion of professionally-qualified teaching staff for three years running*.
- For the past ten years, we’ve been the UK’s leading university for National Teaching Fellowships too, which rate Britain’s best lecturers. It’s all part of our ongoing drive for teaching excellence, which helps our students to achieve great things too.
- We’re unique in the fact that all our permanent teaching staff** have, or are completing, doctorates. This expertise, together with our teaching credentials, means that students here learn from knowledgeable and well-qualified teachers and academics who are at the forefront of their subject area.
*HESA - First awarded in 2016, maintained in 2017 and 2018.
**Permanent staff, after probation: some recently appointed colleagues will only obtain recognition in the months after their arrival in Huddersfield, once they have started teaching; research degrees applies to those on contracts of more than half-time.
Research plays an important role in informing all our teaching and learning activities. Through research our staff remain up-to-date with the latest developments in their field, and contribute to society, which means you develop knowledge and skills that are current and highly relevant to industry. For more information, find out more about our Research institutes and centres.
At the University of Huddersfield, you'll find support networks and services to help you get ahead in your studies and social life. Whether you study at undergraduate or postgraduate level, you'll soon discover that you're never far away from our dedicated staff and resources to help you to navigate through your personal student journey. Find out more about all our support services.
We will always try to deliver your course as described on this web page. However, sometimes we may have to make changes as set out below.
Changes to a course you have applied for
If we propose to make a major change to a course that you are holding an offer for, then we will tell you as soon as possible so that you can decide whether to withdraw your application prior to enrolment.
Changes to your course after you enrol as a student
We will always try to deliver your course and other services as described. However, sometimes we may have to make changes as set out below:
Changes to option modules
Where your course allows you to choose modules from a range of options, we will review these each year and change them to reflect the expertise of our staff, current trends in research and as a result of student feedback or demand for certain modules. We will always ensure that you have a range of options to choose from and we will let you know in good time the options available for you to choose for the following year.
We will only make major changes to the core curriculum of a course or to our services if it is necessary for us to do so and provided such changes are reasonable. A major change in this context is a change that materially changes the services available to you; or the outcomes, or a significant part, of your course, such as the nature of the award or a substantial change to module content, teaching days (part time provision), classes, type of delivery or assessment of the core curriculum.
For example, it may be necessary to make a major change to reflect changes in the law or the requirements of the University’s regulators; to meet the latest requirements of a commissioning or accrediting body; to improve the quality of educational provision; in response to student, examiners’ or other course evaluators’ feedback; and/or to reflect academic or professional changes within subject areas. Major changes may also be necessary because of circumstances outside our reasonable control, such as a key member of staff leaving the University or being unable to teach, where they have a particular specialism that can’t be adequately covered by other members of staff; or due to damage or interruption to buildings, facilities or equipment.
Major changes would usually be made with effect from the next academic year, but this may not always be the case. We will notify you as soon as possible should we need to make a major change and will carry out suitable consultation with affected students. If you reasonably believe that the proposed change will cause you detriment or hardship we will, if appropriate, work with you to try to reduce the adverse effect on you or find an appropriate solution. Where an appropriate solution cannot be found and you contact us in writing before the change takes effect you can cancel your registration and withdraw from the University without liability to the University for future tuition fees. We will provide reasonable support to assist you with transferring to another university if you wish to do so.
Termination of course
In exceptional circumstances, we may, for reasons outside of our control, be forced to discontinue or suspend your course. Where this is the case, a formal exit strategy will be followed and we will notify you as soon as possible about what your options are, which may include transferring to a suitable replacement course for which you are qualified, being provided with individual teaching to complete the award for which you were registered, or claiming an interim award and exiting the University. If you do not wish to take up any of the options that are made available to you, then you can cancel your registration and withdraw from the course without liability to the University for future tuition fees and you will be entitled to a refund of all course fees paid to date. We will provide reasonable support to assist you with transferring to another university if you wish to do so.
When you enrol as a student of the University, your study and time with us will be governed by a framework of regulations, policies and procedures, which form the basis of your agreement with us. These include regulations regarding the assessment of your course, academic integrity, your conduct (including attendance) and disciplinary procedure, fees and finance and compliance with visa requirements (where relevant). It is important that you familiarise yourself with these as you will be asked to agree to abide by them when you join us as a student. You will find a guide to the key terms here, where you will also find links to the full text of each of the regulations, policies and procedures referred to.
The Office for Students (OfS) is the principal regulator for the University.