第2章 - 基本概念
2.1 Lemur Editor
Lemurの主な特徴のひとつは、画面上に自分が必要なバーチャル・オブジェクトの種類を好きなだけ共存させられることです。そのため、あなたのアプリケーションと希望する操作性にぴったりマッチしたインターフェースをデザインすることが可能です。これを可能にするために、デュアル・プラットフォーム(Mac OS XとWindows)対応の強力なインターフェース・デザイン・ユーティリィ、Lemur Editorが提供されています。
2.2 Templates(テンプレート)
Lemur Editorでは、コントロール・テンプレート(プロジェクトとも呼ばれる)をインポートするか、白紙から丸ごと作ることが可能です。Lemur Editorで作られたテンプレートは、JZMLファイルとしてあなたのハードディスクに保存可能です。
また、テンプレートをLemur(iOSでバイス)の内蔵メモリに保存することも可能です。Lemur内のプロジェクトは、Settingsメニューの上段から参照できます。
2.3 Pages(ページ)
テンプレートは複数のページ(インターフェースとも呼ばれる)を持つことが出来ます。また、各ページは複数のオブジェクトを内包することが出来、それらをコンテナーに整理することも出来ます。テンプレートが持てるページ数やオブジェクト数はメモリーの空き容量によってのみ制限されるので、自由に創造力を発揮出来ることでしょう。
下図は3ページからなる典型的なLemurテンプレートの一例です。
Lemurにロードされたテンプレートでは、スクリーン上部のタブをタップすることにより他のページに切り替えることが出来ます。
2.4 Modules(モジュール)
さらに、既存のテンプレートの一部分をモジュールとしてインポートすることも可能です。モジュールは再利用可能なインターフェースのパーツで、JZLIBファイルとして保存されます。モジュールは、オブジェクトやコンテナー、そしてページさえも含むことが出来ます。Liineのウェブサイトから入手可能なモジュールもありますし、ご自身で再利用したいアイテムのライブラリを構築することも可能です。実際、Lemurページの好きな範囲を、将来再利用するためにモジュールとして保存可能です。この機能により、今後、同じ作業を二度する必要はありません。制作過程の各目的に特化したパーツをモジュールとして保存し、再利用可能なページ素材のライブラリを強化して行くのが良いでしょう。
Liineウェブサイトのユーザー・ライブラリーは、テンプレートやモジュールを集めたい方にとっての宝庫です。
2.5 Objects(オブジェクト)
Lemurの通信メッセージは主にオブジェクトで生成されます。オブジェクトが、あなたの指の動きを数値に変換するのです。Lemurには、それぞれ特性の異なるオブジェクトが多数用意されています。

Breakpoint(ブレークポイント)

Container(コンテナー)

CustomButton(カスタムボタン)

Fader(フェーダー)

MultiBall(マルチボール)

Knob(ノブ)

SurfaceLCD(サーフィスLCD)

Leds(LED)

Text(テキスト)

LemurMenu(Lemurメニュー)

Monitor(モニター)

MultiSlider(マルチスライダー)

Pads(パッド)

Range(レンジ)

RingArea(リングエリア)

SignalScope(シグナルスコープ)

Switches(スイッチ)
2.6 Variables(変数)
殆どのオブジェクトは、そのオブジェクトの状態を反映し、指でタッチしたときに変化するいくつかの変数を持っています。例えば、フェーダーのX変数は、フェーダー・キャップ(物理的なフェーダーを操作するときに触る部分)の位置を反映しますし、スイッチであればオン・オフを反映します。これらの変数は全て外部のソフトウェアからも、そして、スクリプトや、テンプレート内の他のオブジェクトからもコントロールできます。
これらの内蔵された変数に加え、Lemurでは自身で作成した数式に従うユーザー定義の変数も作成できます。
変数はオブジェクト中にローカルに存在し、外部からの参照はアドレスを用いるものもありますが、テンプレート内のオブジェクト全てが参照できるよう、グローバルに定義することも可能です。
変数は多次元の場合もあります。例えばノブはひとつの変数しか持ちませんが、マルチボールはボールのX・Y座標と、ボールの明るさを示すZ変数、合計3つの変数を持っています。また、マルチボールの変数は、いずれもボールの数だけ項を持った数列をなしています。
内蔵されたTime変数は特筆すべき特徴を持っています。Time変数は、Lemurが起動されてからの時間経過をミリ秒単位で表します。Lemurの他の関数や演算子と組み合わせれば、時間に応じて変化する数のシーケンスを各種生成できます。
2.7 Scripts(スクリプト)
スクリプトを使えば、特定の作業を特定の場合に実施するようLemurに指示できます。スイッチが投入されたときにマルチスライダーの色が変わるといった簡単なものから、マルチボールのボールが特定の軌道に沿うように指示するといった複雑なものまで、可能性は無限大です。
2.8 OSC
Lemurは、MIDIに比べてレイテンシーが小さい、データ容量が大きい、32bitの数値精度、柔軟性と設定の簡便さといった利点を持つOSC(Open Sound Control)プロトコルに対応しています。サポートするアプリ(Max/MSP、Reaktor、Circle、Modul8、 Resolume Avenue…) も増えつつあり、OSCはリアルタイム・コントロールとヒューマン・マシン・インターフェイシングの分野に新時代をもたらしました。
2.9 MIDI
もちろん、LemurはMIDIプロトコルにも対応し、全てのMIDIメッセージを送受信できます。内蔵された変数やユーザー定義の変数のいずれにも、自由にMIDIメッセージをアサインできるほか、スクリプトからメッセージを送信することや、受信したメッセージをきっかけにスクリプトを実行することも出来ます。
2.10 Lemur Daemon
Lemur Daemonはコンピューターのバックグラウンドで実行される小さなヘルパーアプリです。Lemurとコンピューター内のMIDIポート間のMIDIデータ通信を制御します。Lemur Daemonは起動時に自動的にあらゆるMIDIポート(コンピューターに接続されたハードウェアやバーチャルポートを含む)をスキャンし、ネットワーク内のLemurから接続できるようにします。さらに、MacではDaemon InputsとDaemon OutputsというLemur用のバーチャルポートも生成され、お使いのMIDI対応アプリから設定・使用できるようになります。PCとLemurでMIDIを使うには、loopMIDIやloopbe、MIDI Yokeといったサードパーティ製のMIDIポートを提供してくれるツールが必要です。
2.11 Targets(ターゲット)
ネットワーク指向のLemurは同時に複数のアプリケーションをコントロールしたり、複数のコンピューターで走らせたアプリケーションをコントロールすることが出来ます。各デバイス上の各アプリケーションは異なるTargetを経由してコントロールされます。Lemurには、8つのLemur Daemonターゲットと8つのOSCターゲットが装備されています。
Lemur DaemonターゲットはMIDI入力とMIDI出力のペアから成ります。OSCターゲットはIPアドレス(またはホスト名)とポートナンバーから成ります。それぞれの変数を異なるターゲットに割り当てたり、出力系の関数を含むスクリプトを使用することにより、どんなに複雑なセットアップでも1つのLemurページから全てをコントロールすることが出来ます。
Lemur Daemonさえ起動していれば、ネットワーク上のどのコンピューターのMIDIポートにでも接続できます。Lemur内のLemur Daemonターゲット設定で、ネットワーク上で起動中のLemur Daemonのリストを閲覧したり、各マシン上の目的のMIDIポートに接続することが出来ます。
2.1 Lemur Editor
Lemurの主な特徴のひとつは、画面上に自分が必要なバーチャル・オブジェクトの種類を好きなだけ共存させられることです。そのため、あなたのアプリケーションと希望する操作性にぴったりマッチしたインターフェースをデザインすることが可能です。これを可能にするために、デュアル・プラットフォーム(Mac OS XとWindows)対応の強力なインターフェース・デザイン・ユーティリィ、Lemur Editorが提供されています。
2.2 Templates(テンプレート)
Lemur Editorでは、コントロール・テンプレート(プロジェクトとも呼ばれる)をインポートするか、白紙から丸ごと作ることが可能です。Lemur Editorで作られたテンプレートは、JZMLファイルとしてあなたのハードディスクに保存可能です。
また、テンプレートをLemur(iOSでバイス)の内蔵メモリに保存することも可能です。Lemur内のプロジェクトは、Settingsメニューの上段から参照できます。
2.3 Pages(ページ)
テンプレートは複数のページ(インターフェースとも呼ばれる)を持つことが出来ます。また、各ページは複数のオブジェクトを内包することが出来、それらをコンテナーに整理することも出来ます。テンプレートが持てるページ数やオブジェクト数はメモリーの空き容量によってのみ制限されるので、自由に創造力を発揮出来ることでしょう。
下図は3ページからなる典型的なLemurテンプレートの一例です。
Lemurにロードされたテンプレートでは、スクリーン上部のタブをタップすることにより他のページに切り替えることが出来ます。
2.4 Modules(モジュール)
さらに、既存のテンプレートの一部分をモジュールとしてインポートすることも可能です。モジュールは再利用可能なインターフェースのパーツで、JZLIBファイルとして保存されます。モジュールは、オブジェクトやコンテナー、そしてページさえも含むことが出来ます。Liineのウェブサイトから入手可能なモジュールもありますし、ご自身で再利用したいアイテムのライブラリを構築することも可能です。実際、Lemurページの好きな範囲を、将来再利用するためにモジュールとして保存可能です。この機能により、今後、同じ作業を二度する必要はありません。制作過程の各目的に特化したパーツをモジュールとして保存し、再利用可能なページ素材のライブラリを強化して行くのが良いでしょう。
Liineウェブサイトのユーザー・ライブラリーは、テンプレートやモジュールを集めたい方にとっての宝庫です。
2.5 Objects(オブジェクト)
Lemurの通信メッセージは主にオブジェクトで生成されます。オブジェクトが、あなたの指の動きを数値に変換するのです。Lemurには、それぞれ特性の異なるオブジェクトが多数用意されています。

Breakpoint(ブレークポイント)

Container(コンテナー)

CustomButton(カスタムボタン)

Fader(フェーダー)

MultiBall(マルチボール)

Knob(ノブ)

SurfaceLCD(サーフィスLCD)

Leds(LED)

Text(テキスト)

LemurMenu(Lemurメニュー)

Monitor(モニター)

MultiSlider(マルチスライダー)

Pads(パッド)

Range(レンジ)

RingArea(リングエリア)

SignalScope(シグナルスコープ)

Switches(スイッチ)
2.6 Variables(変数)
殆どのオブジェクトは、そのオブジェクトの状態を反映し、指でタッチしたときに変化するいくつかの変数を持っています。例えば、フェーダーのX変数は、フェーダー・キャップ(物理的なフェーダーを操作するときに触る部分)の位置を反映しますし、スイッチであればオン・オフを反映します。これらの変数は全て外部のソフトウェアからも、そして、スクリプトや、テンプレート内の他のオブジェクトからもコントロールできます。
これらの内蔵された変数に加え、Lemurでは自身で作成した数式に従うユーザー定義の変数も作成できます。
変数はオブジェクト中にローカルに存在し、外部からの参照はアドレスを用いるものもありますが、テンプレート内のオブジェクト全てが参照できるよう、グローバルに定義することも可能です。
変数は多次元の場合もあります。例えばノブはひとつの変数しか持ちませんが、マルチボールはボールのX・Y座標と、ボールの明るさを示すZ変数、合計3つの変数を持っています。また、マルチボールの変数は、いずれもボールの数だけ項を持った数列をなしています。
内蔵されたTime変数は特筆すべき特徴を持っています。Time変数は、Lemurが起動されてからの時間経過をミリ秒単位で表します。Lemurの他の関数や演算子と組み合わせれば、時間に応じて変化する数のシーケンスを各種生成できます。
2.7 Scripts(スクリプト)
スクリプトを使えば、特定の作業を特定の場合に実施するようLemurに指示できます。スイッチが投入されたときにマルチスライダーの色が変わるといった簡単なものから、マルチボールのボールが特定の軌道に沿うように指示するといった複雑なものまで、可能性は無限大です。
2.8 OSC
Lemurは、MIDIに比べてレイテンシーが小さい、データ容量が大きい、32bitの数値精度、柔軟性と設定の簡便さといった利点を持つOSC(Open Sound Control)プロトコルに対応しています。サポートするアプリ(Max/MSP、Reaktor、Circle、Modul8、 Resolume Avenue…) も増えつつあり、OSCはリアルタイム・コントロールとヒューマン・マシン・インターフェイシングの分野に新時代をもたらしました。
2.9 MIDI
もちろん、LemurはMIDIプロトコルにも対応し、全てのMIDIメッセージを送受信できます。内蔵された変数やユーザー定義の変数のいずれにも、自由にMIDIメッセージをアサインできるほか、スクリプトからメッセージを送信することや、受信したメッセージをきっかけにスクリプトを実行することも出来ます。
2.10 Lemur Daemon
Lemur Daemonはコンピューターのバックグラウンドで実行される小さなヘルパーアプリです。Lemurとコンピューター内のMIDIポート間のMIDIデータ通信を制御します。Lemur Daemonは起動時に自動的にあらゆるMIDIポート(コンピューターに接続されたハードウェアやバーチャルポートを含む)をスキャンし、ネットワーク内のLemurから接続できるようにします。さらに、MacではDaemon InputsとDaemon OutputsというLemur用のバーチャルポートも生成され、お使いのMIDI対応アプリから設定・使用できるようになります。PCとLemurでMIDIを使うには、loopMIDIやloopbe、MIDI Yokeといったサードパーティ製のMIDIポートを提供してくれるツールが必要です。
2.11 Targets(ターゲット)
ネットワーク指向のLemurは同時に複数のアプリケーションをコントロールしたり、複数のコンピューターで走らせたアプリケーションをコントロールすることが出来ます。各デバイス上の各アプリケーションは異なるTargetを経由してコントロールされます。Lemurには、8つのLemur Daemonターゲットと8つのOSCターゲットが装備されています。
Lemur DaemonターゲットはMIDI入力とMIDI出力のペアから成ります。OSCターゲットはIPアドレス(またはホスト名)とポートナンバーから成ります。それぞれの変数を異なるターゲットに割り当てたり、出力系の関数を含むスクリプトを使用することにより、どんなに複雑なセットアップでも1つのLemurページから全てをコントロールすることが出来ます。
Lemur Daemonさえ起動していれば、ネットワーク上のどのコンピューターのMIDIポートにでも接続できます。Lemur内のLemur Daemonターゲット設定で、ネットワーク上で起動中のLemur Daemonのリストを閲覧したり、各マシン上の目的のMIDIポートに接続することが出来ます。
PR
この記事にコメントする
- ABOUT
iOS版Lemurのチュートリアル&ティップスを公開。まずは日本語版が無いユーザーマニュアルの翻訳から!
- 最新TB
- プロフィール
HN:
DJ MiCL
年齢:
47
HP:
性別:
男性
誕生日:
1977/08/12
職業:
映像制作
趣味:
DJ
自己紹介:
NY/東京 ダブル在住
気ままにDJ系ブログ更新
たまにチュートリアルビデオ
twitter: @DJMiCL
mail: pumpupthedj@gmail.com
気ままにDJ系ブログ更新
たまにチュートリアルビデオ
twitter: @DJMiCL
mail: pumpupthedj@gmail.com
- ブログ内検索
- 最古記事
(03/08)
(03/08)
(03/08)
(03/09)
(03/09)
- P R