デジタルロストワールド計画(2)

デジタルスタジオの構築とPureData上への実装について
平野砂峰旅    宇佐見義之   北岡正敏
shirano@nn.iij4u.or.jp  usami@phsu1.phsc.kanagawa-u.ac.jp
神奈川大学 工学部

デジタルロストワールド計画のデジタルスタジオの構成。デジタルロストワールド計画のインタラクティブシステムを実現するソフトウエア開発環境としてのPure Dataの有効性。そして絶滅した生物の3DCGをPureData上への実装した例を紹介する。
 


Digital Lost World Project(2)

An architecture of Digital Lost world studio and its inplementation on "PureData"

Saburo Hirano,Yoshiyuki Usami,Masatoshi Kitaoka
Kanagawa University.

We describe the digital syudio's compositon. And advantation of the "PureData" software to realize its interactive system.We intorduce how to develop extinct animals by 3D Computer Graphics on "PureData".


1:デジタルスタジオ

古代の生態系を再現するインターラクティブなメディア空間を実現すべくデジタルスタジオを構築中である、ここではそのハードウエアを中心に紹介する。Fig1にデジタルスタジオの構成図を示す。コンピュータの利用としては、主にWindowsNTでCGの制作、SGIのO2でリアルタイムの3DCG、Macintoshで音響合成及びシンセサイザーの制御を行なっている。それぞれのマシンは、10BaseTのイーサネットで接続されている。O2で作成されたリアルタイムのCGはビデオプロジェクターでスクリーンに映しだされ、シンセサイザー等で合成された音はYAMAHA O2Rデジタルミキサーを介して4chで再生される。またインタラクティブシステムを構成するための入力デバイスである、センサー系については、人の動きを感知する焦電センサー、12チャンネルの光センサーの他、 YAMAHA MIBURIによる簡易モーションキャプチャー等が現在MIDIあるいはRS232Cでコンピュータに入力できるようになっている。
BLOCK DIAGRAM of Digital Lost World Project
[Fig 1] BlockDiagram of Digital Studio
次にソフトウエアの構成について述べていく。まずO2上には、ソフト開発のためのC及びC++コンパイラー、OpenGLのライブラリーと次節で紹介するPdがあり、主にリアルタイムの3DCGの演算及び外部センサー機器のデータ処理に利用される。Macintoshには、開発環境としてはMAX、MSPが用意され、またミュージックシーケンサーとしてCUBASEを用意している。Macintoshでは、主にMIDIを介してのデータ入出力と音響信号処理のソフトを実行する。WindowsNTでは、LightWave 3Dを用いて3DCGの制作を行っている。Table.1にコンピュータとその主なソフトウエアの一覧をまた、Table.2にはその他の主なハードウエアの一覧を示す。
Hardware  Software 
SGI O2 (R5000180MHz)  C,C++ compiler, PureData 
Power Macintosh 7600/200  with Korg1212IO  CUBASE VST, MAX,MSP 
WindowsNT (Dual Pentinum2 333MHz)  LightWave 3D, PolyTrans 
Table.1 Computer&Software 
 
 
Synthesizers  Korg T1,M1,Wavestation A/D 
YAMAHA TG77,TX81Z ,MIBURI 
Digital DRUM  YAMAHA DTX Ver2. 
Digital Mixer  YAMAHA O2R 
Video Mixer  VIDEONICS MX-1 
Amplifier  YAMAHA P4050 
Loud speakers  YAMAHA WF206 * 4 
Projector  Victor DLA-G10 
Table.2 Equipments 

2:PureData

Pd(PureData)とは、MAXの開発者の一人である Miller S.Pucketteによって開発中のMAXライクなユーザーインターフェイスを持つIRIX,Linux,Windows(95,NT)上で動作する音響信号処理ソフトである。[1][2]PureDataでは、音響信号処理だけではなくGEM(Graphics Environment for Multimedia) ライブラリーを包含して、音響信号処理と同じ環境でOpenGLによる3次元コンピュータグラフィックスのリアルタイム制御を可能 にしている。[3]Pdは、 開発中であってそのオブジェクトやドキュメントは非常に限られたものであり、信号処理のオブジェクトはまだ、20個程度の 基本的なものしかない。しかしその中には、MIDIやRS232Cの入出力、音響信号の入出力、リアルタイム画像の取り込み、UDPを用いたnetworkを介しての通信といった、コンピュータと外部の機器との接続を容易に構築できるオブジェクトが既に揃っている。さらにPureDataの名前はPureDataの他にPublicDomainという意味も込めているという。このためもあって、Pd及びGEMはそれぞれC言語、C++言語で記述されているが、そのソースコードも全て公開されている。しかしながら、現在開発中のためもあって、まだドキュメントは貧弱であるし、仕様もバージョンアップにより変化している部分もある。またPdは、TCL/Tk(Tcl tool kit)によってそのGUIがインプリメントされている。このために移植性の高いものになっている。さらにPdによって作られたパッチファイルは、MAX/FTSとの互換性を考慮されていて外部オブジェクトのソースコードも できるだけ共通性を持たせ、makefileの変更でMAX/FTS用のオブジェクトやWindows上で動作するオブジェクトをコンパイ ルできるように考えられている。

3:PureDataへの実装

デジタルスタジオを実現するための開発環境として前節で紹介したPureDataを採用している。その理由として以下の点が挙げられる。
  1. グラフィックプログラミングか可能で、さらにプログラムを実行させながらプログラミング可能である。
  2. 音響信号処理と3DCGが同時に扱える。
  3. MIDI,RS232C等を通じての外部デバイスとの接続が容易である。
  4. TCP/IPを通じての分散コンピューティングが可能である。
  5. ソースコードが全て公開されている。
PureDataへの新規オブジェクトの追加は、プログラム本体の中に含めてしまう方法と外部オブジェクトという形態で起動時にライブラリーをリンクする方法があり、GEMはライブラリーを追加することによってPdにOpenGLによる3DCGの機能を実現している。現在、アノマロカリス様の生物の実装は進化的計算で得られた動き[4]もあわせて、GEMのライブラリーを拡張する形で行われている。これは、当初のアノマロカリスの行動能可視化プログラムがOpenGLを用いてC言語で記述されているため同じOpenGLを用いたライブラリーにオブジェクトを付加する方がお互いのプログラムの資源を共有できるからである。このようにすることで、例えばアノマロカリスの動きの制御を音声で行っていたものを、MIDIでおこなうようにしたり、テクスチャマッピングの素材を既存静止画像から動画像に変更したりといったことが再コンパイルすることなくオブジェクトの接続変更や追加だけで容易に可能になる。つまりMAXの外部オブジェクトのように3DCGのプログラミングが可能である。アノマロカリスを例にとってオブジェクト作成のフローを紹介する。まず、進化アルゴリズムで得られた形態を基に3DCGソフトであるLightWave3Dでモデリングを行う。このときに、可動部分であるヒレなどは別のオブジェクトは分けて保存する必要がある。次にこのモデリングされたコードをPolyTransというソフトウエアでOpenGLのCソースコードに変換する。このソースコードと進化的計算で得られた動きのプログラムを組み合わせる。最後にこのプログラムをPureData上のオブジェクト用に書き変える。PureDataのオブジェクトとしてアノマロカリスは、そのテクスチャーや色、光源、視点などの設定はPureData上でインタラクティブに行うことができ、さらにセンサー等の外部デバイスによるコントロールも同様に可能になる。Fig.2にアノマロカリスの大きさが入力された音響信号の強さによって変化するPureDataのプログラムを例示する。
Pure Data Sample Program
[Fig.2] Sample Program

4:今後の計画

本プロジェクトは、開始して約半年であり、これまで述べてきたようにハード及びソフトの整備段階である。これまでの研究によって、PureDataを核とした開発環境が有効であるという実感が得られた。これからの課題としては、違った形態の生物を加えて、コンピュータ上での生物間のインタラクションとさらに人間とのインタラクションを実現していくことである。そのためには、より高機能のグラフィックワークステーションの導入やセンサーの開発が必要である。また、仮想空間への没入感をより深めるため2面ないしは3面へのプロジェクションを計画中である。さらに、このシステムをメディアインスタレーション作品、映像を伴うライブコンピュータミュージック作品への利用も予定している。


参考文献

[1]"Pure Data :Another integrated computer music environment." Miller S.Puckette  Proceedings the second intercollege computer music concerts,p37-41

[2]"Pure Data" Miller S.Puckette PROCEEDINGS ICMC97 p224-227

[3]"Real-time Image and Video Processing in GEM" Mark Danks PROCEEDINGS ICMC97 p220-223

[4] "Regeneration of Extinct Animals in Computer", Yoshiyuki Usami et al. submitted to the Proceedings. of International Conference of Complex Systems, Boston(1997).