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

Coursera

Object-Oriented Game Development with C++ and SFML

Packt via Coursera

Overview

Google, IBM & Meta Certificates – 40% Off a Year
One Coursera Plus subscription covers most Professional Certificates on Coursera. 40% off a full year through Dec 2.
Unlock All Certificates
Advance your C++ skills by mastering object-oriented programming and building classic games with SFML. Learn to design, structure, and manage game code using classes, collision detection, and dynamic gameplay elements. This course deepens your understanding of C++ by focusing on object-oriented programming principles and their application in game development. You'll create and refine games like Pong and a Zombie Shooter, learning about classes, collision detection, physics, and advanced graphics techniques. By the end, you'll be able to design robust game systems and manage complex codebases with confidence. The course uses a project-driven approach, guiding you through the process of building and enhancing games while introducing key programming concepts. Each topic is presented with practical examples and clear explanations, helping you connect theory to real-world game development challenges. This course is part two of a three-course Specialization designed to build a complete and cohesive understanding of the subject. While it offers valuable skills on its own, you'll gain the most benefit by progressing through all three courses as a structured learning journey. This course is based on Beginning C++ Game Programming, by John Horton. Packt is one of the world's most prolific publishers of cutting-edge technical content. For over two decades we've made it our mission to curate and publish the knowledge of only the very best technical experts. We focus on real-world courses that help our customers get the job done, with coverage that extends across a wide range of established and cutting-edge technical topics. If you're an individual or an organisation that embraces learning by doing, Packt is the perfect fit for you.

Syllabus

  • Object Oriented Programming: Starting the Pong game
    • This module introduces the fundamentals of object-oriented programming (OOP) through the development of a simple Pong game. Learners will explore class design, file organization, and the structure of C++ projects. The focus is on applying OOP principles to build modular and maintainable code.
  • Dynamic collision detection and physics: Finishing the Pong Game
    • This module focuses on implementing a Ball class using encapsulation, detecting collisions with SFML, and integrating scoring logic into a Pong game. Learners will gain hands-on experience with object-oriented programming and game physics concepts.
  • SFML Views: Starting the Zombie Shooter Game
    • This module introduces students to object-oriented programming (OOP) and the SFML View class, with a focus on structuring and managing game code for a zombie shooter project. Learners will gain hands-on experience in implementing game loops, organizing assets, and controlling the game camera. The module also covers best practices for managing complex code files and game states.
  • C++ References, Sprite sheets & Vertex Arrays
    • This module covers the use of C++ references for efficient variable handling and the implementation of SFML vertex arrays and sprite sheets for creating scalable game backgrounds. Learners will gain practical skills in optimizing memory use and rendering performance in game development.
  • Pointers, Standard Template Library & Texture Management
    • This module covers the fundamentals of pointers in C++, including their use for memory management and dynamic allocation. It also introduces the Standard Template Library (STL) and how to use containers like maps for efficient data handling. Learners will gain practical skills for improving code efficiency and managing complex data structures.
  • Collision Detection, Pickups & Bullets
    • This module covers the implementation of collision detection systems, bullet mechanics, and pickup classes to enhance interactivity in game development. Learners will explore how to create and manage in-game objects that interact with the player and environment, improving overall gameplay dynamics.
  • Layering Views & Implementing The HUD
    • This module covers how to use SFML Views to layer and maintain HUD elements in a game. Learners will gain skills in positioning and managing UI components during dynamic gameplay and screen transitions. The focus is on implementing consistent and responsive HUD displays.
  • Sound Effects, File I/O & Finishing the Game
    • This module focuses on implementing file input/output operations, integrating sound effects, and managing game states to finalize a game project. Learners will gain practical skills in using the C++ Standard Library for file manipulation and audio integration.

Taught by

Packt - Course Instructors

Reviews

Start your review of Object-Oriented Game Development with C++ and SFML

Never Stop Learning.

Get personalized course recommendations, track subjects and courses with reminders, and more.

Someone learning on their laptop while sitting on the floor.