Pyre, a Metal shader for SwiftUI
SwiftUI Metal shader

Pyre

A column of flame held inside the ball. One five-octave noise field, warped by a finer copy of itself and scrolled downward so the plume reads as climbing, is weighted by height into an intensity that ramps through four stops — soot, ember, flame, spark. The lift from the upper left and the two darkening terms are the shading every liquid orb in the family ends on.

SwiftUIReact NativeWeb

How it works

Pyre is a real [[stitchable]] Metal shader, not a video or an image. It runs as a SwiftUI .colorEffect, so it paints any view you attach it to. You shape it with sliders in a live preview, then export the .metal file and the SwiftUI code that uses it, or the React Native and Web version. No MSL to write.

15 settings you can tune

  • Speed
  • Radius
  • Rise
  • Soot
  • Ember
  • Flame
  • Spark
  • Highlight
  • Shade
  • Grain
  • Exposure
  • Colors
  • Edge softness
  • Glow
  • Glow tint

More SwiftUI shaders