GithubHelp home page GithubHelp logo

ignacioveiga / arkapong Goto Github PK

View Code? Open in Web Editor NEW
0.0 1.0 0.0 39.85 MB

[PRE-ALPHA] Arkanoid+Pong game with C/C++ and SDL2

C 1.06% C++ 96.02% CMake 2.92%
cpp pong-game retrogaming sdl2 sdl2-mixer sdl2-ttf arkanoid-game famicom nes taito breakout-game

arkapong's Introduction

ArkaPong (pre-alpha)

ArkaPong is a hybrid game combining the classic "Arkanoid" (from NES) with "Pong". This game is being developed from scratch in C++ using SDL2 libraries. It is currently in pre-alpha stage and requires structural improvements. It should be compatible with Windows and any Linux distribution.

Features (planned)

  • Classic Arkanoid and Pong gameplay elements
  • Single-player and multiplayer
  • Power-ups and special abilities
  • Multiple levels and game modes

Arkanoid

Arkanoid

PONG

PONG

ArkaPong

pre-alpha_ArkaPong_gameplay

Prerequisites

  • Git (optional)
  • CMake (not required for Windows)
  • Libraries:
  • A compiler for C++ 17.
    • Windows: MSVC v143-VS 2022
    • Linux: GCC, Clang or any compatible with CMakeLists.txt.
  • On Windows you can use VCPKG to download SDL2 packages.

Build

  1. Download source code or clone the repository with Git

    git clone https://github.com/IgnacioVeiga/ArkaPong.git
    cd ArkaPong
    • Linux: Use CMake (check the CMakeLists.txt file) and run:
    cmake -B build
    cmake --build build
    • Windows: Use Microsoft Visual Studio 2022 to build and run.
  2. Finally check the build folder, the executable should be accompanied by the “assets” folder in order to run.

Additional Notes

If you use Visual Studio Code, you can configure CMake Tools to handle presets and simplify the configuration and compilation process.

Cleaning the project

To remove all files generated by CMake build, simply delete the build directory. Microsoft Visual Studio 2022 already has a clean function.

Contributing

I'm very new to C/C++, so any contributions are welcome. Please fork the repository and create a pull request with your changes.

"ECS" version

I'm working on implementing the Entity Component System design pattern, for this I'm basing my work on this post by Austin Morlan: https://austinmorlan.com/posts/entity_component_system/

arkapong's People

Contributors

ignacioveiga avatar

Watchers

 avatar

arkapong's Issues

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.