/MethaneExternals

Methane Kit external libraries and tools in linked repositories or prebuilt binaries and headers.

Primary LanguageC++

Methane Externals

Warning This is an archived repository, which was previously used for external dependencies of Methane Kit project in form of submodules, currently migrated to CPM.cmake.

Methane Kit external libraries and tools in form of:

  • 📘 static library sources in Git submodule
  • 📗 header-only library in Git submodule
  • 📙 static library sources copy
  • 📕 pre-built dynamic library binaries
  • 📜 small static or header-only library sources copy
  • 🔨 build tool binaries

CMake Modules

  • 📗 CMRC - resource compiler in a single CMake script
  • 📗 CMakeModules - RPavlik collection of CMake modules
  • 📜 CMakeExtraModules - additional CMake modules

Shader Build Tools & Libraries

  • 🔨 SPIRV-Cross - tool binary for performing reflection on SPIR-V from bytecode to Metal shaders (prebuilt executable)
  • 🔨 DirectXCompiler - cross-platform DirectX Shader Compiler to convert HLSL to DXIL on Windows and HLSL to SPIRV on MacOS (prebuilt command line executables and libraries)
  • 📜 D3DCompilerToDXC - static library from DirectXShaderCompiler providing functions to bridge from d3dcompiler_47 to dxcompiler

Math Libraries

  • 📗 HLSL++ - math library using HLSL syntax with SSE/NEON support
  • 📙 PerlinNoise - improved Perlin Noise implementation by Stefan Gustavson

Parallel Execution

  • 📗 TaskFlow - modern C++ parallel task programming library

Common Utilities

  • 📘 BoostNowide - standard library functions with UTF-8 API on Windows (does not require Boost dependency)
  • 📘 FMT - modern string formatting library
  • 📗 MagicEnum - static reflection for enums for modern C++
  • 📗 CLI11 - header only command line parser for C++11 and beyond

Resources Loading Libraries

  • 📘 FreeType2 - software library to render fonts
  • 📗 STB - stb_image header is used for loading JPEG images to textures
  • 📕 OpenImageIO - additional library used for loading of wide range of image formats via native loaders (optional dependency)

DirectX Libraries

Vulkan Libraries

  • 📗 Vulkan-Headers - Vulkan Header files and API registry
  • 📘 SPIRV-Cross - tool and library for performing reflection on SPIR-V and disassembling SPIR-V back to high level languages.

Testing, Profiling and Instrumentation

  • 📗 Catch2 - header only unit-testing framework
  • 📗 IttApi - Intel Instrumentation and Tracing Technology (ITT) and Just-In-Time (JIT) API
  • 📘 Tracy - Tracy realtime frame profiler
  • 🔨 Tools/OpenCppCoverage - open source code coverage tool for C++ under Windows (binaries archive)