V_N feat. AVSS Vol.10 終了

8/25に渋谷axxcisにて開催されたV_N feat. AVSS Vol.10に出演してきました。上の動画は出演の前半部分より抜粋したものです(撮影協力:螢屋さん)。

V_Nは毎回お客さんも多く、それでいてアットホームな雰囲気のあるイベントということで、その雰囲気にだいぶ助けられました。機材セッティング的には少し新しい事を試したのですが、それが上手く動いたことにも手応えを感じています。

上の動画の最初の部分ではiELECTRIBEのソロ演奏をしています。途中からMacBook上のAbleton Liveクロスフェードし、そこからはTouchOSCを使ったワイヤレス・コントロールに切り替えています。最後の数分間は壊し系エフェクトを使った即興演奏をやっています。個人的にはその即興の辺りが最も実験的で面白い所だったりします。

ちなみに下のスクリーンショットは、その即興演奏の際に使ったTouchOSCのセッティングです。こんな感じで少なめのパラメーターで沢山のエフェクトをまとめて操作できるようにしておき、それらを思いつくままに動かして展開を作るというわけです。

掲載雑誌など

今月はアルバムのプロモーションの関係などがあって、色々と紙面に顔を出しています。

DTMマガジン2010年9月号

サウンド&レコーディング・マガジン9月号

本格的アプリ使いこなしマニュアル iPad+iPhoneで楽しむ楽器+音楽制作アプリ150

特にサウンド&レコーディング・マガジンは個人的に大好きな雑誌ですので、そこからインタビューを受けるというのはとても光栄なことでした。しかも砂原良徳さんの隣に名前が並ぶとは……感無量です。

iPhone/iPadゲーム開発ガイド

O'Reilly Japan - iPhone/iPadゲーム開発ガイド

来月9/3にオライリー・ジャパンより発売される「iPhone/iPadゲーム開発ガイド」に、日本語版の特別付録記事を寄稿させていただきました。

この本は、ゲーム制作に内容を絞ったiPhoneアプリ開発本です。他のiPhoneアプリ開発本とは違って、トラディショナルな2D・3Dゲームを制作するのに必要な事項だけを集中的に解説しています。ちょっとユニークなコンセプトの本です。

僕が寄稿した記事では、Box2Dを使った簡単なアプリの制作を行っています。最近、色々なところでBox2Dを使いまくっているのですが、いちばん使いでがあるのはiPhone上でのカジュアルゲーム制作だと思っています。この本でも触れておくべきだろうと考え、執筆した次第です。

上の写真は原著の英語版ですが、日本語版も似たような表紙になっています。書店で見かけましたら、ぜひお手に取ってみてください。

MmmTsssとopenFrameworks

MmmTsss Playful Looper

僕がopenFrameworksに興味を持ちはじめたのは、MITの学生が作った"MmmTsss"という実験的なソフトを見たことがきっかけだった。

MmmTsssは、いわゆるループレコーダーの一種だ。1小節のループの中に音を重ねていくことで音楽のようなものを作り出していく。使い方がとっても簡単で、誰でも遊び感覚で楽しむことができる。上のビデオを見れば、その楽しさはすぐに理解してもらえると思う。適当に音を重ねていくだけで、なんとなく音楽のようなものが出来上がってくるというのは、なかなか不思議な体験だ。

MmmTsssはopenFrameworksを使って作られている。ソースコードは公式フォーラムのこちらの書き込みから取得することができる。ソースコードを覗いてみれば、このプログラムがいかにシンプルな仕組みで動いているか分かるはずだ。ちなみに、音のピッチを変更する処理にはSoundTouchという外部ライブラリが使用されているようだ。

openFrameworksは、実際のプロダクトを制作するには適していない環境だけれど、このようなアイデアや思いつきの検証を行うには良い道具だと思う。

たとえるならば、openFrameworksは使える不用品がいっぱいに詰まったガレージみたいなものだと思う。立派なビルを立てたり、月探査ロケットを建造したりすることはできないけれど、出来合いのものを組み合わせて身近に役に立ちそうなものをサクっと創作することならできる。あとはそこにマクガイバー的な人がいれば、あっと驚くものを作ることだって可能だろう。

openFrameworksでiPadアプリを作る

openFrameworksは、なんだかごちゃごちゃっとしているけれど、使って楽しいフレームワークだ。Processingの思想を受け継ぎつつも、「もしProcessingがC++だったら、もっと色々なことが派手にできるぜ!」という奔放さを持ち合わせているような感じがする。

openFrameworksにはWindows版、Mac版、Linux版の他に、iPhone版が用意されている。iPhone版は少しビルド設定を変更すればiPadアプリの制作に利用することもできる。

上のビデオは、試しにopenFrameworksを利用して作ってみたiPadアプリの例だ。オーディオ入力レベルを算出し、それに比例した量で画面上のテキストを歪ませている。openFrameworksを使ってこんな感じのスケッチを作るのは非常に簡単だ。このスケッチのソースコードも60行程度しかない。

ごちゃっとしていて、ふわっとしていて、とにかく落ち着かない感じのフレームワークなのだけれど、映像や音を扱うための道具が一通り用意されているというのは、なかなか心強いことだ。実験的なプログラムの制作を行うには悪くない環境だと思う。特にモバイル性が必要とされる場面では、openFrameworksとiPhone/iPadの組みわせは即席の強力な道具になりうる。

最新のiPhone SDKで使うには

openFrameworksはiPhone版が用意されているものの、かなり古いものなので(iPhone SDK 2.0時代にリリースされたものらしい)、最新のiPhone SDK 4.0上で使用するには、いくつか注意すべき点がある。

まず、ベースSDKiPhone 2.0になってしまっているので、これを少なくともiPhone 3.2に変更しないとまともにビルドが出来ない。同時に、アーキテクチャやターゲットの設定も一通り整理しておく必要があるだろう。

次に、FreeImageライブラリがリンク時にエラーを出すという問題がある。この問題については公式フォーラム上で対処法を見つけることができる。特にこのスレッドでは、この問題への対処を済ませたFreeImageアーカイブが配布されている。これを使って解決するのが恐らく最も確実だ。

ゲームフレームワークLOVE

先日、IndieGames.comで"Not Tetris"というゲームが紹介されていた。

テトリスを模した物理シム系のゲームだ。シンプルなネタゲームだけれど、世界で最も有名であろうゲームボーイ版のテトリスに対するオマージュが感じられて面白い。

このゲームは"LOVE"という、スクリプト言語Luaをベースにしたフレームワークを使って制作されている。LOVEには2D物理エンジンとしてBox2Dが組み込まれているので、こういった物理シムを使ったゲームは比較的手軽に制作することができる。

以前、Luaを使った軽量なフレームワークは無いかと探していたときに、このLOVEの存在を偶然に知った。ユーザー数はさほど多くないけれど、軽量な設計や、整備されたドキュメント、マルチプラットフォームへの対応など、無難によくできている。ゲームプログラミングの入門には適した環境かもしれない。

余談

LOVEはよくできている。でも敢えて贅沢を言えば、これと同レベルのものがHTML5+JavaScriptで登場すればいいのに……と、個人的には考えている。この手のカジュアルゲームは、インストール不要で遊べることが必須だからだ。

LOVEには独立実行形式を生成する手段が用意されていて、インストールの手間は極力減らすことができるようになっている。ただそれでも、ダウンロードしてローカルに保存しなければいけないという時点で、プレイに対する障壁は格段に高くなってしまっていると思う。

JavaScriptベースでゲームフレームワークを構築することは可能だろうか?グラフィックに関してはcanvas要素を使ったライブラリがいくつか存在する。音に関しては、ブラウザによって対応がまちまちで(例えばFirefoxはmp3に対応していない)、現状は過渡的であると言わざるをえない。物理エンジンについてはBox2DのJavaScript版が既に存在していて、今後の発展の可能性を感じさせる。