Skip to content

Engine focused around being modular and data-oriented design principles, allowing for highly multithreaded and low-latency data processing for VR/XR environments.

License

StableCoder/foe-engine

Repository files navigation

FoE-Engine

pipeline status license

External Libraries

  • Assimp - An open-source mesh loading/saving library for many formats.
  • Bullet Physics - Physics simulation for games, visual effects, robotics and reinforcement learning.
  • CLI11 - A command line parser for C++11 and beyond that provides a rich feature set with a simple and intuitive interface.
  • Dear ImGui - Easy to use immediate mode UI.
  • FreeImage - Library for loading/saving and working on images.
  • fmt - Library for excellent string formatting.
  • GLFW - An Open Source, multi-platform library for OpenGL, OpenGL ES and Vulkan development on the desktop. It provides a simple API for creating windows, contexts and surfaces, receiving input and events.
  • glm - A header only C++ mathematics library for graphics software based on the OpenGL Shading Language (GLSL) specifications.
  • GPUOpen Vulkan memory Allocator - A Vulkan Memory Allocation helper library. License: MIT.
  • libevent - The libevent API provides a mechanism to execute a callback function when a specific event occurs on a file descriptor or after a timeout has been reached. Furthermore, libevent also support callbacks due to signals or regular timeouts.
  • libsodium - A modern, easy-to-use software library for encryption, decryption, signatures, password hashing, and more.
  • OpenXR - VR/XR API
  • Vulkan - Graphics API
  • yaml-cpp - Library for easy read/write for Yaml data.

macOS Environment Setup

For the Vulkan/MoltenVK, get the VulkanSDK from LunarG.

For everything else, use Homebrew and get the following:

brew install assimp bullet cmake catch2 freeimage fmt glfw glm libevent libsodium yaml-cpp