Skip to content

SDL-Brick-Breaker is a remake of the original Brick Breaker arcade game, written in C with SDL.

License

Notifications You must be signed in to change notification settings

joshuacrotts/brick-breaker

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

82 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

Brick Breaker

CodeFactor GitHub contributors GitHub commit activity GitHub repo size GitHub issues open GitHub issues closed

Brick Breaker is a remake of the original arcade Arkanoid, Breakout, or Brick Breaker (depending on which version that you have seen). Using my Standards library as a framework, combined with SDL, I decided to remake one of my oldest projects in C nonetheless. Everything here is written from scratch, including the data structures and algorithms. The only unoriginal parts are the sound effects/music, the bricks/balls, and the background. Viola Crotts drew the life graphic, the various powerup animations, the ball, and paddle. Everything else is from an assets package I purchased.

Dependencies

In the /lib/ directory is my Standards library, converted to C. This, unlike the Java version, does not have an external component (such as a .JAR file). So, the Standards files are simply copied from that project to this one. There are, however, SDL dependencies.

If you want to run the game, just download the runtime binaries at the provided links below. Conversely, if you wish to build the project, you will need to grab the development libraries for your system. For my purposes, I used the MinGW versions.

  1. SDL TTF Library (sdl_ttf)
  2. SDL Image-Loading Library (sdl_image)
  3. SDL Audio Library (sdl_mixer)

Rebuilding Brick Breaker

Windows: To rebuild the code, clone the repository to your computer. This project is compiled with MinGW and a makefile. The SDL .dll files are not included and will need to be downloaded separately to build from source without modifications to the makefile. Compile the code via mingw32-make.

MacOS: For MacOS, run the following commands in your terminal to get the appropriate development files for SDL:

  1. brew install SDL2
  2. brew install SDL2_image
  3. brew install SDL2_ttf
  4. brew install SDL2_mixer

Then, compile via make.

Linux (Ubuntu/Debian): The process is similar to the former, with the exception of having to install SDL files to your system in Linux. Run the following commands (or their distro-equivalent) in your terminal:

  1. sudo apt-get install libsdl2-dev
  2. sudo apt-get install libsdl2-image-dev
  3. sudo apt-get install libsdl2-ttf-dev
  4. sudo apt-get install libsdl2-mixer-dev

Then, compile via make.

Reporting Bugs

See the Issues Tab.

Version History

The master branch encompasses all significant changes. The development branch is used for in-progress modifications.

Code Quality Note (03/07/2022): I recognize that this repository has some very bad code, like shockingly bad. It produces large memory leaks and is generally just a poor representation of what C programming ought to be. So, while this may be a cool game, it is far from well-designed (despite what I thought two years ago when I wrote the game).

About

SDL-Brick-Breaker is a remake of the original Brick Breaker arcade game, written in C with SDL.

Topics

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published