Open-Awesome
CategoriesAlternativesStacksSelf-HostedExplore
Open-Awesome

© 2026 Open-Awesome. Curated for the developer elite.

TermsPrivacyAboutGitHubRSS
  1. Home
  2. Creative Coding
  3. Lygia

Lygia

NOASSERTIONGLSL1.4.1

A granular, multi-language shader library for real-time graphics, supporting GLSL, HLSL, Metal, WGSL, and CUDA.

Visit WebsiteGitHubGitHub
3.4k stars222 forks0 contributors

What is Lygia?

LYGIA is a granular and multi-language shader library designed for performance and flexibility in real-time graphics. It provides reusable functions across GLSL, HLSL, Metal, WGSL, and CUDA, enabling developers to prototype, port, and ship projects quickly. The library is battle-tested, cross-platform, and integrates with major engines and frameworks.

Target Audience

Graphics programmers, game developers, creative coders, and visual artists working with shaders in environments like Unity, Unreal Engine, Three.js, p5.js, and other real-time graphics platforms.

Value Proposition

Developers choose LYGIA for its extensive, granular function library that supports multiple shading languages out of the box, reducing boilerplate and accelerating shader development. Its flexibility and wide integration ecosystem make it a versatile tool for cross-platform graphics projects.

Overview

LYGIA, it's a granular and multi-language (GLSL, HLSL, Metal, WGSL, WEGL and CUDA) shader library designed for performance and flexibility

Use Cases

Best For

  • Rapid prototyping of visual effects in shader-based projects
  • Porting shaders between different graphics APIs and languages
  • Building real-time graphics applications with cross-platform support
  • Enhancing creative coding workflows in environments like p5.js or Processing
  • Developing custom shaders for game engines like Unity or Unreal Engine
  • Creating visual content for interactive installations or live performances

Not Ideal For

  • Projects relying on visual shader editors like Unity Shader Graph or Unreal's Material Editor that don't support custom GLSL includes
  • Applications with ultra-strict real-time performance requirements where shader compilation overhead must be minimized
  • Teams developing for a single graphics API who prefer native, engine-specific shader tools over a multi-language library

Pros & Cons

Pros

Multi-Language Support

Functions are available in GLSL, HLSL, Metal, WGSL, WEGL, and CUDA, enabling easy porting across different graphics APIs as highlighted in the key features.

Granular Function Design

Each file contains a single function, allowing developers to include only necessary code for performance optimization, as described in the library's philosophy.

Extensive Engine Integrations

Ready-to-use examples and integrations for Unity, Unreal Engine, Three.js, p5.js, and more, demonstrated in the gallery of supported platforms.

Flexible Configuration

Behavior can be customized using #define keywords before inclusion, such as changing Gaussian blur to 2D kernel mode, as shown in the design examples.

Cons

Complex Setup Process

Local usage requires configuring the environment to resolve #include dependencies, with multiple methods like cloning, submodules, or pruning that can be confusing for newcomers.

Restrictive Licensing Model

Dual-licensed under the Prosperity License and Patron License, requiring sponsorship or contributions for commercial use, which adds legal complexity compared to permissive licenses.

Server Dependency for Cloud

Cloud-based projects must use the LYGIA server for dependency resolution, introducing potential latency and reliability issues, as noted in the server usage section.

Frequently Asked Questions

Quick Stats

Stars3,391
Forks222
Contributors0
Open Issues19
Last commit4 months ago
CreatedSince 2021

Tags

#cuda#real-time-graphics#library#opengl#metal#wgsl#directx#game-development#shader#glsl#webgl#hlsl#cross-platform#graphics-programming

Links & Resources

Website

Included in

Creative Coding14.7k
Auto-fetched 6 hours ago

Related Projects

Canvas-sketchCanvas-sketch

[beta] A framework for making generative artwork in JavaScript and the browser.

Stars5,273
Forks402
Last commit1 month ago
Fragment.toolsFragment.tools

[alpha] A modern toolkit for creative coding

Stars933
Forks25
Last commit23 days ago
PixelKitPixelKit

Live Graphics in Swift & Metal

Stars892
Forks67
Last commit3 years ago
AsyncGraphicsAsyncGraphics

Edit images and video with Swift concurrency, powered by Metal.

Stars418
Forks21
Last commit21 days ago
Community-curated · Updated weekly · 100% open source

Found a gem we're missing?

Open-Awesome is built by the community, for the community. Submit a project, suggest an awesome list, or help improve the catalog on GitHub.

Submit a projectStar on GitHub