更新日 2007.08.13
Director Xtra の開発(Director Xtra development)
Adobe (Macromedia) Director は、CD-ROMコンテンツや展示用キオスク端末コンテンツなどの開発においてデファクトスタンダードなコンテンツオーサリングツールです。画像やムービー、Flash、BGMや効果音、インタラクティブな3Dコンテンツなど極めて多様なメディアを容易に扱えるとともに、LINGO や JavaScript による細かな動作制御が可能です。
また Director で開発されたコンテンツはスタンドアロンアプリケーション(プロジェクタと呼ばれます)として書き出すことができるほか、ウェブブラウザ上で動作する Shockwave コンテンツとしての書き出しも可能です。またこれらのコンテンツは、基本的に Windows および Macintosh 用のマルチプラットフォーム対応として作成することが可能になっています。
このように強力なコンテンツ開発プラットフォームである Director において、その最も強力な機能のひとつが Xtra による機能拡張性です。Xtra とは Director の専用プラグインのことで、これを開発することによって Director の機能を自由に拡張できます。この Xtra を開発することによって、さらに多様なメディアを扱ったり、独自の外部入出力デバイスとの通信なども可能になります。 Xtra からは Windows や MacOS などの動作環境OSのあらゆる機能にアクセスできるため、事実上そのPC動作環境で可能なあらゆることが Director から実現可能になります。
Xtra の開発によって、Director の機能を拡張するというだけでなく、独自のコンテンツを Xtra として Director 内に埋め込むこともできます。これにより、Director が備える豊富なメディア制御機能を活用し、Director をビジュアルなインターフェースの作成やメディアリッチなコンテンツの開発基盤とすることができます。
Director はマルチメディアコンテンツのデファクトスタンダードとして長い歴史と広く層の厚いコンテンツ開発者コミュニティ、膨大なノウハウの蓄積があります。Director を基盤としたコンテンツ制作では、経験豊かなマルチメディアコンテンツ制作者との共同開発ができる点も大きなメリットです。
開発の基礎
Director Xtra の開発に関する情報は Macromedia Xtras Developer Support から得られます。Xtra の開発キット(XDK)は無償で入手可能ですが、コンテンツの開発や動作テストにはもちろん Director が必要です。既存の Xtra は Director Exchange から見つけることができます。開発者の集まるメーリングリスト(英語)もあります。
Xtra は開発者が少なく、特に国内ではほとんど開発者向けの情報が得られません。そのため、開発にあたっては海外のサイトから限られた情報を探していくことになります。
Xtra の開発には、Windows では Microsoft VisualStudio、Macintosh では Metrowerks CodeWarrior を利用します。 Macintosh 用の CodeWarrior の開発が停止し入手できなくなった現在、Xtra が XCode で開発できないことは開発コミュニティでも問題になっています。Universal Binary にも対応した Director のアップデートが待たれます。
Xtra の種類
スプライトXtra
新しい種類の Director コンテンツ上に表示されるオブジェクト(スプライト)を追加するタイプの Xtra です。インタラクティブなオブジェクトや OpenGL による 3D オブジェクトなど、あらゆる種類のメディアを取り扱うことが可能になります。
トランジションXtra
Directorコンテンツの画面切り替え効果であるトランジションに、独自の効果を追加するタイプの Xtra です。
スクリプティングXtra
表示オブジェクトを伴わない、Director の LINGO スクリプトの命令を追加するタイプの Xtra です。高速な計算を必要とする場合、OSの特定の機能にアクセスする場合、外部入出力デバイスと通信を行う場合など、アイデア次第で様々な機能拡張が可能です。
ツールXtra
オーサリング環境である Director 自体の機能を拡張するタイプの Xtra です。オーサリングの際の繰り返し作業の効率化などが可能になります。
Xtra の開発例
当ウェブサイトの各ページで紹介しているように、当方では様々な Xtra の開発を頻繁に行っています。 Director コンテンツにクロスプラットフォームなウェブブラウザの埋め込みを実現する WebViewer Xtra や、外部入出力デバイスとの通信の例として、触覚フィードバックデバイス PHANToM との通信を行う PHANToM Xtra や自律型ロボット AIBO との通信制御を行う AIBO Xtra などを開発してきました。また、太陽系シミュレーターを初めとした様々な可視化コンテンツも Xtra 化を行うことで、オンラインの Shockwave コンテンツや Director によるグラフィカルなユーザーインターフェースの作り込みを可能にしています。