Ghostty Shaders
ターミナルエミュレータGhosttyのシェーダ機能を試してみました。
以下のサイトのコードがそのまま利用できました。
https://www.shadertoy.com/
端末としては使えていませんが綺麗にレンダリングされてアニメーションします。
テクスチャの読み込ませ方がわかりません。。。custom-shader-ichannel1 = ./texture.png
みたいなローダが実装されないかなぁ。
環境
- Arch Linux
- GNOME 47.5
- ghostty 1.1.2
構築1
- 以下のサイトのサンプルコードをファイルに保存します。
https://www.shadertoy.com/
例
URL: https://www.shadertoy.com/view/Xds3zN
パス: $HOME/.config/ghostty/shaders/raymarching_primitives.glsl - Ghosttyの設定ファイルでGLSLファイルを指定します。
$HOME/.config/ghostty/config custom-shader = ./shaders/raymarching_primitives.glsl
構築2
- 以下のサイトのサンプルコードをファイルに保存します。
URL: https://www.shadertoy.com/view/Ms2XzK
パス: $HOME/.config/ghostty/shaders/nyancat.glsl - 最後の方のコードを修正します
$HOME/.config/ghostty/shaders/nyancat.glsl vec4 rainbow = getRainbowAt(uv, nyan_p);
col = mix(col, rainbow, rainbow.a);
//vec4 nyan = getNyanAt(uv, nyan_p, nyan_s);
//col = mix(col, nyan, nyan.a);
//fragColor = vec4(col);
vec4 terminalColor = texture(iChannel0, uv);
fragColor = vec4(col + terminalColor);
} - Ghosttyの設定ファイルでGLSLファイルを指定します。
$HOME/.config/ghostty/config custom-shader = ./shaders/nyancat.glsl
Comment