連載
» 2008年12月17日 00時00分 公開

絵心がなくても簡単に絵が描けるProcessing(最終回):やっと出た! 公式版のProcessingを動画で確認しよう (1/3)

7年の時を経て、先月正式版がリリースされた描画プログラミング環境のProcessing。動画でプログラムを見てみよう

[田中孝太郎,collisions.doppac.cc]

外部ライブラリを使って高度なプログラムを作ろう

 アートやデザインに特化したプログラミング環境「Processing」を紹介するこの連載も、今回で第3回となります。最後となる今回は、Processingをさらに高度に扱うための外部ライブラリを使用したプログラミングについて紹介します。

公式リリース!

 前回の「Processingの対話式スケッチプログラミングで遊ぼう」掲載後、以前より予告されていたProcessing 1.0の公式リリースが11月24日に行われました。長らく(α版、β版の期間を合わせると、7年余り)開発版としてリリースされていたProcessingでしたが、公式なバージョン1.0に合わせて、標準APIの追加やシステムファイル構成の見直しが行われています。またアイコンやエディタ画面のボタンのテーマカラーなどが変更されており、公式バージョンを使っていることが分かるようになっています。

ベクタデータの読み込みが標準サポートされたProcessing 1.0 ベクタデータの読み込みが標準サポートされたProcessing 1.0

 バージョン1.0に合わせて追加された機能で大きなものとして、ベクタデータ読み込みの標準サポートがあります。これまでも外部ライブラリでSVG形式でのベクタデータファイルの読み込みを行うことができましたが、この機能がPShapeという標準クラスとして整備され、今後は標準機能として拡張されていくようです。将来は3次元モデルデータも読み込み可能になる予定とのことで、今後は既存のデータを用いたスケッチやプロトタイプが作りやすくなっていくことでしょう。

外部ライブラリを使用する

 前回の記事では、Processingの基本的な命令とマウス、キーボードでの入力を使ったプログラミングを紹介しました。しかし実際には、標準的な機能や入力インターフェイスを使うだけでは、作品や企画のアイデアが実現できないことも多いでしょう。むしろ、特殊なインターフェイスや先進的な機能を使うときにこそ、簡単なスケッチで効果をテストしながら機能を拡張していくProcessingのアプローチが有効になります。

 Processingでは標準の命令に含まれない機能を外部ライブラリとして拡張できる仕組みになっており、Processing本体に含まれる付属ライブラリに加え、活発なユーザーコミュティで開発されたさまざまな機能を実現するライブラリが日々開発されています。公式サイトのLibraryページで紹介されているものの中から、特徴的なものを紹介します。

Minimライブラリ(音声入出力)

 波形ファイルやmp3ファイルの再生、波形を指定しての音声出力、マイク入力、録音から周波数解析(FFT)やビート検出まで、音声の入出力にかかわるほとんどの処理を扱うことができるライブラリです。これまでいくつも提供されていたProcessingの音声ライブラリの中でも決定版と呼べるもので、バージョン1.0では公式に付属ライブラリとなりました。

Videoライブラリ(ライブカメラ、動画ファイル操作)

 USBカメラやDVカメラからのライブ動画や、QuickTimeムービーを操作できるライブラリです。動画のフレームはほかの画像と同様ピクセル操作が可能なため、映像にリアルタイムにエフェクトを掛けるようなプログラムを簡単に作れます。また逆にプログラムの画面をQuickTimeムービーにエンコードするクラスも用意されています。

OpenGLライブラリ

 プログラムや扱うグラフィックが複雑になってくると、グラフィックエンジンの処理能力が表現の制約になることがあります。「OpenGLライブラリ」はハードウェアでのアクセラレーションが可能な「OpenGL」のエンジンでグラフィックを描画できるライブラリです。連載第1回「芸術の秋にProcessingでスケッチプログラミングを始めてみよう」で紹介した「Magnetosphere」のようなプログラムは、このOpenGLライブラリの性能を駆使することで実現されています。

PDFライブラリ

 プログラムで生成したグラフィックを、モニターだけでなくPDF書類としても書き出すことができるライブラリです。線や塗りつぶしのデータをベクトルデータとして出力しているため、プリンタで大きく印刷できるグラフィックデザインの素材として使用できます。

ハードウェアドライバライブラリ

 MacBookに装備されている加速度センサーや明るさセンサーなど、マウスやキーボード以外のデバイス、センサーを使ったインタラクティブな作品を制作するためのさまざまなライブラリが提供されています(まだコミュニティで開発進行中の状態ですが、WiiリモコンをProcessingで使用するライブラリもあります)。

 また、電子回路や組み込みプログラムを誰でも簡単に扱うことができ最近注目されているデバイス開発環境「Arduino」や「Gainer」はProcessingとも関係の深いプロジェクトであり、Processingとも容易に連携することができます。

       1|2|3 次のページへ

Copyright © ITmedia, Inc. All Rights Reserved.

RSSについて

アイティメディアIDについて

メールマガジン登録

@ITのメールマガジンは、 もちろん、すべて無料です。ぜひメールマガジンをご購読ください。