Brewing-Team / Coffee-Engine

A little game engine brewed for learning how to brew a game engine!
https://brewing-team.github.io/Coffee-Engine/
MIT License
2 stars 0 forks source link

Coffee Engine

Publish Documentation

Coffee Engine is a Beautiful and Cross-platform 3D Game Engine written in C++ using OpenGL and SDL3.

[!IMPORTANT] This is a university project for learning how to make a 3D game engine.


Getting Started

Any IDE or Text Editor that supports CMake Projects (and vcpkg) should work for developing the project.

Building

1. Clone the repository

git clone --recursive https://github.com/Brewing-Team/Coffee-Engine.git
cd Coffee-Engine

2. Compilation

Windows There are a lot of ways to do it. From installing all the necessary packages for building it (cmake, vcpkg, a compiler...), to using a IDE environment. My recomendation is to use an IDE environment if what you want is an straightforward way to compile the project. #### Instructions to compile the project using an IDE ##### Visual Studio 2022 1. Open the folder with Visual Studio 2022 2. Enable vcpkg integration. More info at https://devblogs.microsoft.com/cppblog/vcpkg-is-now-included-with-visual-studio. 3. Reconfigure the cmake project. If the output panel display something like ```running vcpkg install``` then you are ready to go to the next stage. 4. Wait until all the dependencies are installed by vcpkg. Then select on the top play button the Coffee-Editor.exe and run it. 5. Go to the "bin/Coffee-Engine/" folder 6. Congratulations! You have built Coffee-Engine for the first time! ##### CLion 1. Open the folder with CLion 2. ...
Linux #### 1. Install vcpkg ##### Clone vcpkg ``` git clone https://github.com/microsoft/vcpkg.git cd vcpkg ``` ##### Run the bootstrap ``` ./bootstrap-vcpkg.sh ``` ##### Enable the vcpkg instance ``` ./vcpkg integrate install ``` > Sometimes this will not automatically add the VCPKG_ROOT environment variable! ##### For more info take a look at https://learn.microsoft.com/en-us/vcpkg/get_started/get-started?pivots=shell-powershell #### 2. Build ``` mkdir build && cd build cmake .. -DCMAKE_BUILD_TYPE=Release make -j $(nproc) CoffeeEditor ``` #### 3. Enjoy! ``` cd ../bin/CoffeeEditor/Release ./CoffeeEditor ```

Features (WIP)

[!WARNING] This is outdated, please Brewing-Team update it!

  • [x] Compatible with Windows and Linux.
  • [x] 3D Rendering
  • [x] Textures
  • [x] Materials
  • [x] Shaders
  • [x] PBR Rendering
  • [x] Lights
  • [ ] Environment
  • [x] Scene System
  • [x] Scene Tree
  • [x] ECS System
  • [x] Model Loading
  • [x] Editor
  • [ ] Save And Loading

Screenshots


Acknowledgements

This project makes use of several open-source libraries and resources that have greatly contributed to its development. Special thanks to the creators and maintainers of the following: