• Stars
    star
    122
  • Rank 292,031 (Top 6 %)
  • Language
    Kotlin
  • License
    BSD 2-Clause "Sim...
  • Created about 6 years ago
  • Updated about 1 month ago

Reviews

There are no reviews yet. Be the first to send feedback to the community and the maintainers!

Repository Details

A growing library of assorted data structures, algorithms and utilities for OPENRNDR

ORX (OPENRNDR EXTRA)

Download

A growing library of assorted data structures, algorithms and utilities to complement OPENRNDR.

Multiplatform

name                                     description
orx-camera 2D and 3D cameras controllable via mouse and keyboard.
orx-color Color spaces, palettes, histograms, named colors.
orx-compositor Toolkit to make composite (layered) images using blend modes and filters.
orx-compute-graph A graph for computation.
orx-compute-graph-nodes A collection of nodes that can be used with orx-computer-graph.
orx-delegate-magic Collection of magical property delegators. For tracking variable change or interpolate towards the value of a variable.
orx-easing Easing functions for smooth animation or non-linear interpolation.
orx-envelopes ADSR (Attack, Decay, Sustain, Release) envelopes and tools.
orx-fx Ready-to-use GPU-based visual effects or filters. Most include orx-parameters annotations so they can be easily controlled via orx-gui.
orx-glslify Load glslify compatible shaders from npm.
orx-gradient-descent Finds equation inputs that output a minimum value: easy to use gradient descent based minimizer.
orx-hash-grid 2D space partitioning for fast point queries.
orx-image-fit Draws an image ensuring it fits or covers the specified Rectangle.
orx-integral-image CPU and GPU-based implementation for integral images (summed area tables)
orx-interval-tree 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 Calculates distance or direction fields from an image. GPU accelerated, 2D. Results are provided as an image.
orx-kdtree Fast search of points closest to the queried point in a data set. 2D, 3D and 4D.
orx-marching-squares Tools for extracting contours from functions
orx-mesh-generators 3D-mesh generating functions and DSL.
orx-no-clear Provides the classical "draw-without-clearing-the-screen" functionality.
orx-noise Randomness for every type of person: Perlin, uniform, value, simplex, fractal and many other types of noise.
orx-obj-loader Simple loader for Wavefront .obj 3D mesh files.
orx-palette Provides hundreds of color palettes.
orx-parameters Provides annotations and tools for turning Kotlin properties into introspectable parameters. Used by orx-gui to automatically generate user interfaces.
orx-property-watchers Tools for setting up property watcher based pipelines
orx-quadtree A Quadtree is a spatial partioning tree structure meant to provide fast spatial queries such as nearest points within a range.
orx-shade-styles Shader based fills and strokes, including various types of gradient fills.
orx-shader-phrases A library that provides a #pragma import statement for shaders.
orx-shapes Collection of 2D shape generators and modifiers.
orx-temporal-blur 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 A collection of time-sensitive functions aimed at controlling raw data over-time, such as Envelope and LFO.
orx-timer Simple timer functionality providing repeat, to run code with a given interval and timeOut, to run code once after a given delay.
orx-triangulation Delaunay triangulation and Voronoi diagrams.
orx-turtle Bezier (ShapeContour) backed turtle graphics.
orx-view-box To create independent views inside one program window.

JVM only

name                                     description
orx-boofcv Helper functions to ease working with the BoofCV computer vision library and its data types.
orx-chataigne Expose variables to Chataigne and any other applications that can interface with it. The current implementation makes use of the OSC protocol and supports Double and ColorRGBa.
orx-dnk3 A scene graph based 3d renderer with support for Gltf based assets
orx-expression-evaluator Tools to evaluate strings containing mathematical expressions.
orx-file-watcher Monitor files on disk and auto-reload them if they change.
orx-git-archiver An extension that hooks into Program.requestAssets to commit changed code to Git and provide filenames based on the commit hash.
orx-git-archiver-gradle A Gradle plugin that turns a git history and screenshots directory into a markdown file.
orx-gui Automatic UI (sliders, buttons, etc.) generated from annotated classes and properties. Uses orx-panel and orx-parameters.
orx-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.
orx-kinect-v1 Support for the Kinect V1 RGB+Depth camera.
orx-midi MIDI support for keyboards and controllers. Send and receive note and control change events. Bind inputs to variables.
orx-minim Simplifies working with the Minim sound library. Provides sound synthesis and analysis.
orx-olive Provides live coding functionality: updates a running OPENRNDR program when you save your changes.
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.
orx-panel The OPENRNDR UI toolkit. Provides buttons, sliders, text, a color picker and much more. HTML/CSS-like.
orx-poisson-fill Post processing effect that fills transparent parts of the image interpolating the edge pixel colors. GPU-based.
orx-rabbit-control Creates a web-based remote UI to control your OPENRNDR program from a mobile device or a different computer. Alternative to orx-gui.
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.
orx-syphon Send frames to- and from OPENRNDR to other applications in real time using Syphon for Mac.
orx-video-profiles GIF, H265, PNG, Prores, TIFF and Webp VideoWriterProfiles for ScreenRecorder and VideoWriter.

Developer notes

Publish and use local builds of the library in your applications

First, build and publish OPENRNDR to the local maven repository:

Run (or import in IntelliJ IDEA and edit the run configuration).

# In openrndr repository
./gradlew publishToMavenLocal snapshot

This command will build and publish a snapshot of the next version of the library. For example, if the current latest release is 0.4.2, then it will create a release named "0.4.3-SNAPSHOT" and publish it to your local maven repository. The exact version will be shown in the console output during the build process.

Now you can run the same command again but for this repository.

# In orx repository
./gradlew publishToMavenLocal snapshot

It will automatically use the locally published snapshot of OPENRNDR for building ORX and will publish ORX to your local maven repository with the same logic as before.

Once that's done, you can use the local build of ORX in your openrndr-template by specifying the version you published. In this case, it would be "0.4.3-SNAPSHOT".

More Repositories

1

openrndr

OPENRNDR. A Kotlin/JVM library for creative coding, real-time and interactive graphics
Kotlin
880
star
2

openrndr-template

A feature rich template for creating OPENRNDR programs based on Gradle/Kts
Kotlin
74
star
3

openrndr-tutorials

(Abandoned) Tutorial repository accompanying http://guide.openrndr.org
Kotlin
32
star
4

openrndr-examples

A repository of example programs for the OPENRNDR creative coding framework
Kotlin
25
star
5

openrndr-guide

Source files for the OPENRNDR guide
Kotlin
21
star
6

orml

OPENRNDR Machine Learning
Kotlin
17
star
7

awesome-openrndr

Community maintained list of OPENRNDR based and related projects
JavaScript
13
star
8

workshop-generative-posters

Code for the workshop Generative and Data-Driven Posters
HTML
12
star
9

openrndr-panel

Panel the user interface toolkit for OPENRNDR
Kotlin
9
star
10

openrndr-js-template

OPENRNDR + Kotlin/JS template
Kotlin
9
star
11

setup-opengl

Sets up an SWR based OpenGL environment for use in GitHub Actions workflows
JavaScript
8
star
12

openrndr-gradle-template

(Abandoned) A ready-to-go template for a Gradle-based OPENRNDR project
Kotlin
6
star
13

workshop-generative-identities

Kotlin
6
star
14

openrndr-intellij

OPENRNDR plugin for IntelliJ
Kotlin
6
star
15

orsl

A shader language in Kotlin DSL.
Kotlin
4
star
16

openrndr-workshop-live-posters

Repository with live posters
HTML
2
star
17

workshop-data-posters

OPENRNDR workshop data-driven posters
Kotlin
2
star
18

openrndr-x-boofcv

BoofCV examples ported to OPENRNDR+Kotlin
Kotlin
2
star
19

workshop-tumo

Repo for workshop at TUMO
HTML
2
star
20

software-cameras

Software cameras workshop/lecture code
Kotlin
1
star
21

openrndr-intellij-settings

A collection of carefully tuned settings for IntelliJ IDEA to maximize productivity
1
star
22

dokgen

Generate documentation from annotated Kotlin source code.
Kotlin
1
star
23

workshop-greyspace

Project files for the OPENRNDR work at the Grey Space in The Middle. Covers audio, video, MIDI and OSC
Kotlin
1
star
24

openrndr-dev-template

A mono repo that includes openrndr, orx, openrndr-template and openrndr-js-template submodules
1
star
25

openrndr-panel-examples

Example for openrndr-panel
Kotlin
1
star
26

openrndr-demos-span-2018

Kotlin
1
star