Halo Section Bg

Minesweeper

Learn 2D arrays by building Minesweeper! Learn essential matrix operations while creating this addictive puzzle classic. Perfect balance of learning and fun as you implement mine placement, neighbor counting, and recursive revealing mechanics with SFML.

What you'll learn

  • Operations and Time Complexity of 2D Arrays

  • 2D Array traversal for grid generation

  • Input Detection for opening the cells

  • Managing game states

  • Dynamic Cell Rendering for different Array sizes

  • Handling Button Call-backs

  • Handling Frame Updates and Rendering

Requirements

  • Understanding of 1D Arrays and its operations.

  • Intermediate to Advanced proficiency in C++.

  • Ability to read and understand existing C++ game code.

  • Prior experience working on C++ game projects.

  • A system with at least 8 GB RAM, i5 Processor, and 2 GB dedicated GPU.

  • Passionate about making games with a burning desire to become a game developer.

About This Course

Learn 2D arrays through Minesweeper - a classic puzzle game teaching matrix operations. Design the grid, implement mine placement, recursive cell revelation, and flagging mechanics. Perfect for learning multidimensional array manipulation with SFML while building an engaging strategy game.

Create a complete Minesweeper featuring grid generation, mine counting, cell states management, win/loss conditions, and game reset functionality. Learn essential 2D array concepts through practical implementation while developing a polished, playable game.

Show More

Curriculum

4 materials
  • Project Goal
  • Preview

  • Getting Started
  • Branching Instructions
  • Configuring Project
2 materials
8 materials
  • Board Architecture
  • Preview

  • Creating Game Board
  • Preview

  • Create Board Controller
  • Rendering a Board
  • Create Board View
  • Starting Gameplay
  • Drawing a board
  • Render the Board
10 materials
  • Cell
  • Preview

  • Drawing the First Cell
  • Preview

  • Draw a Cell
  • Applying Textures to Cells
  • Understanding Cell Behaviour
  • Slicing Textures
  • Slice Cell Texture
  • Positioning the Cell
  • Setting Cell Size
  • Position Cell on Board
7 materials
  • Drawing a Row
  • Draw a Row of Cells
  • How to draw a Grid?
  • Exploring 2D Arrays
  • Moving around in a 2D Array
  • Drawing a Grid
  • Draw a Grid of Cells
3 materials
  • Opening a Cell
  • Hosting a Red Flag
  • Handle Input
8 materials
  • What is Gameplay UI
  • Running a Timer
  • Create a Timer
  • Showing Mine Count
  • Create Mine Count
  • Reset Button
  • Implement Reset Button
  • Solution for Grid Setup Branch
3 materials
  • Refactoring Input System
  • Updating Mine Count
  • Refactor Input Handling
5 materials
  • How to Populate Board
  • Populating the Board
  • Populate the Board
  • Opening all Cells
  • Open all Cells
5 materials
  • Handling different Cell Values
  • Process Cell Values
  • What is Opening-Empty-Cells
  • Implementing Opening-Empty-Cells
  • Open Neighboring Empty Cells
7 materials
  • Set up mine explosion
  • Handle Mine Explosions
  • Timer Run-Out
  • Handle Timer Run-Out
  • Winning Minesweeper
  • Implement Game Win Condition
  • Solution - Gameplay Setup Branch
2 materials
  • Intro to STL
  • Vectors
2 materials
  • Searching in 2D Array
  • Jagged Arrays

Instructor

Mayank Grover

Founder, Teacher @ Outscal | EA, Kixeye, DeNA, Junglee, D.E. Shaw

Why you should learn from me:

  • Over 10 years of experience building games for major companies like EA, Junglee, DeNA.
  • Founder of Outscal, a thriving 9000+ member community dedicated to game development and career growth.
  • Proven track record of mentoring developers, with a focus on practical, career-accelerating skills.

Outscal Alumni

Vinay Kashyap
Gameplay Programmer at Ubisoft

Outscal delivers an unmatched journey into game programming: exceptional instructors, real-world projects, and a supportive community.

Sethunath R
Gameplay Engineer 2 at Zynga

The project-oriented approach at Outscal helped me make my portfolio and gave me a boost in getting my resume shortlisted with the studios I applied with.

Flemin Johnson
Consultant at Sagility

In a short span of 6 months, Outscal’s game development course helped me excel in my career and crack into one of the top gaming companies in India.

Swapnil Rane
Game Developer at Voodoo

Outscal boosted my confidence and taught me how to express my thoughts through game development.

Komal K
ASE at Light & Wonder

’I was a born genius, education ruined me.’ Outscal helped me rise again like a Phoenix contributing to my career transition from a sketch artist.

Ranjit Panjwani
Game Developer at Image Devices

Outscal helped me transition to my dream career in game development at the age of 32, highly recommended if you are looking to build a career in games.

Joy Kumar
Senior Software Engineer at Wildace

Outscal’s unique approach to online learning prepared me for future hurdles, the 1-on-1 mentor sessions accelerated my growth to the next level.

Milan George
Senior Programmer at Nytwolf Games

The project-oriented approach helped me completely grasp concepts better than anything taught to me during my conventional education.

Tanya Gupta
Unity 3D Developer at Terra

A great place to learn and grow in the video game development industry. The team is super supportive and went above and beyond to help me.

Chinmay Varmani
Indie Game Developer

The comprehensive game programming course offered by Outscal exceeded my expectations, highly recommended for aspiring game developers.

Aihasas Yadu
Unity Developer at Vapronix

Best part about Outscal is their 1-on-1 reviews for all codes and focusing on students individually.

Darren Henry
Game Developer at Redline Games

Outscal’s Game Development course is completely career-oriented, unlike traditional colleges which are just meant for exams.

Vidit Rawat
Engineer 1 at LightFury Games

With supportive and approachable mentors at Outscal and hands-on industry-level projects, I was able to turn my passion for game development into a career.

Choose Your Plan

CONTENT ONLY

$29.99

/ month

Access to all Content

Professional Certification

Mentor Support

Subscribe Now