Introduction to C++ Programming and Unreal (Coursera)

Introduction to C++ Programming and Unreal (Coursera)

This course is all about starting to learn how to develop video games using the C++ programming language and the Unreal Engine on Windows or Mac. This course assumes you have previous programming experience in some other language. Although we'll start at the very beginning for C++, hardly anybody learns (or teaches) C++ as a first language. Similarly, Unreal Engine is a commercial, industrial strength game engine. With great power comes great ... complexity, so it's important that you have the will to work hard to learn how to use C++ in Unreal Engine.

Class Deals by MOOC List - Click here and see Coursera's Active Discounts, Deals, and Promo Codes.

Computer programming is really fun in general, and programming games is even better!
Caution: Introduction (starting to learn C++ and Unreal Engine) is not the same as easy (not hard to do). Learning to program using C++ in Unreal Engine IS hard to do, especially since this course is essentially the first half of a freshman-level college course. Meeting the course challenges while you master the material will be rewarding to you, but doing that will require hard work and maybe even a few expletives along the way.

Syllabus

WEEK 1
Starting to Program
In this module, you'll learn about the course and get Unreal installed and configured. You'll write your first C++ console application and your first C++ script in Unreal.

WEEK 2
Data Types, Variables, and Constants
In this module, you'll learn how information is stored in the computer using binary and you'll learn how data types tell us how to interpret the bits and memory and what operations we can perform on those bits. You'll also learn about the most commonly-used numeric types in C++, you'll get some practice reading documentation (which programmers do all the time!), and you'll learn how to use the debugger to find and fix bugs in your code.

WEEK 3
Classes and Objects
In this module, you'll learn the foundational concepts in the Object-Oriented (OO) paradigm. This paradigm is incredibly useful in game development, because it models our software system as a set of software objects that interact with each other. Those concepts map nicely to games, which typically include lots of game entities that interact with each other. You'll learn how to actually use classes and objects in your code as well.

WEEK 4
Unreal Engine Basics
In this module, you'll start learning how to use Unreal Engine. We'll explore how to import models into our games, how to set up the orthographic camera and light source for a "2D" game, how to create reusable assets (blueprints) you can add to the game either in the editor or from scripts, and how to use the physics system. You'll finally do more in Unreal than just write scripts!

Go to Class
MOOC List is learner-supported. When you buy through links on our site, we may earn an affiliate commission.

Related Courses

An Introduction to Interactive Programming in Python (Part 1) (Coursera) Coursera
Rice University

An Introduction to Interactive Programming in Python (Part 1) (Coursera)

This two-part course is designed to help students with very little or no computing background learn the basics of building simple interactive applications. Our language of choice, Python, is an easy-to learn, high-level computer language that is used in many of the computational courses offered on Coursera. To make learning Python easy, we have developed a new browser-based programming environment that makes developing interactive applications in Python simple.

Sep 7th 2026
5-12 Weeks
Build a Modern Computer from First Principles: Nand to Tetris Part II (project-centered course) (Coursera) Coursera
Hebrew University of Jerusalem

Build a Modern Computer from First Principles: Nand to Tetris Part II (project-centered course) (Coursera)

In this project-centered course you will build a modern software hierarchy, designed to enable the translation and execution of object-based, high-level languages on a bare-bone computer hardware platform. In particular, you will implement a virtual machine and a compiler for a simple, Java-like programming language, and you will develop a basic operating system that closes gaps between the high-level language and the underlying hardware platform.

Sep 14th 2026
5-12 Weeks
Persistent Memory Technology - Introduction and Deployment (Coursera) Coursera
EDUCBA

Persistent Memory Technology - Introduction and Deployment (Coursera)

Embark on a dynamic learning journey through this course. In the first module, explore the intricacies of Persistent Memory (PMEM), unraveling its fundamental concepts, characteristics, and operating system support. Transition seamlessly into the second module, mastering transactional concepts, optimizing hardware configurations, and discerning between volatile and persistent libraries. In the final module, dive into advanced programming with libpmemobj, overcoming C++ Standard limitations, and applying insights to real-world scenarios like building a phonebook.

Sep 14th 2026
3 Weeks
An Introduction to Interactive Programming in Python (Part 2) (Coursera) Coursera
Rice University

An Introduction to Interactive Programming in Python (Part 2) (Coursera)

This two-part course is designed to help students with very little or no computing background learn the basics of building simple interactive applications. Our language of choice, Python, is an easy-to learn, high-level computer language that is used in many of the computational courses offered on Coursera. To make learning Python easy, we have developed a new browser-based programming environment that makes developing interactive applications in Python simple.

Sep 7th 2026
4 Weeks
Laboratório de Programação Orientada a Objetos - Parte 2 (Coursera) Coursera
Universidade de São Paulo, Brasil

Laboratório de Programação Orientada a Objetos - Parte 2 (Coursera)

Esta é a segunda parte do curso avançado de Programação Orientada a Objetos oferecido pelo Departamento de Ciência da Computação do IME-USP. O curso é voltado para profissionais ou estudantes interessados em Desenvolvimento de Software Avançado e que já dominam uma linguagem de programação e já conhecem os fundamentos básicos da orientação a objetos.

Sep 14th 2026
5-12 Weeks
The Finite Element Method for Problems in Physics (Coursera) Coursera
University of Michigan

The Finite Element Method for Problems in Physics (Coursera)

This course is an introduction to the finite element method as applicable to a range of problems in physics and engineering sciences. The treatment is mathematical, but only for the purpose of clarifying the formulation. The emphasis is on coding up the formulations in a modern, open-source environment that can be expanded to other applications, subsequently.

Sep 7th 2026
13-24 Weeks
COBOL Programming with VSCode (Coursera) Coursera
IBM

COBOL Programming with VSCode (Coursera)

Professor Tak Auyeung of American River College, said it beautifully, “A programming language is not a fashion statement” it is used for a purpose. Whether it is to add new features, modify logic, create APIs to integrate it into other applications, or implement modern development practices, businesses around the world need application developers who know COBOL.

Sep 14th 2026
3 Weeks
Introducción a la programación en Python I: Aprendiendo a programar con Python (Coursera) Coursera
Pontificia Universidad Católica de Chile

Introducción a la programación en Python I: Aprendiendo a programar con Python (Coursera)

Decía Steve Jobs que “todo el mundo debería aprender a programar un ordenador porque esto te ayuda a pensar”. Hoy en día la programación es una herramienta fundamental para el desarrollo de la tecnología moderna. Este curso te introduce en el mundo de la programación en el lenguaje Python.

Sep 7th 2026
5-12 Weeks
面向对象技术高级课程 (The Advanced Object-Oriented Technology) (Coursera) Coursera
Peking University

面向对象技术高级课程 (The Advanced Object-Oriented Technology) (Coursera)

如果将软件开发人员看作行走江湖的武侠,那么各种软件开发技术就是武侠赖以傍身的武术秘籍。有的秘籍以易学灵巧见长,练习者很快掌握,并有立竿见影的功效,但失之厚重持久;有的秘籍初学乍练顿显困难,虽冥思苦解仍不得要领,需坚持不断的内功修炼方成正果,却是成为武林大侠必备的至宝。本课程有些类似于后者。

Sep 14th 2026
13-24 Weeks
Programming Fundamentals (Coursera) Coursera
Duke University

Programming Fundamentals (Coursera)

Programming is an increasingly important skill, whether you aspire to a career in software development, or in other fields. This course is the first in the specialization Introduction to Programming in C, but its lessons extend to any language you might want to learn. This is because programming is fundamentally about figuring out how to solve a class of problems and writing the algorithm, a clear set of steps to solve any problem in its class.

Sep 7th 2026
4 Weeks