From 540e8b04987fa1c634a2daf768d4edf0100d0317 Mon Sep 17 00:00:00 2001 From: Abe Pazos Date: Mon, 18 May 2020 11:54:18 +0200 Subject: [PATCH] Add orx readme generator, update readmes --- README.md | 77 +++++++++++---------- build.gradle | 64 ++++++++++++++++- orx-boofcv/README.md | 4 +- orx-camera/README.md | 2 +- orx-compositor/README.md | 2 +- orx-easing/README.md | 4 +- orx-file-watcher/README.md | 2 +- orx-filter-extension/README.md | 4 +- orx-fx/README.md | 7 +- orx-glslify/README.md | 2 +- orx-gradient-descent/README.md | 5 +- orx-gui/README.md | 2 + orx-image-fit/README.md | 6 +- orx-integral-image/README.md | 4 +- orx-interval-tree/README.md | 4 +- orx-jumpflood/README.md | 9 +-- orx-kdtree/README.md | 2 + orx-keyframer/README.md | 4 +- orx-kinect-v1/README.md | 4 +- orx-mesh-generators/README.md | 2 +- orx-midi/README.md | 4 +- orx-no-clear/README.md | 4 +- orx-noise/README.md | 2 +- orx-obj-loader/README.md | 2 +- orx-olive/README.md | 2 +- orx-osc/README.md | 8 +++ orx-palette/README.md | 2 +- orx-panel/README.md | 3 +- orx-parameters/README.md | 14 ++-- orx-poisson-fill/README.md | 4 ++ orx-rabbit-control/{README.MD => README.md} | 4 +- orx-runway/README.md | 6 ++ orx-shade-styles/README.md | 3 + orx-shader-phrases/{src => }/README.md | 0 orx-shapes/README.md | 2 +- orx-syphon/README.md | 3 +- orx-temporal-blur/README.md | 11 +-- orx-time-operators/README.md | 3 +- orx-timer/README.md | 3 +- 39 files changed, 206 insertions(+), 84 deletions(-) create mode 100644 orx-poisson-fill/README.md rename orx-rabbit-control/{README.MD => README.md} (76%) create mode 100644 orx-runway/README.md rename orx-shader-phrases/{src => }/README.md (100%) diff --git a/README.md b/README.md index 24ee1f4a..3434d57f 100644 --- a/README.md +++ b/README.md @@ -3,40 +3,47 @@ [ ![Download](https://api.bintray.com/packages/openrndr/openrndr/orx/images/download.svg) ](https://bintray.com/openrndr/openrndr/orx/_latestVersion) A growing library of assorted data structures, algorithms and utilities. -- [`orx-camera`](orx-camera/README.md), 3d camera and controls -- [`orx-compositor`](orx-compositor/README.md), a simple toolkit to make composite (layered) images -- [`orx-easing`](orx-easing/README.md), a collection of easing functions. -- [`orx-file-watcher`](orx-file-watcher/README.md), `Program` extension method that allows monitoring and hot loading from files. -- [`orx-filter-extension`](orx-filter-extension/README.md), `Program` extension method that provides Filter based `extend()` -- [`orx-glslify`](orx-glslify/README.md), use [glslify](http://stack.gl/packages/) modules within openrndr shaders -- [`orx-gui`](orx-gui/README.md), automatic UI generation for annotated classes and properties -- [`orx-gradient-descent`](orx-gradient-descent/README.md), a gradient descent based minimizer -- [`orx-image-fit`](orx-image-fit/README.md), easier drawing of images -- [`orx-integral-image`](orx-integral-image/README.md), CPU-based and GPU-based implementation for integral images (summed area tables) -- [`orx-interval-tree`](orx-interval-tree/README.md), data structure for accelerating point-in-interval queries. -- [`orx-jumpflood`](orx-jumpflood/README.md), a filter/shader based implementation of the jump flood algorithm for finding fast approximate (directional) distance fields -- `orx-kdtree`, a kd-tree implementation for fast nearest point searches -- [`orx-keyframer`](orx-keyframer/README.md), versatile parametric keyframer -- [`orx-kinect-v1`](orx-kinect-v1/README.md), utilities to use Kinect V1 RGB-D sensors in OPENRNDR programs. -- [`orx-mesh-generators`](orx-mesh-generators/README.md), triangular mesh generators -- [`orx-midi`](orx-midi/README.md), midi controller interface -- [`orx-noise`](orx-noise/README.md), library for random number generation and noise -- [`orx-no-clear`](orx-no-clear/README.md), a simple extension that provides drawing without clearing the background -- [`orx-obj-loader`](orx-obj-loader/README.md), simple Wavefront .obj mesh loader -- [`orx-olive`](orx-olive/README.md), extensions that turns OPENRNDR in to a live coding environment -- [`orx-osc`](orx-osc/README.md), open sound control interface -- [`orx-palette`](orx-palette/README.md), manage color palettes -- [`orx-panel`](orx-panel/README.md), the OPENRNDR ui library -- [`orx-parameters`](orx-parameters/README.md), property annotations that allow for automatic ui generation -- [`orx-poison-fill`](orx-poisson-fill/README.md), GPU implementation for Poisson fills. -- [`orx-rabbit-control`](orx-rabbit-control/README.md), RabbitControl extension using `orx-parameters` -- [`orx-runway`](orx-runway/README.md), support for RunwayML -- [`orx-shade-styles`](orx-shade-styles/README.md), a collection of shade style presets -- [`orx-shapes`](orx-shapes), tools for generating and modifying shapes -- [`orx-syphon`](orx-syphon/README.md), send frames to- and from OPENRNDR and other applications in real time using Syphon -- [`orx-temporal-blur`](orx-temporal-blur/README.md), temporal (motion) blur for video production. -- [`orx-time-operators`](orx-time-operators/README.md), A collection of time-sensitive functions aimed at controlling raw data over-time. -- [`orx-timer`](orx-timer/README.md), simple timer functionality for OPENRNDR + + +| name | description | +| [`orx-boofcv`](orx-boofcv/README.md) | Helper functions to ease working with the BoofCV computer vision library and its data types. | +| [`orx-camera`](orx-camera/README.md) | 3D camera controllable via mouse and keyboard. | +| [`orx-compositor`](orx-compositor/README.md) | Toolkit to make composite (layered) images using blend modes and filters. | +| [`orx-easing`](orx-easing/README.md) | Provides easing functions for smooth animation or non-linear interpolation. | +| [`orx-file-watcher`](orx-file-watcher/README.md) | Monitor files on disk and auto-reload them if they change. | +| [`orx-filter-extension`](orx-filter-extension/README.md) | To apply graphics filters on every animation frame using `extend(FILTER_NAME())`. | +| [`orx-fx`](orx-fx/README.md) | Ready-to-use visual effects or filters. Most include [orx-parameters](https://github.com/openrndr/orx/tree/master/orx-parameters) annotations so they can be easily controlled via orx-gui. | +| [`orx-glslify`](orx-glslify/README.md) | Load glslify compatible shaders from [npm](https://www.npmjs.com/search?q=glslify). | +| [`orx-gradient-descent`](orx-gradient-descent/README.md) | Finds equation inputs that output a minimum value: easy to use gradient descent based minimizer. | +| [`orx-gui`](orx-gui/README.md) | Automatic UI (sliders, buttons, etc.) generated from annotated classes and properties. Uses `orx-panel` and `orx-parameters`. | +| [`orx-image-fit`](orx-image-fit/README.md) | Draws the given image making sure it fits (`contain`) or it covers (`cover`) the specified area. | +| [`orx-integral-image`](orx-integral-image/README.md) | CPU and GPU-based implementation for integral images (summed area tables) | +| [`orx-interval-tree`](orx-interval-tree/README.md) | For querying a data set containing time segments (start time and end time) when we need all entries containing a specific time value. Useful when creating a timeline. | +| [`orx-jumpflood`](orx-jumpflood/README.md) | Takes an image and calculates either a distance field or a direction field. GPU accelerated, 2D. Results are provided as an image. | +| [`orx-kdtree`](orx-kdtree/README.md) | Fast search of the point closest to the queried point in a data set. 2D, 3D and 4D. | +| [`orx-keyframer`](orx-keyframer/README.md) | Create animated timelines by specifying properties and times in keyframes, then play it back at any speed (even backwards) automatically interpolating properties. Save, load, use mathematical expressions and callbacks. Powerful and highly reusable. | +| [`orx-kinect-v1`](orx-kinect-v1/README.md) | Support for the Kinect V1 RGB+Depth camera. | +| [`orx-mesh-generators`](orx-mesh-generators/README.md) | Generates 3D meshes: sphere, box, cylinder, plane, dodecahedron. | +| [`orx-midi`](orx-midi/README.md) | Basic MIDI support for keyboards and controllers. Send and receive note and control change events. | +| [`orx-no-clear`](orx-no-clear/README.md) | Provides the classical draw-without-clearing-the-screen functionality that OPENRNDR does not provide by default. | +| [`orx-noise`](orx-noise/README.md) | Randomness for every type of person: Perlin, uniform, value, simplex, fractal and many other types of noise. | +| [`orx-obj-loader`](orx-obj-loader/README.md) | Simple loader for Wavefront .obj 3D mesh files. | +| [`orx-olive`](orx-olive/README.md) | Provides live coding functionality: updates a running OPENRNDR program when you save your changes. | +| [`orx-osc`](orx-osc/README.md) | Open Sound Control makes it possible to send and receive messages from other OSC enabled programs in the same or a different computer. Used to create multi-application or multi-device software. | +| [`orx-palette`](orx-palette/README.md) | Provides 300 color palettes gathered from different sources, organized in 3 collections. | +| [`orx-panel`](orx-panel/README.md) | The OPENRNDR UI toolkit. Provides buttons, sliders, text, a color picker and much more. HTML/CSS-like. | +| [`orx-parameters`](orx-parameters/README.md) | Provides annotations and tools for turning Kotlin properties into introspectable parameters. Used by [`orx-gui`](../orx-gui/README.md) to automatically generate user interfaces. | +| [`orx-poisson-fill`](orx-poisson-fill/README.md) | Post processing effect that fills transparent parts of the image interpolating the edge pixel colors. GPU-based. | +| [`orx-rabbit-control`](orx-rabbit-control/README.md) | Automatically creates a remote UI to control your OPENRNDR program from a mobile device or a different computer. Alternative to `orx-gui`. | +| [`orx-runway`](orx-runway/README.md) | Interfaces with the RunwayML machine learning library that provides features like motion capture, image synthesis, object recognition, style transfer and more. More info at [runwayml.com](https://runwayml.com/). | +| [`orx-shade-styles`](orx-shade-styles/README.md) | Collection of shader based fills and strokes. Currently includes 4 types of gradient fills. | +| [`orx-shader-phrases`](orx-shader-phrases/README.md) | A library that provides a `#pragma import` statement for shaders by using the JVM class loader. | +| [`orx-shapes`](orx-shapes/README.md) | Collection of 2D shape generators (polygon, star, rounded rectangle) and shape modifiers. | +| [`orx-syphon`](orx-syphon/README.md) | Send frames to- and from OPENRNDR to other applications in real time using _Syphon_ for Mac. | +| [`orx-temporal-blur`](orx-temporal-blur/README.md) | Post-processing temporal-blur video effect. CPU intense, therefore not intended for use with the `ScreenRecorder` extension or other real-time uses. | +| [`orx-time-operators`](orx-time-operators/README.md) | A collection of time-sensitive functions aimed at controlling raw data over-time, such as Envelope and LFO. | +| [`orx-timer`](orx-timer/README.md) | Simple timer functionality providing `repeat`, to run code with a given interval and `timeOut`, to run code once after a given delay. | + # Developer notes @@ -44,4 +51,4 @@ A growing library of assorted data structures, algorithms and utilities. run `./gradlew publishToMavenLocal -Prelease.version=0.4.0-SNAPSHOT` (or import in IntelliJ IDEA and edit the run configuration) -In an [`openrndr-template`](https://github.com/openrndr/openrndr-template) based project set `orxUseSnapshot = true` in order to use the snapshot build. +In an [`openrndr-template`](https://github.com/openrndr/openrndr-template) based project set `orxUseSnapshot = true` in order to use the snapshot build. \ No newline at end of file diff --git a/build.gradle b/build.gradle index 5daeca7f..eee4d39e 100644 --- a/build.gradle +++ b/build.gradle @@ -58,7 +58,6 @@ allprojects { group 'org.openrndr.extra' - repositories { mavenCentral() jcenter() @@ -107,6 +106,69 @@ allprojects { } } +task buildMainReadme { + doFirst { + def subProjects = project.subprojects + //.findAll { !it.name.contains("kinect-common") && !it.name.contains + // ("kinect-v1-") } + + // Load README.md and find [begin, end] section to replace + def mainReadme = file("README.md") + def lines = mainReadme.readLines() + + def begin = lines.findIndexOf { it == "" } + def end = lines.findIndexOf { it == "" } + if (begin == -1 || end == -1) { + println("Comments for orx list generation not found in README.md!") + return + } + + def header = lines.subList(0, begin + 1) + def footer = lines.subList(end, lines.size()) + + def newReadme = [] + for (line in header) { + newReadme.add(line) + } + newReadme.add("| name | description |") + + // Search for the description at the top of the readme. + // Skip the hash character from the headline, then start + // on the next line and continue until the next empty line. + // Don't fall into Windows line breaks. + def descriptionRx = ~/(?s)\#.*?\n(.+?)\n\r?\n/ + // Note: the readme needs an empty line after the description + + // Build orx list + for (sub in subProjects) { + def orxReadmeFile = sub.file("README.md") + if (orxReadmeFile.exists()) { + def orxReadmeText = orxReadmeFile.getText() + orxReadmeText.find(descriptionRx) { + description -> + def trimmedDescription = description[1].strip() + .replace("\n", " ").replace("\r", "") + newReadme.add("| [`${sub.name}`](${sub.name}/README.md) " + + "| $trimmedDescription |") + } + + } else { + println("${sub.name}/README.md not found!") + } + } + + for (line in footer) { + newReadme.add(line) + } + + // Write result + if (mainReadme.exists()) { + mainReadme.delete() + } + mainReadme.write(newReadme.join("\n")) + } +} + task collectScreenshots { doFirst { def demoProjects = project.subprojects.findAll { it.sourceSets.hasProperty("demo") } diff --git a/orx-boofcv/README.md b/orx-boofcv/README.md index 3f9f960d..e714cd3d 100644 --- a/orx-boofcv/README.md +++ b/orx-boofcv/README.md @@ -1,7 +1,7 @@ # orx-boofcv -An extension that simplifies the use of the BoofCV computer vision -library inside OPENRNDR. +Helper functions to ease working with the BoofCV computer vision library +and its data types. BoofCV is an open source library written from scratch for real-time computer vision. Its functionality covers a range of subjects, diff --git a/orx-camera/README.md b/orx-camera/README.md index 5b8d3f64..308513a1 100644 --- a/orx-camera/README.md +++ b/orx-camera/README.md @@ -1,6 +1,6 @@ # orx-camera -3D camera and controls for OPENRNDR. This supersedes the to be deprecated functionality in OPENRNDR. +3D camera controllable via mouse and keyboard. ## Usage diff --git a/orx-compositor/README.md b/orx-compositor/README.md index 13bd0373..809b3afc 100644 --- a/orx-compositor/README.md +++ b/orx-compositor/README.md @@ -1,6 +1,6 @@ # orx-compositor -A simple toolkit to make composite images. +Toolkit to make composite (layered) images using blend modes and filters. ##### Usage diff --git a/orx-easing/README.md b/orx-easing/README.md index ada7322e..9428d9d6 100644 --- a/orx-easing/README.md +++ b/orx-easing/README.md @@ -1,6 +1,8 @@ # orx-easing -A collection of easing functions similar to those on https://easings.net +Provides easing functions for smooth animation or non-linear interpolation. + +Similar to those on https://easings.net - `easeLinear` - `easeBackIn`, `easeBackInOut`, `easeBackOut` diff --git a/orx-file-watcher/README.md b/orx-file-watcher/README.md index 3bfbcdb6..2f1b43de 100644 --- a/orx-file-watcher/README.md +++ b/orx-file-watcher/README.md @@ -1,6 +1,6 @@ # orx-file-watcher -A file watcher for OPENRNDR +Monitor files on disk and auto-reload them if they change. ## Usage diff --git a/orx-filter-extension/README.md b/orx-filter-extension/README.md index b4dd0e7c..30d0c8f9 100644 --- a/orx-filter-extension/README.md +++ b/orx-filter-extension/README.md @@ -1,6 +1,6 @@ # orx-filter-extension -Provides extension methods for Program that can be used to provide Filters to the `extend()` mechanism +To apply graphics filters on every animation frame using `extend(FILTER_NAME())`. ##### API @@ -18,4 +18,4 @@ fun main() = application { } } } -``` \ No newline at end of file +``` diff --git a/orx-fx/README.md b/orx-fx/README.md index dca23d29..6ac25841 100644 --- a/orx-fx/README.md +++ b/orx-fx/README.md @@ -1,6 +1,11 @@ # orx-fx -orx-fx contains ready-to-use effects, or filters, for OPENRNDR. The provided filters are based on OPENRNDR's [`Filter` class](https://api.openrndr.org/org.openrndr.draw/-filter/index.html) and most will have [orx-parameters](https://github.com/openrndr/orx/tree/master/orx-parameters) annotations such that they can easily be used in combination with tools such as [orx-gui](https://github.com/openrndr/orx/tree/master/orx-gui). +Ready-to-use visual effects or filters. Most include +[orx-parameters](https://github.com/openrndr/orx/tree/master/orx-parameters) annotations +so they can be easily controlled via orx-gui. + +The provided filters are based on OPENRNDR's +[`Filter` class](https://api.openrndr.org/org.openrndr.draw/-filter/index.html) All filters provided by orx-fx assume pre-multiplied alpha inputs, which is OPENRNDR's default. diff --git a/orx-glslify/README.md b/orx-glslify/README.md index 9ed9a066..5658e8d2 100644 --- a/orx-glslify/README.md +++ b/orx-glslify/README.md @@ -1,6 +1,6 @@ # orx-glslify -Easily use glslify compatible shaders found on [npm](https://www.npmjs.com/search?q=glslify). +Load glslify compatible shaders from [npm](https://www.npmjs.com/search?q=glslify). ### Caveats diff --git a/orx-gradient-descent/README.md b/orx-gradient-descent/README.md index 37c00b2c..0ac82ffc 100644 --- a/orx-gradient-descent/README.md +++ b/orx-gradient-descent/README.md @@ -1,7 +1,6 @@ # orx-gradient-descent -A gradient descent based minimizer that is incredibly -easy to use. +Finds equation inputs that output a minimum value: easy to use gradient descent based minimizer. ## Usage @@ -33,4 +32,4 @@ class Model { var y = 0.0 var v2 = Vector2.ZERO } -``` \ No newline at end of file +``` diff --git a/orx-gui/README.md b/orx-gui/README.md index 8834b822..2ab82bab 100644 --- a/orx-gui/README.md +++ b/orx-gui/README.md @@ -1,5 +1,7 @@ # orx-gui +Automatic UI (sliders, buttons, etc.) generated from annotated classes and properties. Uses `orx-panel` and `orx-parameters`. + A quick-and-dirty user interface toolkit. `orx-gui` uses class and property annotations to generate simple interfaces. The annotations used diff --git a/orx-image-fit/README.md b/orx-image-fit/README.md index 8906268f..48d4a570 100644 --- a/orx-image-fit/README.md +++ b/orx-image-fit/README.md @@ -1,8 +1,10 @@ # orx-image-fit -Fits images in frames with two options, contain and cover. Similar to CSS object-fit (https://www.w3schools.com/css/css3_object-fit.asp) +Draws the given image making sure it fits (`contain`) or it covers (`cover`) the specified area. -`orx-image-fit` provides an extension function`imageFit` for `Drawer`. +Similar to CSS object-fit (https://www.w3schools.com/css/css3_object-fit.asp) + +`orx-image-fit` provides an extension function `imageFit` for `Drawer`. ## Usage diff --git a/orx-integral-image/README.md b/orx-integral-image/README.md index d6b12140..9d5656d7 100644 --- a/orx-integral-image/README.md +++ b/orx-integral-image/README.md @@ -1,5 +1,7 @@ # orx-integral-image +CPU and GPU-based implementation for integral images (summed area tables) + #### Usage ``` @@ -58,4 +60,4 @@ fun main(args: Array) = application { } } } -``` \ No newline at end of file +``` diff --git a/orx-interval-tree/README.md b/orx-interval-tree/README.md index fb1c2007..b01e7518 100644 --- a/orx-interval-tree/README.md +++ b/orx-interval-tree/README.md @@ -1,7 +1,7 @@ # orx-interval-tree -Interval trees intend to speed-up point in interval queries. Specifically in cases with a large set of items with a given -fixed start and end time. +For querying a data set containing time segments (start time and end time) +when we need all entries containing a specific time value. Useful when creating a timeline. For more information on interval trees read the [wikipedia page](https://en.wikipedia.org/wiki/Interval_tree). diff --git a/orx-jumpflood/README.md b/orx-jumpflood/README.md index b3638252..74a8c561 100644 --- a/orx-jumpflood/README.md +++ b/orx-jumpflood/README.md @@ -1,6 +1,7 @@ # orx-jumpflood -An OPENRNDR extra that provides GPU accelerated jump flooding functionality. +Takes an image and calculates either a distance field or a direction field. +GPU accelerated, 2D. Results are provided as an image. [Original jump flooding algorithm](https://www.comp.nus.edu.sg/~tants/jfa.html) @@ -12,7 +13,7 @@ An OPENRNDR extra that provides GPU accelerated jump flooding functionality. the distance in red and the original bitmap in green. -````kotlin +```kotlin import org.openrndr.application import org.openrndr.draw.* import org.openrndr.extra.jumpfill.Threshold @@ -76,7 +77,7 @@ fun main() = application { } } } -```` +``` ## Direction field example @@ -84,7 +85,7 @@ fun main() = application { x-direction in red, y-direction in green, and the original bitmap in blue. -``` +```kotlin import org.openrndr.application import org.openrndr.draw.* import org.openrndr.extra.jumpfill.Threshold diff --git a/orx-kdtree/README.md b/orx-kdtree/README.md index f31f9796..5edf5178 100644 --- a/orx-kdtree/README.md +++ b/orx-kdtree/README.md @@ -1,5 +1,7 @@ # orx-kdtree +Fast search of the point closest to the queried point in a data set. 2D, 3D and 4D. + ## Demos ### DemoNearestNeighbour01 diff --git a/orx-keyframer/README.md b/orx-keyframer/README.md index 2b66591b..b9dbe0ad 100644 --- a/orx-keyframer/README.md +++ b/orx-keyframer/README.md @@ -1,6 +1,8 @@ # orx-keyframer -A highly reusable keyframer. +Create animated timelines by specifying properties and times in keyframes, +then play it back at any speed (even backwards) automatically interpolating properties. +Save, load, use mathematical expressions and callbacks. Powerful and highly reusable. What this allows you to do: diff --git a/orx-kinect-v1/README.md b/orx-kinect-v1/README.md index 46f396e2..f88680f4 100644 --- a/orx-kinect-v1/README.md +++ b/orx-kinect-v1/README.md @@ -1,6 +1,6 @@ # orx-kinect-v1 -Support for Kinect V1 RGB-D sensors. +Support for the Kinect V1 RGB+Depth camera. ## Example usage @@ -20,4 +20,4 @@ fun main() = application { } } } -``` \ No newline at end of file +``` diff --git a/orx-mesh-generators/README.md b/orx-mesh-generators/README.md index 85e9b75e..80007572 100644 --- a/orx-mesh-generators/README.md +++ b/orx-mesh-generators/README.md @@ -1,6 +1,6 @@ # orx-mesh-generators -Simple mesh generators for OPENRNDR +Generates 3D meshes: sphere, box, cylinder, plane, dodecahedron. ##### usage diff --git a/orx-midi/README.md b/orx-midi/README.md index e8bc8696..eabbf850 100644 --- a/orx-midi/README.md +++ b/orx-midi/README.md @@ -1,6 +1,8 @@ # orx-midi -A minimal and limited library for Midi controllers. Orx-midi is a wrapper around javax.midi. +Basic MIDI support for keyboards and controllers. Send and receive note and control change events. + +Orx-midi is a wrapper around javax.midi. ## Usage diff --git a/orx-no-clear/README.md b/orx-no-clear/README.md index 76feb184..b6f59b38 100644 --- a/orx-no-clear/README.md +++ b/orx-no-clear/README.md @@ -1,7 +1,7 @@ # orx-no-clear -A simple OPENRNDR Extension that provides the classical drawing-without-clearing-the-screen functionality that -OPENRNDR does not support natively. +Provides the classical draw-without-clearing-the-screen functionality that +OPENRNDR does not provide by default. #### Usage diff --git a/orx-noise/README.md b/orx-noise/README.md index 0acd4dfc..7ad26d0c 100644 --- a/orx-noise/README.md +++ b/orx-noise/README.md @@ -1,6 +1,6 @@ # orx-noise -A collection of noisy functions +Randomness for every type of person: Perlin, uniform, value, simplex, fractal and many other types of noise. ## Uniform random numbers diff --git a/orx-obj-loader/README.md b/orx-obj-loader/README.md index bf1460c7..ec6dd6b3 100644 --- a/orx-obj-loader/README.md +++ b/orx-obj-loader/README.md @@ -1,6 +1,6 @@ # orx-obj-loader -A simple loader for Wavefront .obj files +Simple loader for Wavefront .obj 3D mesh files. ##### Usage diff --git a/orx-olive/README.md b/orx-olive/README.md index b82afe90..2b406872 100644 --- a/orx-olive/README.md +++ b/orx-olive/README.md @@ -1,6 +1,6 @@ # orx-olive -Live coding extension for OPENRNDR +Provides live coding functionality: updates a running OPENRNDR program when you save your changes. ## usage diff --git a/orx-osc/README.md b/orx-osc/README.md index 1d0d6feb..1978297b 100644 --- a/orx-osc/README.md +++ b/orx-osc/README.md @@ -1,5 +1,13 @@ # orx-osc +Open Sound Control makes it possible to send and receive messages +from other OSC enabled programs in the same or a different computer. +Used to create multi-application or multi-device software. + +Can be used to remote control your program from a mobile device, +to produce sound in a audio programming environment, make games +and networked experiments. + Orx-osc is a wrapper around javaOSC ## Usage diff --git a/orx-palette/README.md b/orx-palette/README.md index 11004fe5..2cad5116 100644 --- a/orx-palette/README.md +++ b/orx-palette/README.md @@ -1,6 +1,6 @@ # orx-palette -An extension that helps managing a palette of colors. Includes 300 palettes organized in 3 collections gathered from different sources. +Provides 300 color palettes gathered from different sources, organized in 3 collections. ## Usage diff --git a/orx-panel/README.md b/orx-panel/README.md index 50d534b4..d332f9fd 100644 --- a/orx-panel/README.md +++ b/orx-panel/README.md @@ -1,6 +1,7 @@ # orx-panel -The OPENRNDR UI toolkit +The OPENRNDR UI toolkit. Provides buttons, sliders, text, a color picker and much more. HTML/CSS-like. + ## Demos ### DemoHorizontalLayout01 diff --git a/orx-parameters/README.md b/orx-parameters/README.md index 7ff8a914..76e5e501 100644 --- a/orx-parameters/README.md +++ b/orx-parameters/README.md @@ -1,9 +1,13 @@ # orx-parameters -A collection of annotations and tools that are used to turn Kotlin properties into introspectable parameters. Parameters -are highly suitable for automatically generating user interfaces, but note that this is _not_ what `orx-parameters` does. +Provides annotations and tools for turning Kotlin properties into introspectable parameters. +Used by [`orx-gui`](../orx-gui/README.md) to automatically generate user interfaces. -For an example (and a highly usable implementation) of generating interfaces from the annotations you are encouraged to check out [`orx-gui`](../orx-gui/README.md). +Note that `orx-parameters` does _not_ generate user interfaces, +it only provides the information needed to create them. + +For an example (and a highly usable implementation) of generating interfaces +from the annotations you are encouraged to check out [`orx-gui`](../orx-gui/README.md). Currently orx-parameters facilitates the following annotations: @@ -23,7 +27,7 @@ Additionally there is an `ActionParameter` that can be used to annotate function ## Annotation application -Annotations can be applied to a properties inside a class or object class. +Annotations can be applied to properties inside a class or object class. ```kotlin val foo = object { @@ -52,7 +56,7 @@ val foo = object { fun actionFunction() { // -- } - @DoublieListParameter("a double-list parameter", order = 8) + @DoubleListParameter("a double-list parameter", order = 8) var dl = mutableListOf(0.0, 0.0, 0.0) @OptionParameter("an option parameter", order = 9) diff --git a/orx-poisson-fill/README.md b/orx-poisson-fill/README.md new file mode 100644 index 00000000..845d8aa4 --- /dev/null +++ b/orx-poisson-fill/README.md @@ -0,0 +1,4 @@ +# orx-poisson-fill + +Post processing effect that fills transparent parts of the image interpolating the edge pixel colors. GPU-based. + diff --git a/orx-rabbit-control/README.MD b/orx-rabbit-control/README.md similarity index 76% rename from orx-rabbit-control/README.MD rename to orx-rabbit-control/README.md index a0bdb972..952997fe 100644 --- a/orx-rabbit-control/README.MD +++ b/orx-rabbit-control/README.md @@ -1,6 +1,8 @@ # orx-rabbit-control -`orx-rabbit-control` uses `orx-parameters` annotations to generate a control interface, just like `orx-gui`. It can be used as an alternative to `orx-gui` when you want to control your OPENRNDR program from a mobile device or a different computer. +Automatically creates a remote UI to control your OPENRNDR program from a mobile device or a different computer. Alternative to `orx-gui`. + +`orx-rabbit-control` uses `orx-parameters` annotations to generate a control interface, just like `orx-gui`. diff --git a/orx-runway/README.md b/orx-runway/README.md new file mode 100644 index 00000000..e760b12d --- /dev/null +++ b/orx-runway/README.md @@ -0,0 +1,6 @@ +# orx-runway + +Interfaces with the RunwayML machine learning library that provides features like +motion capture, image synthesis, object recognition, style transfer and more. +More info at [runwayml.com](https://runwayml.com/). + diff --git a/orx-shade-styles/README.md b/orx-shade-styles/README.md index 289f8bca..7121595b 100644 --- a/orx-shade-styles/README.md +++ b/orx-shade-styles/README.md @@ -1,4 +1,7 @@ # orx-shade-styles + +Collection of shader based fills and strokes. Currently includes 4 types of gradient fills. + ## Demos diff --git a/orx-syphon/README.md b/orx-syphon/README.md index cdda8f98..cf82053d 100644 --- a/orx-syphon/README.md +++ b/orx-syphon/README.md @@ -1,5 +1,6 @@ # orx-syphon -`orx-syphon` is an extension to send frames to- and from OPENRNDR and other applications in real time using Syphon for Mac. + +Send frames to- and from OPENRNDR to other applications in real time using _Syphon_ for Mac. ![Example](./preview.gif) diff --git a/orx-temporal-blur/README.md b/orx-temporal-blur/README.md index dd48cb31..94cf2c17 100644 --- a/orx-temporal-blur/README.md +++ b/orx-temporal-blur/README.md @@ -1,8 +1,11 @@ # orx-temporal-blur -`orx-temporal-blur` is a an extension intended for off-line production; -i.e. videos made using the `ScreenRecorder` extension. This extension uses multi-sampling -to accumulate and average the final image. Multi-sampling is performed by modifying `Program.clock` +Post-processing temporal-blur video effect. CPU intense, therefore not intended +for use with the `ScreenRecorder` extension or other real-time uses. + +This extension uses multi-sampling to accumulate and average the final image. + +Multi-sampling is performed by modifying `Program.clock` while processing the tail-end of the extension chain. This multi-sampling strategy is slow and not entirely suited in real-time and/or interactive settings. @@ -41,4 +44,4 @@ extend(TemporalBlur()) { fps = 60.0 jitter = 1.0 } -``` \ No newline at end of file +``` diff --git a/orx-time-operators/README.md b/orx-time-operators/README.md index b5734b8c..499a8376 100644 --- a/orx-time-operators/README.md +++ b/orx-time-operators/README.md @@ -1,6 +1,7 @@ # orx-time-operators -A collection of time-sensitive functions aimed at controlling raw data over-time. +A collection of time-sensitive functions aimed at controlling raw data over-time, +such as Envelope and LFO. ## Usage diff --git a/orx-timer/README.md b/orx-timer/README.md index ca0411a7..4f052f95 100644 --- a/orx-timer/README.md +++ b/orx-timer/README.md @@ -1,6 +1,7 @@ # orx-timer -`orx-timer` adds simple timer functionality to OPENRNDR's Program +Simple timer functionality providing `repeat`, to run code with a given interval +and `timeOut`, to run code once after a given delay. ## Prerequisites