[!NOTE] This is one of 190 standalone projects, maintained as part of the @thi.ng/umbrella monorepo and anti-framework.
🚀 Please help me to work full-time on these projects by sponsoring me on GitHub. Thank you! ❤️
WebGL & GLSL abstraction layer.
Largely declarative WebGL 1.0 / 2.0 abstraction layer, partially ported & updated from Clojure/ClojureScript versions of thi.ng/geom.
STABLE - used in production
Search or submit any issues for this package
yarn add @thi.ng/webgl
ES module import:
<script type="module" src="https://cdn.skypack.dev/@thi.ng/webgl"></script>
For Node.js REPL:
const webgl = await import("@thi.ng/webgl");
Package sizes (brotli'd, pre-treeshake): ESM: 11.65 KB
Several projects in this repo's /examples directory are using this package:
Screenshot | Description | Live demo | Source |
---|---|---|---|
Shader-AST meta-programming techniques for animated function plots | Demo | Source | |
Evolutionary shader generation using genetic programming | Demo | Source | |
HOF shader procedural noise function composition | Demo | Source | |
WebGL & JS canvas2D raymarch shader cross-compilation | Demo | Source | |
WebGL & JS canvas 2D SDF | Demo | Source | |
WebGL & Canvas2D textured tunnel shader | Demo | Source | |
Minimal shader graph developed during livestream #2 | Demo | Source | |
Entity Component System w/ 100k 3D particles | Demo | Source | |
rdom & WebGL-based image channel editor | Demo | Source | |
WebGL multi-colored cube mesh | Demo | Source | |
WebGL cube maps with async texture loading | Demo | Source | |
Drawing to floating point offscreen / multi-pass shader pipeline | Demo | Source | |
Game of Life implemented as WebGL2 multi-pass shader pipeline | Demo | Source | |
WebGL instancing, animated grid | Demo | Source | |
WebGL MSDF text rendering & particle system | Demo | Source | |
Minimal multi-pass / GPGPU example | Demo | Source | |
Shadertoy-like WebGL setup | Demo | Source | |
WebGL screenspace ambient occlusion | Demo | Source | |
Interactively drawing to & reading from a WebGL offscreen render texture | Demo | Source |
TODO
If this project contributes to an academic publication, please cite it as:
@misc{thing-webgl,
title = "@thi.ng/webgl",
author = "Karsten Schmidt and others",
note = "https://thi.ng/webgl",
year = 2014
}
© 2014 - 2024 Karsten Schmidt // Apache License 2.0
Generated using TypeDoc