Skip to content

gestaltdevstudio/2DGameStarter

Repository files navigation

2D Game Starter

2D Game Starter is a Initial Game Code created in C++ from scratch, with some basic LIBs - often presents in game engines: GLFW, GLAD, GLM, OpenAL, LibZIP, OGG and Vorbis.

Main Concepts:

Class Description Files Status TODO
ResourcesManager Read and manage any asset of the game and create the struct fileResource with attributes fileName, fileSize and content (void *) Resources.h
Resources.cpp
Read files from filesystem by name Read files from zip files
GraphicsManager Manager of the Images as Sprites, Debug Squares and UI objects Graphics.h
Graphics.cpp
OpenGL renderer DirectX renderer
InputSystem Manager of the Input for Desktop InpusSystem.h
InpusSystem.cpp
Done
OS Manager of the Operating System Window, Events, Gamepads integration, Touch detection... Desktop
OS_GLFW.h OS_GLFW.cpp
Android
OS_Android.h OS_Android.cpp
iOS
OS_iOS.h OS_iOS.cpp
Working for Linux64, Win32, MacOS, Android and iOS
Definitions Global definitions, structures and some static functions Definitions.h
FontFile Parser LibGDX Hiero Font Parser (Bitmap) Font.h
Font.cpp
Done
TextureAtlas Parser LibGDX TextureAtlas File parser TextureAtlas.h
TextureAtlas.cpp
Done. Just limited to unrotated images

Building

Linux & MacOS
Requires CMake 2.6+

$ git clone https://github.com/gestaltdevstudio/2DGameStarter.git 
$ cd 2DGameStarter/desktop
$ mkdir build
$ cd build
$ cmake ..
$ make

Windows
Requires CMake 2.6+ and Visual Studio

  1. Clone the project from git and create the "build" directory

    ...\> git clone https://github.com/gestaltdevstudio/2DGameStarter.git 
    ...\> cd 2DGameStarter\desktop
    ...\desktop> mkdir build
    
  2. Open CMake GUI

  3. Select the Source Code folder: "... \2DGameStarter\desktop"

  4. Select the Build folder: "... \2DGameStarter\desktop\build"

  5. Click on Configure button

  6. Select the Visual Studio version installed and click on Finish button

  7. Click on Generate Button

  8. When finished click on Open Project

  9. Right click on Starter project and select Set as Startup Project.

  10. Now you can run the project.

Android
Just import the Git project from Android Studio

iOS
Requires the Xcode 9.4.1 (9F2000) +

$ git clone https://github.com/gestaltdevstudio/2DGameStarter.git 

Just open the project: .../2DGameStarter/iOS/Starter/Starter.xcodeproj

Motivation and Manifest

This project was created to consolidate some ideas and concepts used in Gestalt Dev Studio games. You can start your game cloning this .git or just taking some classes, pieces of code, or concepts from here to make your own game engine, which I recommend, because this project represents one way of thinking, not the right way, or the way you'll be more confortable to work with!

Why so simple or why "to reinvent the wheel"? The main objective here is to generate conscience of what you are doing, or extending from other devs. Every little step you do results in a layer that you can enjoy and go up to the next level and so on.

Special Thanks

Also thank you for being here!

Was this helpful?

Support my work -> https://www.patreon.com/nardelli

About

No description, website, or topics provided.

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published