Skip to content

A shadertoy feature creeping into demotool territory

License

Notifications You must be signed in to change notification settings

sndels/skunkwork

Repository files navigation

skunkwork

screenshot

A lightweight framework for fooling around with GLSL-shaders, mainly designed for demos.

Current features:

  • Includes in glsl
    • Nesting supported
    • Error lines parsed into vscode links per file on some drivers
      • Filepath and raw error line otherwise
  • Dynamic uniform edit UI
    • d* Hungarian notation uniforms are picked up
    • bool, float, int, uint, (u/i)vec2, (u/i)vec3 and (u/i)vec4 supported
  • Auto-reloading shaders when sources change
  • Gpu-"profiler"
    • Timing instances can't be interleaved because GL_TIMESTAMP doesn't work on OSX
  • Music playback and sync using SDL_mixer
  • Rocket-interface
    • float uniforms using r* Hungarian notation are picked up
  • Mercury's hg_sdf included for CSG
  • Basic built-in shaders
    • Noise, prng
    • Physically based BRDF for shading
    • SDF font rendering

I have used emoon's as my Rocket-server.

Releases

Dependencies

Building requires SDL dependencies and on linux libasound2-dev. SDL, SDL_mixer, dear imgui, Rocket and gl3w are submodules with their respective licenses.

Building

The CMake-build should work™ on Linux (Ninja) and Windows 10 (Visual Studio 2022).

About

A shadertoy feature creeping into demotool territory

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Contributors 4

  •  
  •  
  •  
  •