New versions of Processing Libraries Camera3D and ColorBlindness released

After many years of no activity I have released new versions of the Camera3D and ColorBlindness libraries for Processing. I suspect that both libraries are no longer used by the Processing community because much of the functionality and example code didn’t work correctly on MacOS high density displays and nobody said anything. :frowning: These releases refresh the example code, fix some problems, and add some new features. I have also updated the documentation for both libraries.

Here’s what’s new with Camera3D:

  • Added ChromaDepth renderer along with documentation and examples
  • Added Depth Map renderer along with documentation and examples
  • Fixed high density display problems on MacOS
  • Updated all example code to work with Processing 4.x
  • Updated build process to use Gradle and match the Processing Library
    Template
  • Updated documentation and Javadocs

The ChromaDepth renderer creates 3D images that can be viewed with ChromaDepth glasses. See my 2020 holiday animation for an example of ChromaDepth in action.

The depth map renderer creates images that are great for use with a ControlNet and generative AI.

You can learn more about the Camera3D library on the documentation page.

Here’s what’s new with ColorBlindness:

  • Corrected simulation algorithm for achromatopsia
  • Corrected daltonization algorithm for deuteranopia and tritanopia
  • Removed daltonization for achromatopsia and blue cone monochromacy
  • Fixed high density display problems on MacOS
  • Updated all example code to work with Processing 4.x
  • Updated build process to use Gradle and match the Processing Library
    Template
  • Updated documentation and Javadocs

You can learn more about the ColorBlindness library on the documentation page.

Both libraries are great. Please use them!

In closing, I’d also like to advocate for the idea of building Processing extensions such as these. For those looking to contribute to open source, this is a great opportunity for being responsible for a small software project that other people use. In addition, building both of these libraries taught me much about the inner workings of Processing that became the foundation of later projects such as py5.

3 Likes