Skip to content

Latest commit

ย 

History

History
106 lines (77 loc) ยท 3.29 KB

File metadata and controls

106 lines (77 loc) ยท 3.29 KB

Arcade Engine

C++20 Platforms License

A modern C++20 game engine designed for fast and efficient 2D game development. It leverages powerful open-source libraries to handle graphics, audio, data, logging, UI and enums.

๐ŸŽ“ Udemy Course

Build Your Own 2D Game Engine in C++20 with SFML 3

Learn how to build this engine from scratch in my complete Udemy course.

๐Ÿ“ฆ Dependencies

All dependencies are managed via CMake's FetchContent:

๐Ÿ› ๏ธ Prerequisites

  • C++20 compiler (MSVC, GCC or Clang).
  • CMake 3.28+
  • Git for cloning.

๐Ÿ“‚ Project Structure

ArcadeEngine/
โ”œโ”€โ”€ CMakeLists.txt
โ”œโ”€โ”€ Engine/
โ”‚   โ”œโ”€โ”€ Include/
โ”‚   โ””โ”€โ”€ Source/
โ”œโ”€โ”€ Games/
โ”‚   โ”œโ”€โ”€ Include/
โ”‚   โ””โ”€โ”€ Source/
โ””โ”€โ”€ Content/
  • Engine: Core, Graphics, Managers, Scene, Utils.
  • Games: Config, Types, Scenes.
  • Content: Textures, Sounds, Fonts, Shaders, โ€ฆ

โšก Building the Project

git clone https://github.com/adelhales/ArcadeEngine.git
cd ArcadeEngine
cmake -B Build -D CMAKE_BUILD_TYPE=Debug
cmake --build Build --config Debug -j

The executable will be located in Build/Debug (or Build).

๐Ÿงพ Compiler Options

Strict compilation flags are enabled by default:

  • MSVC: /W4 /WX
  • GCC/Clang: -Wall -Wextra -Werror

๐ŸŽฎ Running the Game

Make sure the Content folder is in the same folder from which you run the executable.

Keyboard/Mouse and PlayStation/Xbox gamepads are supported.

Action Input
Launch game (menu) Mouse Left / Gamepad South
Show controls (menu) Mouse Right / Gamepad West
Toggle pause overlay Esc / Gamepad Start
Back to menu Overlay: Menu / M / Gamepad Select
Restart current game Overlay: Restart / R
Quit application Overlay: Quit / Alt + F4 / โŒ˜ + Q
Screenshot window Ctrl + Shift + S โ†’ Content/Screenshots/

๐Ÿ“ธ Screenshots


Overview of the 18 Games built with the Engine

๐Ÿ“œ License

This project is licensed under the terms of the MIT License.


ยฉ 2025 Adel Hales