# HyprTile Premium ASCII Shader Pack

Ein schöner ASCII-Art-Postprocessing-Shader für `hyprtile-wallpaperd`.

## Dateien

- `hyprtile-ascii.frag`  
  Normaler Einsatz direkt auf Bild/Video oder als erster Shader-Pass.

- `hyprtile-ascii-fbo-input.frag`  
  Legacy-Kompatibilitätsname. Neue wallpaperd-Versionen halten FBO-Inputs automatisch in derselben Orientierung.

- `hyprtile-ascii.params`  
  Default: Autofarbe pro Glyph aus Bilddaten.

- `hyprtile-ascii-green.params`  
  Grüner Terminal-Look.

- `hyprtile-ascii-amber.params`  
  Bernsteinfarbener Terminal-Look.

- `hyprtile-ascii-white.params`  
  Heller Monochrom-Look.

- `hyprtile-ascii-large.params`  
  Größere Zeichen, stärkerer Stil.

## CLI: Autofarbe aus dem Bild

```bash
hyprtile-wallpaperd \
  --image $HOME/Videos/bg.mp4 \
  --backend gl \
  --shader $HOME/.hyprtile/shader/wallpaperd/ascii/hyprtile-ascii.frag \
  --params $HOME/.hyprtile/shader/wallpaperd/ascii/hyprtile-ascii.params \
  --fps 60
```

## CLI: Grüner Terminal-Look

```bash
hyprtile-wallpaperd \
  --image $HOME/Videos/bg.mp4 \
  --backend gl \
  --shader $HOME/.hyprtile/shader/wallpaperd/ascii/hyprtile-ascii.frag \
  --params $HOME/.hyprtile/shader/wallpaperd/ascii/hyprtile-ascii-green.params \
  --fps 60
```

## CLI: Nach einem anderen Shader-Pass

Wenn vorher schon ein Shader in eine FBO-Texture gerendert hat, nimm die FBO-Input-Version:

```bash
hyprtile-wallpaperd \
  --image $HOME/Videos/bg.mp4 \
  --backend gl \
  --shader $HOME/.hyprtile/shader/wallpaperd/cnc-crt/hyprtile-cnc-crt.frag \
  --params $HOME/.hyprtile/shader/wallpaperd/cnc-crt/hyprtile-cnc-crt-green.params \
  --shader $HOME/.hyprtile/shader/wallpaperd/ascii/hyprtile-ascii-fbo-input.frag \
  --params $HOME/.hyprtile/shader/wallpaperd/ascii/hyprtile-ascii.params \
  --fps 60
```

## Wichtige Regler

```ini
# 0 = Autofarbe pro Glyph aus Bilddaten
# 1 = feste glyph_color
# 2 = Hybrid aus glyph_color und Bildfarbe
color_mode = 0.0

cell_size = 10.0
char_aspect = 1.55
charset_density = 1.0

luma_bias = 0.00
luma_contrast = 1.25
invert = 0.0

glyph_color = 0.35, 1.00, 0.35
color_boost = 1.25
mono_amount = 0.0

background_mix = 0.10
background_dim = 0.25

glow_strength = 0.22
scanline_strength = 0.10
noise_strength = 0.018
terminal_curve = 0.025
vignette_strength = 0.25
```

## Tipps

### Kleinere, feinere ASCII-Zeichen

```ini
cell_size = 7.0
char_aspect = 1.55
```

### Gröbere, echte Terminal-Zeichen

```ini
cell_size = 16.0
char_aspect = 1.60
```

### Nur grüne Zeichen auf dunklem Hintergrund

```ini
color_mode = 1.0
glyph_color = 0.28, 1.00, 0.24
background_mix = 0.02
mono_amount = 1.0
glow_strength = 0.45
```

### Autofarbe, aber stärker leuchtend

```ini
color_mode = 0.0
color_boost = 1.55
background_mix = 0.05
glow_strength = 0.30
```

## Installation

```bash
mkdir -p ~/.hyprtile/shader/wallpaperd/ascii
cp hyprtile-ascii-shader-pack/* ~/.hyprtile/shader/wallpaperd/ascii/
```

## Manifest shortcuts

```bash
hyprtile-wallpaperd --image $HOME/Videos/bg.mp4 --pack ascii:default
hyprtile-wallpaperd --image $HOME/Videos/bg.mp4 --pack ascii:green
hyprtile-wallpaperd --image $HOME/Videos/bg.mp4 --pack ascii:amber
hyprtile-wallpaperd --image $HOME/Videos/bg.mp4 --pack ascii:white
hyprtile-wallpaperd --image $HOME/Videos/bg.mp4 --pack ascii:large
```

The former CRT -> ASCII example is now one manifest too:

```bash
hyprtile-wallpaperd --image $HOME/Videos/bg.mp4 --pack ascii:crt-green
```
