Ultraviolet
Ultraviolet is a Scala 3 to GLSL 100/300 'inline' transpiler library.
You can use Ultraviolet to generate GLSL shader code for any WebGL use case, such as with ShaderToy, but is primarily designed to support Indigo.
All the shader examples and demos in these docs are written in Ultraviolet and presented using Indigo.
Installation
Check the repo for the latest release number, and substitute the x.y.z
below accordingly.
sbt
libraryDependencies += "io.indigoengine" %%% "ultraviolet" % "x.y.z"
Mill
def ivyDeps = Agg(ivy"io.indigoengine::ultraviolet::x.y.z")
Scala-CLI
//> using dep io.indigoengine::ultraviolet:x.y.z