/orsl

A shader language in Kotlin DSL.

Primary LanguageKotlin

ORSL

orsl in maven.

A set of modules that facilitate authoring shaders using Kotlin's typesafe builders. ORSL depends on OPENRNDR and ORX.

Examples

Take a look at the programs under the demos folder to get started. Screenshots of the programs can be found in this post.

Usage

The next-version branch of the openrndr-template includes ORSL. Simply uncomment the ORSL dependencies section in the build.gradle.kts file and you are ready use ORSL features in your template.

Contributing

The simplest way to experiment with ORSL is to clone this repo and play with the programs in the demos folder.

Built a SNAPSHOT

If you want to customize ORSL and use it in your local template-based programs:

  1. Clone this repo
  2. Build a SNAPSHOT
./gradlew publishToMavenLocal snapshot
  1. Go to your copy openrndr-template
  2. Switch to the next-version branch.
  3. Make sure orsl in gradle/libs.versions.toml points to the SNAPSHOT version you just built on step 2.
  4. Uncomment the ORSL dependencies section in the build.gradle.kts file.

Organization

Module Description
orsl-glsl-parser Antlr based GLSL parser
orsl-shader-generator DSLs, shader phrases, shader preprocessor.
orsl-shader-generator-annotations
orsl-shader-generator-processor KSP based annotation processor