Skip to content

fatmap v0.9.1

Latest

Choose a tag to compare

@github-actions github-actions released this 02 Oct 05:44

fatmap 0.9.1: 0.9.0 (a SPIR-V JIT and SIMD texture sampling) with the version macros and fm_version_string taken from the build (0.9.0's packages reported 0.8.0).

Highlights

  • SPIR-V JIT to x86 machine code (x86-64 and x86-32, AVX2 / AVX-512, 16 lanes per pass), bit exact with the interpreter; the default for SPIR-V programs (fm3d_spirv_set_jit, FM_JIT=0 for the interpreter)
  • AVX2 and AVX-512 quad samplers over packed mip levels (trilinear, every wrap mode, the same bits as the scalar path)
  • Fragment stages may interpolate their varyings and pack their colors themselves (fm3d_program.interpolates / packs_color); the JIT does both
  • MSAA: color masks and occlusion counts work with MSAA, depth / stencil are resolved into the targets
  • Faster GL_ONE / GL_ONE blending, masked AVX2 tails, AVX2 straight_f, one TLS lookup per batch
  • Doom 3 BFG light interactions through fatgl (1280x720): 871 -> ~148 ms on one thread, 60.8 -> ~10 ms on 32 (Mesa llvmpipe: 133 / 11.0); see docs/PERF.md

Static library packages for C and C++ (headers, library, pkg-config and CMake package files).

platform archive
windows-x64-mingw fatmap-0.9.1-windows-x64-mingw.zip
windows-x64-msvc fatmap-0.9.1-windows-x64-msvc.zip
windows-x86-msvc fatmap-0.9.1-windows-x86-msvc.zip
linux-arm64 fatmap-0.9.1-linux-arm64.tar.gz
linux-x64 fatmap-0.9.1-linux-x64.tar.gz
macos-arm64 fatmap-0.9.1-macos-arm64.tar.gz
macos-x64 fatmap-0.9.1-macos-x64.tar.gz

CMake: find_package(fatmap) then link fatmap::fatmap (C) or fatmap::fatmapxx (C++), with -DCMAKE_PREFIX_PATH=<unpacked dir>.
Meson / pkg-config: dependency('fatmap') with --pkg-config-path <unpacked dir>/lib/pkgconfig.
Details: docs/PACKAGING.md