ソース https://github.com/bi3mer/adjust.h
動画 https://www.youtube.com/watch?v=9eIXOygjPvw
以前 LIve++ を試して、ホットリロードは確かにできるけど、再コンパイル時間がかかりすぎてあまり有効ではなくてがっかりしていたのだけれど、再コンパイルが要らない というものを見つけてちょっと感動した。
adjust.h の仕組みはシンプルで、C++のマクロの __FILE__ と __LINE__ を活用し、ファイル名とファイル行を取得して、一意の辞書を作って値を管理しつつ、reload時にはファイルを再コンパイルするのではなくてファイルを直接読み出しにいって、ADJUST_FLOAT などを検索して素朴にその行だけ軽くパースするというもの。
シンプルだけれどとても強力で、良いなと思った。
https://github.com/funatsufumiya/ofxAdjustH
oFでも気楽に使えるように少しフォークして機能追加してみたけど、なかなか楽しい。ofxWatchFile とかと組み合わせればファイル変更を追尾することもできると思う。
現時点ではImGuiやLua等とそんなに変わりがないけれど、使い方と機能追加によってはもっと楽しくなるんじゃないだろうか。