diff options
Diffstat (limited to 'tools')
| -rwxr-xr-x | tools/shader_watcher.sh | 50 |
1 files changed, 50 insertions, 0 deletions
diff --git a/tools/shader_watcher.sh b/tools/shader_watcher.sh new file mode 100755 index 0000000..d32285d --- /dev/null +++ b/tools/shader_watcher.sh @@ -0,0 +1,50 @@ +#!/usr/bin/env bash +# ____ _ _ _ ____ _____ ____ +# / ___|| | | | / \ | _ \| ____| _ \ +# \___ \| |_| | / _ \ | | | | _| | |_) | +# ___) | _ |/ ___ \| |_| | |___| _ < +# |____/|_| |_/_/ \_\____/|_____|_| \_\ +# +# __ ___ _____ ____ _ _ _____ ____ +# \ \ / / \|_ _/ ___| | | | ____| _ \ +# \ \ /\ / / _ \ | || | | |_| | _| | |_) | +# \ V V / ___ \| || |___| _ | |___| _ < +# \_/\_/_/ \_\_| \____|_| |_|_____|_| \_\ +# +# This program require xdotool to communicate +# with the window. + +wai=$(dirname $(readlink -f "$0")) # Current script directory + + +refresh() { + wid=$(xdotool search --name 'SFML/OpenGL Ray Marching') + [ ! -z "$wid" ] && xdotool key --window "$wid" R +} + +usage() { + echo "Usage: $0 [options]" + echo "Options:" + echo " --every <time> Refresh shader every <time> seconds" + exit 1 +} + +[ $# -ne 2 ] && [ $# -ne 0 ] && usage + +if [ $# -eq 2 ] && [ $1 == "--every" ] +then + shift + time=$1 + while [ true ] + do + sleep $time + refresh + done +else + + while [ true ] + do + ls $wai/../resources/shaders/*.glsl | entr -pd -s 'kill $PPID' + refresh + done +fi |
