Free Course Image Intro to C   Game Programming

Free online courseIntro to C Game Programming

Duration of the online course: 29 hours and 24 minutes

New course

Learn C++ game programming with this free online course covering fundamentals, SFML, ECS, collision detection, shaders, particle systems, and more in 29 hours.

In this free course, learn about

  • Course Overview and C++ Fundamentals
  • SFML Introduction and ECS Foundations
  • Core Systems: Assignment, Collision and Assets
  • Input, Animation, and Raycasting
  • Views, Project Planning, and AI Movement
  • Saving, Tools, Main Loop, and Performance
  • Graphics Enhancements: Shaders and Particles

Course Description

Welcome to "Intro to C++ Game Programming," an extensive course designed to guide you through the exciting world of game development using C++. Spanning a comprehensive 29 hours and 24 minutes, this course provides an in-depth exploration of the essential concepts and tools needed to become proficient in game programming.

In this course, we start with a detailed introduction, setting the stage for what you can expect to achieve by the end of your journey. Following this, we delve into the fundamentals of C++, divided into two thorough lectures. The foundational knowledge gained here is crucial for understanding the more complex topics that follow.

We then transition into practical applications with assignments and specific projects using the SFML library. These hands-on sessions are designed to cement your understanding and provide you with real-world coding experience. You will also be introduced to the Entity Component System (ECS) architecture, a pivotal design pattern in modern game development.

As we progress, we'll tackle essential game development topics such as Entity Management, 2D Game Math, and Collision Detection, ensuring you can manage game objects and interactions effectively. The course includes detailed lectures on working with Textures, implementing Actions, and enhancing game visuals and performance.

Assignments are strategically placed throughout the course to challenge your understanding and application of the topics covered. We also explore advanced concepts like Ray Casting, Line Segment Intersection, Pathfinding, and Steering, which are critical for developing sophisticated game mechanics.

Further along, the course addresses management aspects such as Saving Progress and utilizing Game Tools. We'll also examine the nuances of creating efficient game loops and optimizing performance through Cache Coherency and Memory Pooling. Profiling your code using C++ Visual Code Profiling ensures you can identify and improve performance bottlenecks.

The course concludes with a focus on advanced graphics programming. You'll learn about Shaders, Particle Systems, and Vertex Arrays, essential for creating visually stunning and performant games. Each lecture builds on the previous, incrementally developing your skills and confidence.

With no reviews yet, "Intro to C++ Game Programming" is your gateway to mastering game development in C++. It's categorized under Information Technology and specifically tailored for Game Development enthusiasts eager to turn their ideas into playable realities.

Embark on this immersive journey and take your game development skills to new heights!

Course content

  • Video class: COMP4300 - C Game Programming - Lecture 01 - Course Introduction 1h24m
  • Exercise: What is the main design paradigm taught in the course for developing game engines?
  • Video class: COMP4300 - C Game Programming - Lecture 02 - Intro to C (1/2) 2h17m
  • Exercise: What is a potential advantage of using C++ in game development?
  • Video class: COMP4300 - C Game Programming - Lecture 03 - Intro to C (2/2) 1h58m
  • Exercise: What is one advantage of using stack memory over heap memory in C++ programming?
  • Video class: COMP4300 - Game Programming - Lecture 04 - Assignment 1 SFML 2h00m
  • Exercise: What is the primary reason for using SFML in this course, especially when compared to other lower-level graphics libraries like OpenGL?
  • Video class: COMP4300 - Game Programming - Lecture 05 - Intro to ECS 1h26m
  • Exercise: What is one of the primary benefits of using the Entity-Component-System (ECS) architecture in game development, compared to traditional Object-Oriented Programming (OOP)?
  • Video class: COMP4300 - Game Programming - Lecture 06 - EntityManager 2D Game Math 1h29m
  • Exercise: What is one of the primary purposes of using an Entity Manager in game programming?
  • Video class: COMP4300 - Game Programming - Lecture 07 - Assignment 2 1h58m
  • Exercise: In the game programming course, what is the purpose of setting a circle shape's origin to its radius?
  • Video class: COMP4300 - Game Programming - Lecture 08 - Collision Detection 56m
  • Exercise: What are the two main stages involved in collision programming in video games?
  • Video class: COMP4300 - Game Programming - Lecture 09 - Textures 1h10m
  • Exercise: In a game engine architecture discussed in the lecture, what is the role of the 'Assets' class?
  • Video class: COMP4300 - Game Programming - Lecture 10 - Actions 54m
  • Exercise: In a game engine architecture, why is it beneficial to decouple input logic from action logic?
  • Video class: COMP4300 - Game Programming - Lecture 11 - Assignment 3 1h35m
  • Exercise: In a game development assignment where students are tasked with creating a Mega Mario-style game, which of the following components is crucial for determining whether an entity in the game has an animation that should loop continuously or play only once?
  • Video class: COMP4300 - Game Programming - Lecture 12 - Ray Casting Line Segment Intersection 55m
  • Exercise: What is the primary purpose of implementing 2D raycasting in game programming as described in the lecture?
  • Video class: COMP4300 - Game Programming - Lecture 13 - Cameras and Views 1h01m
  • Exercise: What is the primary purpose of using a view in a 2D game engine like SFML?
  • Video class: COMP4300 - Game Programming - Lecture 14 - Course Project Information 1h17m
  • Exercise: What is the main focus of the course project in Computer Science 4300?
  • Video class: COMP4300 - Game Programming - Lecture 15 - Pathfinding and Steering 1h08m
  • Exercise: What is the primary function of steering behaviors in game programming?
  • Video class: COMP4300 - Game Programming - Lecture 16 - Saving Progress, Game Tools, Drag 1h18m
  • Exercise: Which of the following saving methods allows a player to save their progress at a strategic point in the game?
  • Video class: COMP4300 - Game Programming - Lecture 17 - Assignment 4 1h10m
  • Exercise: In a game where each tile can block movement, vision, or both, how is an NPC's line of sight to a player determined in terms of vision blocking?
  • Video class: COMP4300 - Game Programming - Lecture 18 - Advanced Game Main Loop 54m
  • Exercise: What is the primary advantage of using variable time steps in a game engine?
  • Video class: COMP4300 - Game Programming - Lecture 19 - Cache Coherency Memory Pooling 58m
  • Exercise: In game programming, why is cache coherency important for optimizing performance?
  • Video class: COMP4300 - Game Programming - Lecture 20 - C Visual Code Profiling 1h30m
  • Exercise: What is the purpose of using a Singleton pattern in programming?
  • Video class: COMP4300 - Game Programming - Lecture 21 - Introduction to Shaders 50m
  • Video class: COMP4300 - Game Programming - Lecture 22 - Particle Systems and Vertex Arrays 1h07m

This free course includes:

29 hours and 24 minutes of online video course

Digital certificate of course completion (Free)

Exercises to train your knowledge

100% free, from content to certificate

Ready to get started?Download the app and get started today.

Install the app now

to access the course
Icon representing technology and business courses

Over 5,000 free courses

Programming, English, Digital Marketing and much more! Learn whatever you want, for free.

Calendar icon with target representing study planning

Study plan with AI

Our app's Artificial Intelligence can create a study schedule for the course you choose.

Professional icon representing career and business

From zero to professional success

Improve your resume with our free Certificate and then use our Artificial Intelligence to find your dream job.

You can also use the QR Code or the links below.

QR Code - Download Cursa - Online Courses

More free courses at Game development

Download the App now to have access to + 3300 free courses, exercises, certificates and lots of content without paying anything!

  • 100% free online courses from start to finish

    Thousands of online courses in video, ebooks and audiobooks.

  • More than 48 thousand free exercises

    To test your knowledge during online courses

  • Valid free Digital Certificate with QR Code

    Generated directly from your cell phone's photo gallery and sent to your email

Cursa app on the ebook screen, the video course screen and the course exercises screen, plus the course completion certificate

+ 9 million
students

Free and Valid
Certificate

60 thousand free
exercises

4.8/5 rating in
app stores

Free courses in
video and ebooks