映像をアプリ間でシェアできるライブラリ Syphon 。Processing では、FullScreen Library が使えなくて困っていたので、 Max6 に映像送って全画面化して使ってます。
Processing から Syphon Server へ映像を送る時に、Example には createGraphics した PGraphics にオフスクリーンで描画しておいて、PGraphics を Sypohon サーバーに送るという方法が書かれています。ただし、途中まで作ってSyphon化したい時なんかに、描画命令全部を拾って PGraphicsするのは面倒くさいです・・・。実は、もっと簡単な方法があります。
import processing.opengl.*; import codeanticode.syphon.*; SyphonServer server; void setup(){ // Create syhpon server to send frames out. server = new SyphonServer(this, "Processing Syphon"); } void draw(){ //いつもの通りアプリを書く //syphon server へ映像を送る server.sendImage(g); }
以上でできました。Processing の PApplet のドキュメントを読むと g というPGraphics型の変数が定義されています。Processing の内部的には、gに対して色々と描画をしていたようです。