TOPIC > ARTICLE

世界各地からメンバーが集結 – openFrameworks開発者会議 in デトロイト、レポート

March 12, 2012(Mon)|

photo

参加メンバーで恒例のoFサイン

2012年2月20日から2月27日にかけて、デトロイトにおいてopenFrameworksの開発者会議が開催された。筆者もこの会議に参加し、openFrameworksの今後の展望を知ることができた。コアなoF開発者達の技術や開発に対する姿勢にとても刺激を受けた一週間だった。また、会期中には「ペチャクチャ」形式によるプレゼンテーションや、地元のユーザを対象にしたワークショップが開催されるなど、盛り沢山の内容であった。ここにレポートとして報告したい。

Article by Atsushi Tadokoro
http://yoppa.org/

※openFrameworksについて
このレポートはopenFrameworksとは何かということを漠然とは理解している方に向けて書いている。もし、まだopenFrameworksとは何かということについてなじみの無い方は、以下のリンクの資料を参考にして欲しい。


会議の概要


今回のopenFrameworksの開発会議は、フォード財団からのサポートを受けた関係もあり、デトロイトで開催することとなった。開発会議のメイン会場となったのはデトロイト市のダウンタウンのすぐそばにあるomniCorp Detroitというスペースだ。二階建ての建物全体が巨大なハッカースペースのようになっていて、普段から様々なイベントやワークショップが盛んに行われているようだ。会場にはArduinoや様々なデバイス、Maker botの3Dプリンターや各種工作機械、さらには謎のジャンク機材などがところ狭しと積み上げられ、いかにもハッカー達の巣窟といったムードであった。

オフィシャルな開発者達による会合が催されるのは、今回で二回目で、初回は昨年ピッツバーグのカーネギーメロン大学にあるSTUDIO for Creative Inquiryで行なわれた(昨年の会議の様子)。ここでの成果がopenFrameworks v007として結実した。今回もこうして開発者達が一同に会して集中して開発することで、openFrameworksを一気に拡充・進化させようというねらいだ。

会議には、Zach LiebermanTheo WatsonArturo Castroの主要メンバーを始め、全体のアドバイザー的存在であるGolan Levin、さらにはPatricio Gonzalez VivoDan WilcoxKeith PaskoKyle McDonaldJason Van CleaveRoy MacdonaldChristoph BuchnerDamian StewartJames GeorgeJeff CrouseTodd Vanderlinといった開発メンバー達が集結した。ニューヨーク、ボストン、ピッツバーグ、デトロイト、サンフランシスコ、といったアメリカ国内からはもちろん、スペイン、オーストリア、アルゼンチン、チリ、ニュージーランド、東京と、まさに世界各地を網羅するものであった。

photo
omniCorp Detroitの様子、PCの脇にはMakerBot

photo
オシレータやオシロスコープ? そこら中に謎のデバイスが山積

photo
作業スペースは広い(そして寒い…)

photo
開発作業に没頭するメンバー達

photo
夜中になっても開発は続く、Mac率高し

photo
スペースにはキッチンも併設されていて、ギーク達がクッキング

photo
寝ている時間と食事以外のほとんどの時間はノートブックが膝の上に…

photo
お互いのコードを批評しながら開発していく

photo
さらにコーディング…




会議の目標


今回の会議の目標は、大きく分けて二つある。

チュートリアル、サンプル、ドキュメントの拡充

一つは、チュートリアル、サンプル、ドキュメントの拡充である。openFrameworksの関連資料はオフィシャルサイトであるopenFrameworks.ccにまとめてあるものの、例えばProcessingなどの類似するプロジェクトと比較すると、あまり親切とはいい難い。そこで、今回は、チュートリアル、サンプル、ドキュメントを集中的に作成していこうというのが会の主眼の一つとなった。

開発者それぞれの得意分野ごとに、様々なジャンルのプログラムサンプルを大量に作成し、さらには、初心者から上級者までをカバーするチュートリアルとドキュメントの執筆が集中的に行われた。新規ユーザーがopenFrameworksのような開発環境に触れる場合、いかにサンプルプログラムやドキュメント類が充実しているかということがとても大事だ。今回の成果は今後のopenFrameworksの普及や発展にとって、とても有意義なものであった。

Kyle McDonaldによって、数々の素晴しいサンプルプログラムのスクリーンショットがFlickerのアルバムにまとめられている。openFrameworks v.0071で可能となる様々な表現や機能を感じることできるだろう。

openFrameworks 0071 examples – a set on Flickr

今回の会議内で開発されたサンプルはバージョン0071に付属する予定だが、現在も開発者用のGitリポジトリで入手可能である。興味のある方は、下記のリポジトリをcloneして試してみて欲しい。

openFrameworks Git (develop tree)


Point as Texture
points as textures
Shaderによるポイント状のテクスチャの描画

Point as Texture
math/noiseField2dExample
Perlin noiseによって生成される平面パターン

Point as Texture
noise 1d example
ofSignedNoise()関数でロボットの関節をアニメーション

Point as Texture
normals example
3次元メッシュの法線ベクトルを算出


instagramlike filters example
カメラ映像をInstagram風に加工

openFrameworks開発ロードマップ


もう一つの会議の大きな目的は、openFrameworksの今後の開発ロードマップの話し合いだ。openFrameworksはそもそもオリジナルな実体があるわけではなく、OpenGLを始めとした様々なライブラリー群をつなぎ合わせる「糊」のようなものである。さらに様々な技術がアドオンという方法で貪欲に吸収され続けている。こうした現状を踏まえて、今後openFrameworksのコアはどのような方向へ進化していくのかについて活発な議論が展開された。様々なトピックスが話しあわれたが、次期バージョンであるver.0071に向けての大きなトピックスとしてはプロジェクト・ジェネレーターの導入とGUIの進化が挙げられる。

プロジェクト・ジェネレーター

次期バージョンに向けて進められている開発の中で最も劇的な変化をもたらすものが、このプロジェクト・ジェネレーターだろう。

これまでopenFrameworksでは、新規にプロジェクトを作成する際には、所定のフォルダーに空のテンプレートプロジェクトをフォルダーごとコピーしてカスタマイズするという、少し面倒な作業が必要だった。最初にopenFrameworksに触れるユーザーがまず戸惑うのはこの新規プロジェクトの作成手順だったのではないだろうか。

プロジェクト・ジェネレータは、このプロジェクトフォルダを自動生成するアプリケーションで、これを使用することでワンクリックで簡単に新規プロジェクトが生成可能となった。さらに、作成したプロジェクトからopenFrameworksのコアライブラリー群へのパスの設定は相対パスとして動的に生成されるため、これまでのようにapps以下の任意のフォルダの下でなくても、自由な場所でプロジェクトを生成できるようになり、プロジェクトの管理がぐっと簡単になった。使用するアドオンもチェックボックスから選択するだけで簡単に追加可能となり、XCodeなどのIDEに不慣れなユーザーでもすぐに自身のプロジェクトを生成可能となり、初心者にとってoF導入はずっとわかり易いものになっただろう。


プロジェクト・ジェネレーター projectGenerator

GUI
現在、GUI機能を付加するアドオンは、ofxControlpanel、ofxSimpleGuiToo、ofxUI、ofxGui、ofxTweakbarなど数多く存在している。多様性という意味では良いことではあるが、それぞれのプロジェクトの互換性はなく操作の一貫性もないので、全体としてばらばらな印象は否めない感があった。

コア開発チームでは、現在ofxGuiをよりシンプルで協力なアドオンになるよう様々な改良を加えていて、このofxGUIがオフィシャルなGUIとしていずれはofGuiという位置付けでコアライブラリに吸収されていく予定だ。

Point as Texture
addons/guiExample
ofxGuiのデモ

イベント/ワークショップ


デトロイトでの滞在中には、開発作業と並行して、いくつかのイベントが開催された。

ペチャクチャナイト


2月26日の夕方からは、デトロイトの現代美術館Museum of Contemporary Art Detroitにおいて、地元のアーティスト達や、現在デトロイトに滞在中のoF初期メンバーの一人Evan Rothのプレゼンと共に、Zach LierbermanによるopenFrameworksの概要のプレゼンと、それを受けてGolan Levin、James George、Damian Stewart、Patricio Gonzalez Vivo、Kyle McDonald、Jeff Crouseらによる、1枚20秒だけ表示されるスライド20枚による「ペチャクチャ」形式でのプレゼンテーションが行われた。プロジェクトの内容は多岐にわたり、openFrameworksの可能性を大いに感じさせるものであった。

workshop image
Zach Lierberman

workshop image
Evan Roth

workshop image
James George

workshop image
Damian Stewart

workshop image
Patricio Gonzalez Vivo

workshop image
Kyle McDonald

workshop image
Jeff Crouse

workshop image
Evan Roth


ワークショップ


翌日27日には、地元の教会の地下にある地域コミュニティーによって運営されるMakerスペースMt Elliott Makerspaceを会場に、Discotech(Discovering Technology) + openFrameworksと題されたワークショップが開催された。

参加者は、openFrameworksには初めて触れるものの、ある程度プログラムの経験はあるというレベル。まず初めにZach LiebermanによるopenFrameworksの概要とその理念についてざっと説明をした後、パーソンズ大学でも教鞭をとるJeff CrouseによるopenFrameworksの初心者向けのワークショップが行われた。開発メンバーでもあるJeff Crouseによるワークショップは、初心者にもイメージしやすいよう比喩や具体的なサンプルを織り交ぜながら構成されたとてもわかり易いもので、筆者にとってもとても参考になるものであった。

後半は再度Zach Liebermanにバトンタッチし、OpenCVやFaceTrackerなどより高度な技術を用いた様々なサンプルを紹介しながら、openFramworksの拡がりを感じさせるワークショップが行われた。FaceTrackerを用いたサンプルはここでも好評で、魅力的なプログラムは場所や文化を越えるパワーがあると実感させられた。

最後は開発メンバー総出演で参加者の質問に答えたり、各々がデモを個別に披露したりといった交流の場となった。全体として非常に濃密でありながら楽しいワークショップであった。

workshop image
Zach LierbermanによるoF概要の解説

workshop image
oFの目標とは?

workshop image
Jeff CrouseによるoFイントロダクション

workshop image
参加者は開発者達に質問しながら実際に試していく

workshop image
女性の参加者も

workshop image
最新のサンプルをデモ

workshop image
解説はとてもわかりやすい

workshop image
ワークショップ風景

workshop image
ワークショップ風景

workshop image
Todd VanderlinによるiPhoneでのofxOpenCVのデモ

workshop image
ofxFaceTracerのデモ

workshop image
Arturo Castroさんいい笑顔

workshop image
参加者もとても楽しそう

workshop image
FaceTrackerで遊んでみる

workshop image
それぞれのテーブルで開発者達との交流が


まとめ


今回の会議に参加して感じたのは、openFrameworksの開発者達のエネルギーとスピード感だ。まず全員で開発方針を徹底的に議論し、そこで各分野のエキスパート達が様々な知識を提供し合う。そこで決定した方針は、随時掲示板やチャットなどで確認しながら、個別に集中してコーディングが進められていく。それぞれが、プロフェッショナルとして互いに尊重している様子が感じられ、成功するオープンソースプロジェクトはこうした開発者間でモチベーションを高める空気がとても大事なものなのだと気づかされた。

こうしたコミュニティーのムードはZach Liebermanの人柄によるところも大きいように思う。Zachだけでなく開発メンバーは、皆揃ってとても気さくで親切な方ばかりであった。

導入の部分で、世界各国から開発者が揃ったと書いたのだが、日本を含めアジア地域からの参加は、実は筆者以外はいなかった。日本の開発者で腕に自信のある方は、ぜひ次回の会議に積極的に参加して欲しいと思う。実際に会って、しばらくの間文字通り寝食を共にすることで得られるものは決して少なくないだろう。

個人的には、プログラムのコアな開発にはほとんど貢献できなかったこともあり、期間中は個人プロジェクトとして、openFrameworksのWebサイトの日本語化を集中して行っていた。現在も、openFrameworks.jpで随時翻訳しながら公開している。
翻訳を手伝ってくださる方がいたら、是非連絡を頂きたい。( tadokoro [at] gmail.com )


openFrameworks.jp


プロフィール
田所 淳 (@tadokoro)
TADOKORO, Atsushi

http://yoppa.org/

1972年千葉県生まれ。NTT InterCommunication Centerでの技術スタッフ、Webプロダクションなどを経て、現在はフリーランス。Webサイト制作から、openFrameworksを使用したアプリケーション開発など、インタラクションをテーマにデザイン・プログラミングを行なう。また並行して、コンピュータを使用したアルゴリズミックな作曲や、即興演奏を行なっている。2002年から多摩美術大学情報デザイン学科非常勤講師、2011年から東京藝術大学芸術情報センター非常勤講師。著書に『Beyond Interaction -メディアアートのためのopenFrameworksプログラミング入門』田所 淳、比嘉 了、久保田 晃弘(共著)、ビー・エヌ・エヌ新社、2010年。


CBCNET:WORK

PNRM WEBSHOP
CBCNET WORK