Skip to content

An under development C++ static library to build simple games.

License

Notifications You must be signed in to change notification settings

shubha360/Evolve-Engine

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

52 Commits
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

Evolve-Engine

This is a C++ static library to build simple 2D games. This engine is currently under development. It uses SDL2 as its windowing API and GLEW to access OpenGL 3.3 as its graphics API.

Disclaimer: This engine might not offer the highest efficiency when considering performance.

This project takes inspiration from these learning materials - MakingGamesWithBen, LazyFoo's Tutorials, The Cherno

Currently Supported Features

  • Necessary 2D game features like image loading, input processing, 2D camera, etc.

  • FPS counting and limiting.

  • Font loading from font files (TTF, OTF, etc) and 16 x 16 bitmap font files.

  • Simple GUI creation (buttons and plain text).

  • Adding music and sound effects.

Dependencies

  • SDL 2.28.3

  • GLEW 2.1.0

  • opengl32

  • GLM 1.0.0

  • FreeType 2.13.2

  • stb_image 2.29

  • SDL Mixer 2.8.0

How To Use

For use in Visual Studio on both 32-bit and 64-bit Windows systems, you can download the pre-built library bundled with the additional dependencies from here.

Else, this can be used in one of 2 ways -

  • By copying all the code files into the main project. This approach prevents the complexity of building the library but makes the project messy with many files.

  • By building this as a C++ static library without any precompiled headers. This approach will prevent unnecessary messiness.

Either way, the dependencies stated above should already be installed in the system.

Please get in touch with me at shubha360@outlook.com if you're having trouble using it. I intend to convert it to a CMake project in the future.

Games Created Using This Engine

This project is licensed under the MIT License. You are welcome to make or propose any changes or improvements.