An open API service indexing awesome lists of open source software.

https://github.com/imjuniper/flibbert-engine

Read-only mirror of my own git repo
https://github.com/imjuniper/flibbert-engine

cpp game-engine opengl

Last synced: about 2 months ago
JSON representation

Read-only mirror of my own git repo

Awesome Lists containing this project

README

          

# Flibbert Engine

Flibbert is basically a small framework/engine that I'm working on to learn game engine development, rendering, C++, etc. I started working on it for a class in my game development program. It's a fun learning experience.

## Requirements

- A system that supports OpenGL 4.6
- [CMake 3.31+](https://cmake.org/)
- A C++ compiler supporting C++23 (Clang & MSVC have been tested)

## Current features

- OpenGL rendering backend, with abstractions
- Dear ImGui for UI
- 3D Camera
- Input/event system

## Usage

### Building

Open your terminal and list the available CMake presets using `cmake --list-presets all`, then run the following commands using your chosen presets:

```pwsh
cmake --preset [your-configure-preset]
cmake --build --preset [your-build-preset]
```

### Running

Once built, you can run the `Sandbox[.exe]` executable in the `Binaries/{CONFIG}` folder. The `assets` folder is a symlink to `{PROJECT_DIR}/Sandbox/src/assets` so that they are available from the working directory.

### Packaging

A very barebones CPack config has been added to the Sandbox app. The available package presets can be listed with `cmake --list-presets package`. To package the projets run the following:

```pwsh
cpack --preset [your-package-preset]
```