Math library using HLSL syntax with multiplatform SIMD support
1.1k
Stars
68
Forks
15
Open issues
8
Contributors
AI Analysis
HLSL++ is a header-only C++ math library that replicates HLSL shading language syntax with multiplatform SIMD support (SSE/AVX/NEON/WASM), enabling game developers and graphics programmers to write identical math code in both shaders and C++ without translation. It is best suited for game development, graphics applications, and performance-critical math work where shader-CPU math parity matters; general-purpose C++ developers without graphics backgrounds will find it over-specialized.
Inferred from signals mentioned in the README (tests, CI, type safety) — not a review of the actual code.
AI's overall editorial judgment — not an average of the bars above, can weigh other factors too.
HLSL-syntax math library with multiplatform SIMD, targeting game developers and graphics code
HLSL++ is a header-only C++ math library that mirrors HLSL shading language syntax, offering swizzling, vector/matrix operations, and multi-platform SIMD support (SSE, AVX, NEON, WASM). Built explicitly to bridge C++ and shader code with familiar syntax. Used primarily by game developers and graphics engineers. Adoption appears concentrated but not publicly documented at scale; growth is steady but modest.
Project created January 2017. Evolved from a practical need to unify shader and C++ math code syntax. Maintained by a single primary contributor (redorav). Slowly accumulated 1,113 stars over 9 years, indicating sustained niche interest rather than viral adoption.
Growth has been linear and slow: 1 star in last 7 days suggests mature, stable adoption rather than acceleration. The library appears to have found its audience in graphics/game development but has not expanded significantly beyond that domain. No evidence of major adoption announcements or inflection points.
Adoption not verified. No case studies, known production deployments, or large-scale user testimonials mentioned in README. The niche (game developers, graphics engineers) is credible and aligned with library purpose, but concrete real-world usage is not documented. Stars and forks are modest but non-negligible for a specialized library.
Header-only C++ library with conditional compilation for multiple SIMD backends (SSE/AVX/AVX2/AVX512, NEON, WASM, scalar fallback). Based on README, appears to use anonymous unions for swizzling and platform-specific intrinsics. Includes specialized features like quaternions, data packing, and extended vectors (float8). Interoperability layer provided for shader constant buffer compatibility.
Not documented in README. CI pipeline visible (AppVeyor badge present), suggesting some automated testing exists, but scope and coverage metrics not disclosed.
Last commit May 24, 2026 (36 days before evaluation date), indicating active maintenance. Project is 9 years old with consistent, if infrequent, updates. No evidence of abandonment. Appears well-maintained for a niche library, though update frequency cannot be assessed from metadata alone.
ADOPT IF: you are a game or graphics developer who values HLSL syntax parity in C++ and need multiplatform SIMD (PC, Mac, console, mobile, web). Header-only integration and natvis debugging support reduce friction. AVOID IF: you need production-proven ecosystem, extensive documentation, or active community support; adoption is not publicly documented and project size is small. Also avoid if you require HLSL feature completeness beyond math—this is CPU-side only. MONITOR IF: you are a mid-scale graphics team considering long-term tooling—the library is actively maintained and solves a real problem, but remaining a single-contributor project creates concentration risk.
Independent dimensions
Mainstream potential
3/10
Technical importance
7/10
Adoption evidence
2/10
- Single primary maintainer (redorav) creates sustainability risk; project depends on one person's continued availability.
- Adoption not publicly documented—difficult to assess whether real-world usage is 5 studios or 500; risk of appearing more isolated than it is or vice versa.
- Compile-time cost acknowledged in README; scalability to very large codebases unknown.
- Interoperability layer adds complexity for shader constant buffer layouts; errors in usage could silently produce incorrect GPU uploads.
- No evidence of formal testing, benchmarking, or performance validation in README; correctness and performance claims unverified.
Likely to remain a stable, niche tool for graphics developers who value HLSL parity. Gradual slow growth is sustainable but unlikely to break into mainstream. Significant risk if maintainer loses availability; upside if game engines (Unreal, Unity) adopt as recommended math layer, though no evidence of this momentum.
Explore similar
Newsletter
Get analyses like this every Monday
Free weekly digest of the most interesting open-source discoveries.
Languages
Information
- Language
- C++
- License
- MIT
- Last updated
- 2mo ago
- Created
- 115mo ago
- Analyzed with
- anthropic/claude-haiku-4-5
Stars over time
Contributors over time
Top 100 contributors only — repos with more will plateau at 100.
Open issues
Open pull requests
CMake integration.
Merge pull request #1 from redorav/master
Make RISC-V use the scalar fallback ## Summary - recognize `riscv64` explicitly in `include/hlsl++/config.h`; - force `riscv64` onto the existing scalar backend instead of inheriting host SSE detection.
Recent releases
Similar repos
| Repository | Stars | Week Δ | Language | Score | Updated |
|---|---|---|---|---|---|
|
|
1.1k | — | C++ | 8/10 | 2mo ago |
|
|
1.8k | — | C++ | 8/10 | 20h ago |
|
|
5.7k | — | C++ | 8/10 | 21h ago |
|
|
6.6k | — | C++ | 8/10 | 15h ago |
|
|
5.4k | — | C++ | 8/10 | 8h ago |
|
|
1.4k | — | C++ | 7/10 | 21h ago |
Larger ecosystem (1783 stars), vendor-backed, Windows/Xbox native. HLSL++ offers multiplatform SIMD and HLSL syntax parity, but DirectXMath has institutional adoption. Not directly substitutable—different niches (graphics vs. broader math).
Broader SIMD abstraction layer (5650 stars). Highway targets portable SIMD across many domains; HLSL++ specializes in graphics math with shader syntax. Different scope—highway is infrastructure, HLSL++ is domain-specific.
GLM is de facto standard for graphics math in C++. HLSL++ offers closer HLSL parity and extended types (float8); GLM offers broader ecosystem maturity and documentation. Direct competitor in graphics space, but GLM appears to hold dominant position.
Slang is a shader compilation and interop framework (5402 stars). HLSL++ is CPU-side math only. Complementary rather than competitive—Slang may call HLSL++ math, but not a direct alternative.
EVE is SIMD abstraction with functional programming style (1353 stars). Similar star count to HLSL++, but different design philosophy. EVE targets general compute; HLSL++ targets graphics. Both are niche but distinct.