Skip to content

JonahGoldsmith/Starlight

Repository files navigation


Logo

StarlightEngine

Modern Game Engine Written in C/C++ and Documented Through Youtube Videos! The Goal of this Project is to create an Innovative and Efficient Game Engine And To Teach Others How To Do The Same!


View Demo · Report Bug · Request Feature

Table of Contents
  1. About The Project
  2. Getting Started
  3. Usage
  4. Roadmap
  5. Contributing
  6. License
  7. Contact
  8. References and Contributions

About The Project

Game Engine Built From the Ground Up With Extensibility in Mind!

With The Goal to Compile in C or C++, and Only use the Features That You Need!

(back to top)

Getting Started

This project is in its baby stages so only use it for learning or for aiding development!

Prerequisites

Must have Cmake, and a C/C++ Compiler

We are Prioritizing Support for Clang, GCC, and MSVC. I Want to Support MINGW and other Compilers but I am not Familiar with the Platforms

Installation

  1. Clone The Repository and Run CMake to Build.

  2. Or You Can Include the Project as a Subdirectory and use the Base Libraries in your own Project!

(back to top)

Usage

After Installation Run the Testbed Project To Start Up The Engine! Usage Examples of the Base Library Will be Included in the Testbed and Testing Projects

(back to top)

Roadmap

  • Entity Component System, Capable of Defining Components and Systems from DLL Plugins
  • Modern Renderer
    • Backend Support for Vulkan, Direct3D12, and Metal
  • Task System For Background Tasks not run by Fiber Job System

See the open issues for a full list of proposed features (and known issues).

(back to top)

Contributing

Contributions are what make the open source community such an amazing place to learn, inspire, and create. Any contributions you make are greatly appreciated.

If you have a suggestion that would make this better, please fork the repo and create a pull request. You can also simply open an issue with the tag "enhancement". Don't forget to give the project a star! Thanks again!

  1. Fork the Project
  2. Create your Feature Branch (git checkout -b feature/AmazingFeature)
  3. Commit your Changes (git commit -m 'Add some AmazingFeature')
  4. Push to the Branch (git push origin feature/AmazingFeature)
  5. Open a Pull Request

(back to top)

License

Distributed under the MIT License. See LICENSE.txt for more information.

(back to top)

Contact

Jonah Goldsmith LinkTree - @jonahmgoldsmith - Click For More Links!

Project Link: Starlight

(back to top)

Acknowledgments

About

Modern and Innovative Game Engine Written in C/C++

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published