{
  "name": "Halloween Shimmer",
  "dimension": "text",
  "slot": "action_bar",
  "width": 256,
  "height": 128,
  "textBaseline": 128,
  "placement": {
    "x": 0,
    "y": 0
  },
  "shapes": [],
  "texts": [],
  "heads": [],
  "images": [],
  "bars": [],
  "triggers": [],
  "effect": {
    "glsl": "vec4 effect(Fx f) {\n    vec2 g = floor(f.g) + 0.5;\n    float wave = 0.5 + 0.5 * sin(g.x * 0.085 + f.q.y * 0.10 - f.t * 0.95);\n    float blend = smoothstep(0.15, 0.85, wave);\n    vec3 orange = vec3(1.0, 0.44, 0.055);\n    vec3 purple = vec3(0.72, 0.27, 1.0);\n    vec3 c = mix(orange, purple, blend);\n    float top = 1.0 - smoothstep(1.0, 7.0, f.q.y);\n    c = mix(c, mix(vec3(1.0, 0.65, 0.23), vec3(0.86, 0.49, 1.0), blend), top * 0.4);\n    float sweep = mod(f.g.x + f.p.y * 0.8 - f.t * 25.0 + 30.0, 92.0);\n    float shine = 1.0 - smoothstep(1.0, 5.5, abs(sweep - 46.0));\n    c = mix(c, mix(vec3(1.0, 0.9, 0.62), vec3(0.97, 0.80, 1.0), blend), shine * 0.85);\n    float sparkle = pow(max(0.0, sin(f.t * 2.5 + h2(f.o + f.q) * 6.2831853)), 14.0);\n    sparkle *= step(0.82, h2(f.o + f.q + vec2(9.3, 4.1)));\n    c = mix(c, vec3(1.0, 0.89, 0.91), sparkle * 0.35);\n    float a = G(f.p);\n    vec4 shadow = vec4(0.065, 0.018, 0.085, G(f.p - 1.0) * 0.95);\n    vec4 rim = vec4(0.12, 0.025, 0.16, N4(f.p) * 0.85);\n    return over(vec4(c, a), over(rim, shadow));\n}",
    "pad": [
      1,
      1,
      1,
      1
    ],
    "prompt": "text with an orange to purple Halloween gradient that shimmers and sweeps across",
    "sample": "Spooky Shimmer"
  }
}