# Porting Shadertoy Shaders to JRubyArt and Picrate

**URL:** https://discourse.processing.org/t/porting-shadertoy-shaders-to-jrubyart-and-picrate/23584
**Category:** Gallery
**Created:** [August 31, 2020, 2:24pm UTC](https://discourse.processing.org/t/porting-shadertoy-shaders-to-jrubyart-and-picrate/23584 "2020-08-31T14:24:24Z")
**Posts on this page:** 3
**Page:** 1

<div class="post-metadata">

### Author: ![monkstone](https://yyz2.discourse-cdn.com/flex036/user_avatar/discourse.processing.org/monkstone/32/64_2.png) [@monkstone](https://discourse.processing.org/u/monkstone)
#### Post date: [August 31, 2020, 2:24pm UTC](https://discourse.processing.org/t/porting-shadertoy-shaders-to-jrubyart-and-picrate/23584/1 "2020-08-31T14:24:25Z")

</div>

Previously @sableraph posted his tool for [vanilla processing](https://discourse.processing.org/t/porting-glsl-from-shadertoy-to-processing/2762). I’m in the process of providing an equivalent for [JRubyArt and PiCrate](https://github.com/monkstone/shadertoy2jruby_art). Here is the tool in action using the atom editor:-

 ![lenny](https://canada1.discourse-cdn.com/flex036/uploads/processingfoundation1/original/2X/7/73e17dcfe833f1730477735d787d04aab8faac75.png)

Using a simple example posted by [Leander Herzog](https://twitter.com/lennyjpg/status/1299865608675360769).

Note you get a list of unused parameters when run the default shader that you the easily remove with the open editor. In a more refined example I expect to make use of an ERB template.

---

<div class="post-metadata">

### Author: ![noel](https://yyz2.discourse-cdn.com/flex036/user_avatar/discourse.processing.org/noel/32/213_2.png) [@noel](https://discourse.processing.org/u/noel)
#### Post date: [August 31, 2020, 2:45pm UTC](https://discourse.processing.org/t/porting-shadertoy-shaders-to-jrubyart-and-picrate/23584/2 "2020-08-31T14:45:30Z")

</div>

Would be nice to have a JRubyArt mode in Processing’s IDE as well !

---

<div class="post-metadata">

### Author: ![monkstone](https://yyz2.discourse-cdn.com/flex036/user_avatar/discourse.processing.org/monkstone/32/64_2.png) [@monkstone](https://discourse.processing.org/u/monkstone)
#### Post date: [August 31, 2020, 6:20pm UTC](https://discourse.processing.org/t/porting-shadertoy-shaders-to-jrubyart-and-picrate/23584/3 "2020-08-31T18:20:34Z")

</div>

Tyfda san had a go at creating a [ruby-processing](https://github.com/tyfkda/processing-ruby-mode) mode, but I don’t think it would work well. JRubyArt and my other ruby-processing projects make it a strength to use ruby methods in preference to processing methods. The processing ide and its environment is somewhat antithetical to JRubyArt which is distributed as a ruby-gem and compatible (as is JRuby) with both gem and jar libraries. Also not being bound to an ide means that JRubyArt code is amenable to static code analysis using such tools as [rubocop](https://rubocop.org/) and [reek](https://github.com/troessner/reek) which can be accessed from [atom](https://atom.io/) and [geany](https://www.geany.org/) code editors for example.
