Wayland Shader Demo
A lightweight, interactive shader playground built with C++, Wayland, and OpenGL ES 2.0.
Features
🌌 Interactive Fractals
- Deep Zoom Mandelbrot: Features an Infinite Zoom engine using Perturbation Theory (CPU computes 128-bit reference orbit, GPU renders delta). Zoom level up to
10^{34}! - Customizable: Use the sidebar sliders to adjust the Exponent (create "Multibrots") and morph the set with Julia offsets (
C_{real},C_{imag}). - Fractal Explorer: Standard fractal shaders included.
🧪 Physics & Simulations
- Fluid Dynamics: Real-time interactive fluid simulation (mouse drag to swirl).
- Reaction Diffusion: "Living" texture simulation (Gray-Scott model).
- Double Pendulum: Chaotic physics visualization.
🎨 Visuals
- Plasma & Tunnel: Classic demoscene effects.
- Sidebar UI: Custom immediate-mode GUI with embedded font rendering.
Controls
- Left Click: Select shader from sidebar.
- Scroll: Zoom (Mandelbrot).
- Drag (Left Click): Pan view / Interact with Fluid / Adjust Sliders.
Build & Run
make
./shader-demo
Dependencies
- Wayland Client & EGL
- GLESv2
- libxkbcommon
Description
Languages
C
68.5%
C++
23.7%
GLSL
7.2%
Makefile
0.6%
