+
Skip to content

lord-123/xshader

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

16 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

xshader

A simple application to run GLSL shader programs as the root window on systems using X.

Examples

The window manager used in these screenshots is DWM and I am using Luke Smith's dwmblocks build to set the status with some custom scripts. Gradient shader Using the gradient.frag shader program

Usage

  1. Clone the repo git clone https://github.com/lord-123/xshader.git
  2. cd into the directory.
  3. Configure the program by modifying config.h if you so wish.
  4. Run sudo make clean install.
  5. Add xshader & to your .xinitrc.
  6. Logout and log back in to update the background.

Configuring config.h for custom shaders

  • SHADER_PATH is the location of the fragment shader program (note: by default the example /shaders directory is copied to ~/.local/bin/shaders). It must be an absolute directory (no ~/). This may be changed in the future.
  • DELAY is how often the program will be delayed between redrawing the screen. Having this low can be a serious power draw on laptops so watch out.
  • The number of shader uniforms used MUST be set correctly in UNIFORM_COUNT. This may not be necessary in a future update.
  • The custom uniforms are defined by their name and a custom updater function.

Features

Current

  • Custom handwritten shaders
  • Completely customizable
  • Written in pure C for maximum efficiency and minimal power consumption
  • Supports custom uniforms which update each frame (animated wallpapers)

TODO

  • One time shaders at the start of the program
  • Seperate shader update rates

Contributing

I would be very grateful for anybody wanting to contribute anything. Issues and pull requests would be excellent, however, if you would like a substantial feature, I might suggest creating a different fork as I am trying to keep this as minimal as possible. Custom shaders from people would be a great addition to this project.

About

A simple application to run GLSL shader programs as the root window on systems using X.

Topics

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published
点击 这是indexloc提供的php浏览器服务,不要输入任何密码和下载