Tiling simplex flow noise functions for 2D and 3D graphics, compatible with GLSL 1.20+ and WebGL 1.0.
psrdnoise is a library of tiling simplex flow noise functions for 2D and 3D graphics programming. It provides high-quality procedural noise generation with seamless tiling capabilities, solving the problem of creating continuous, non-repetitive patterns in shader-based graphics. The implementation is compatible with multiple shader languages and designed to avoid historical patent restrictions.
Graphics programmers, shader developers, and game engineers working with WebGL, GLSL, or other real-time graphics APIs who need procedural noise for textures, terrain, or visual effects.
Developers choose psrdnoise for its cross-API compatibility, patent-free implementation, and academic rigor. It offers reliable tiling noise functions that work seamlessly across GLSL, WebGL, WGSL, and HLSL environments.
Tiling simplex flow noise in 2-D and 3-D compatible with GLSL 1.20 (WebGL 1.0) and above.
Open-Awesome is built by the community, for the community. Submit a project, suggest an awesome list, or help improve the catalog on GitHub.
Provides 2D and 3D simplex flow noise functions that tile perfectly, eliminating visible seams in procedural textures, as demonstrated in the WebGL examples on the Github Pages site.
Supports GLSL 1.20+, WebGL 1.0, WGSL, and HLSL, with ports available in the repository, making it versatile for cross-platform graphics development.
Includes a 2D variant optimized for mediump 16-bit float precision, catering to performance on mobile and WebGL environments with limited precision.
Avoids historical simplex noise patents with independently developed methods, ensuring legal safety as noted in the README's discussion on patent expiration.
Based on peer-reviewed research published in the Journal of Computer Graphics Techniques, providing technical credibility and robust algorithm design.
The WGSL and HLSL ports have minimal testing, as admitted in the README, which could lead to bugs or inconsistencies in non-GLSL environments.
Only 2D noise has a mediump-compatible version; 3D support is described as 'tricky' and not yet available, limiting use for 3D graphics on precision-constrained platforms.
Documentation is primarily academic and example-based, with limited beginner-friendly tutorials or integration guides for common engines beyond basic WebGL examples.