Learn C++ Game Development

C++ game development course for beginners.
187 reviews
TAUGHT BY
  • Luka Horvat Independent Game programmer, designer

    Luka is an independent game programmer and designer with much experience from different projects and many different programming languages. He has been interested in computer science and programming from his early years. That, and a passion for games lead him into the field of video game design and programming. In 2011 he started making tutorials on game development, and has now moved to Udemy to continue teaching others how to make games.

WHAT'S INSIDE
  • Lifetime access to 43 lectures
  • 4+ hours of high quality content
  • A community of 7300+ students learning together!
  • 220+ discussions
SHARE

Learn C++ Game Development

C++ game development course for beginners.
187 reviews

HOW UDEMY WORKS?

Discover courses made by experts from around the world.

Take your courses with you and learn anytime, anywhere.

Learn and practice real-world skills and achieve your goals.

COURSE DESCRIPTION

Learn C++ game development is a course I made for everyone who knows how to program, but doesn't know where to start with game development. The course teaches you how to use the SFML library for C++, to start working with graphics, events and sound to create a 2D game. Everything is done step by step with the help of videos, so it's easy to follow along and learn. At the end of the course you will know what you need for game programming and will be able to start making your own games.

Warning: This course was published more than 2 years ago and the technology used in it progresses fast. The current most updated version of SFML (2.1) doesn't work out of the box with Visual Studio 2013 (or the express editions) and it requires more work to setup. If you want to follow this course easily, then you should use the 2012 or older version of Visual Studio (or the express edition) which can still be officially downloaded from Microsoft site.

    • Over 43 lectures and 4 hours of content!

THE UDEMY GUARANTEE

30 day money back guarantee
Lifetime access
Available on Desktop, iOs and Android
Certificate of completion

CURRICULUM

  • 1
    Introduction
    02:34

    A welcome video where I explain what you need for the course, what you will learn and how it's going to progress.

  • SECTION 1:
    Lesson 1: Setup
  • 2
    Preparing our environment
    12:55

    A new video, where I will show you how to prepare you environment, so you can continue with the course using the latest Visual Studio 2013 and SFML 2.1. You can skip lecture "Installing Visual C++" and "Installing SFML" if you use this video.

    Made because there were many questions on how to use the latest software with this course.

    The microphone quality is a little bad and some words are muffled, but I hope this video will help everyone out there.

  • 3
    Installing Visual C++
    07:23

    In this video I show how to install Visual C++ Express 2010.

    Link to the site:

    http://www.microsoft.com/visualstudio/en-us/products/2010-editions/visual-cpp-express

  • 4
    Installing SFML
    09:27

    In this video I show how to prepare te library SFML to use it with Visual C++.


    Link for the download:

    http://www.sfml-dev.org/download/2.0-rc/SFML-2.0-rc-windows-32-vc2010.zip

  • SECTION 2:
    Lesson 2: The window
  • 5
    Creating The Project
    11:45

    In this video I show you how to create the project in Visual C++.

  • 6
    Creating the window
    08:06

    In this video I show you how to create a simple window for the game.

  • 7
    Game loop
    07:24

    in this video I show you how the basic game loop is constructed.

  • 8
    Project zip file
    1.29 MB

    If you want you can download the file, extract it and then open the solution with Visual C++ Express.

  • SECTION 3:
    Lesson 3: Events
  • 9
    Keyboard Events
    09:59

    In this video I show and explain to you how to use keyboard events in SFML.

  • 10
    States for events
    11:41

    In this video I show and explain to you how we can use a state based system to separate events from logic.

  • 11
    Project zip file for keyboard events and states
    1.29 MB

    If you wish you can download, extract and open the file to see how the project should look like by now.

  • 12
    Mouse Events
    11:34

    In this video I show and explain to you how we can use mouse events for our game.


    NOTE:

    There is a faulty line of code:

    int mouseX, mouseY;

    Replace it with:

    int mouseX = 0, mouseY = 0;
  • 13
    Project zip file for mouse events
    1.29 MB

    If you wish you can download, extract and open the file to see how the project should look like by now.

  • 14
    Exercises
    Text
    Here are some exercises for "Lesson 3: Events". These exercises will test if you understood how to use events and separate events from logic. The exercises go from the easiest to the hardest, but are all solvable with some logical thinking. After you finished the exercises or if you don't know one y…
  • 15
    Solutions for exercises
    12:58

    In this video I show you the solutions for the exercises.

  • SECTION 4:
    Lesson 4: Drawing or rendering
  • 16
    Basic Shapes
    15:32

    In this video I show and explain to you how to draw simple shapes like a rectangle and a circle.

  • 17
    project zip file for simple shapes
    1.29 MB

    If you wish you can download, extract and open the file to see how the project should look like by now.

  • 18
    Creating an image and rendering it
    09:31

    In this video I show and explain to you how to create a simple image, load it and render it in the game.

    Link to GIMP website:

    http://www.gimp.org/

  • 19
    Downloading an image and preparing it
    03:57

    In this video I show and explain to you how to find an image and then prepare it for use in the game.

    Link to OpenClipArt website:

    http://openclipart.org/

  • 20
    Project zip file for creating and loading images
    1.64 MB

    If you wish you can download, extract and open the file to see how the project should look like by now.

  • 21
    Fonts and texts
    07:54

    In this video I show and explain to you how to load and render fonts in the game.

    I have gotten a notice so I will post this here. If you are planning on releasing your games in the future, then don't use Microsoft fonts, but find some free and open sourced ones on the web. They are really easy to find, and you can avoid licensing problems.

  • 22
    Project zip file for fonts
    2.05 MB

    If you wish you can download, extract and open the file to see how the project should look like by now.

  • SECTION 5:
    Lesson 5: Sounds and music
  • 23
    Preparing the project
    03:59

    In this video I show and explain to you how to prepare the project in order to be able to use sounds and music in the game.

  • 24
    Create and play sounds
    07:06

    In this video I show and explain to you how to create a simple sound using a website and then load and play it in the game.

    Link to site:

    http://www.bfxr.net/

  • 25
    Project zip file for preparing the project and playing sounds
    2.72 MB

    If you wish you can download, extract and open the file to see how the project should look like by now.

  • 26
    Playing music
    05:10

    In this video I show and explain to you how to find and prepare music to load and play it in the game.

    Websites:

    http://www.jamendo.com/en

    http://media.io/

  • 27
    Project zip file for playing music
    2.78 MB

    If you wish you can download, extract and open the file to see how the project should look like by now.

  • SECTION 6:
    Lesson 6: Game mechanics
  • 28
    Simple Logic
    09:32

    In this video I show and explain to you how to use what we have learned till now to create some simple game logic.

  • 29
    Project zip file for simple logic
    2.66 MB

    If you wish you can download, extract and open the file to see how the project should look like by now.

  • 30
    Simple Movement
    12:42

    In this video I show and explain to you how to create simple movement with events and rendering.

  • 31
    Project zip file for simple movement
    2.66 MB

    If you wish you can download, extract and open the file to see how the project should look like by now.

  • 32
    Simple collision
    08:59

    In this video I show and explain to you how basic collision works.

  • 33
    Project zip file for simple collision
    2.66 MB

    If you wish you can download, extract and open the file to see how the project should look like by now. 

  • SECTION 7:
    Lesson 7: Creating the game "Pong"
  • 34
    Part 1 - Resources
    07:48

    In this lesson we take a look at the resources we are going to use in the game. We also prepare our code and load eveything.

  • 35
    Pong resources and project zip file for part 1
    3.41 MB

    Download the zip and extract it. In it you will find the data folder with the files and the project.

  • 36
    Part 2 - Shapes
    07:46

    In this video we get the images on the screen using shapes.

  • 37
    Pong project zip file for part 2
    3.41 MB

    If you wish you can download, extract and open the file to see how the project should look like by now. 

  • 38
    Part 3 - Movement
    15:12

    In this video we add movement to the pad and the ball.

  • 39
    Project zip file for part 3
    3.41 MB

    If you wish you can download, extract and open the file to see how the project should look like by now. 

  • 40
    Part 4 - AI And Collision
    10:24

    In this video we create a very simple AI for the 2nd pad, and we add collision check for the ball.

  • 41
    Project zip file for part 4
    3.41 MB

    If you wish you can download, extract and open the file to see how the project should look like by now. 

  • 42
    Part 5 - Finish
    12:34

    In this video we finish up our game.

  • 43
    Project zip file for part 5
    7.03 MB

    If you wish you can download, extract and open the file to see how the project should look like by now. 

UDEMY BY THE NUMBERS

5,200,000
Hours of video content
19,000,000
Course Enrollments
5,800,000
Students

RATING

  • 124
  • 43
  • 13
  • 5
  • 2
AVERAGE RATING
NUMBER OF RATINGS
187

REVIEWS

  • Richard Patching
    Clear and Concise Introduction to SFML and C++ Games Development

    A very good introduction to SFML and C++ games development. Being C++ it would have been good if the author had shown how to architect the game into a more Object Oriented manner, hence the 4 stars instead of 5. Would recommend regardless!

  • Aaron Armstead
    Good course

    Well thought out and well made. Should be called Learn C++ Game Development with SFML as the material is specific to that engine. However, plenty of useful guidelines even if you won't be using SFML later on.

  • Bradley C Johnston
    Simple intro that helps with concepts

    This was a simple and easy to understand course with covers most of the basics (basic graphics, sounds and music, boundaries and collisions, and a bit of game play ). A good intro to games.

  • Stephen Matthew Dafydd Davies
    Outdated

    This course should be free, the information is out of date, it is not maintained, and as such there are many issues which prevent the student from actually following along with thier own code. Very dissapointing

  • John Tompros
    Easy to follow C++ course for game development

    Instructions are clear and the instructor is easy to understand. Great introduction to game programming! Would love another course into more advanced game programming concepts! Thank you!

  • 30 day money back guarantee!
  • Lifetime Access. No Limits!
  • Mobile Accessibility
  • Certificate of Completion
STUDENTS WHO VIEWED THIS COURSE ALSO VIEWED: