|
Performance with Cubie from sadmb on Vimeo. |
|
t o p
Cubie ver1.08 キーボードで文字を入力し、文字をパズルのピースのように用いることで、音楽を演奏できます。 Vimeoに説明ビデオ(英語版)をアップしました。 |
|
t o p
Cubie ver1.0 artist name sadmb (Sadam Fujioka + Osamu Sambuichi) You can play music by typing and use typed alphabets as a piece of puzzle. |
|
download
CubieはJavaアプリケーションです。動作にはJavaのインストールが必要です。 Javaの有無、バージョンの確認は、以下のサイトから行うことが出来ます。 Javaソフトウェアのインストール状況の確認 Cubieのダウンロード - 実行手順(Windows XP, Vista) -
実行手順(Mac OS 10.4以上) -
実行手順(その他のOS) -
※ Macをお使いの方 同梱のJSynプラグインが動作せず、別途インストールする必要が生じるケースが報告されています。 JSynプラグインのインストールは以下のサイトから行うことが出来ます。 Check JSyn Plugin |
|
download
"Cubie" is build with Java. It requires Java installed. You can check Java installed, version of Java from the following. Verify Java Installation Download Cubie -
How to Run Cubie (Windows XP, Vista) -
How to Run Cubie (Mac OS 10.4 or higher) - How to Run Cubie (the other OS) - Check JSyn Plugin |
|
h o w t o p l a y
簡単なCubieの使い方の説明はpdf書類でもご覧頂けます。また、pdf書類はダウンロードしたファイル内にも同梱してあります。 アルファベットをタイピングし、エンターキーを押すとブロックを1段追加出来る。 ブロックは追加されると1段につき1トラックのシーケンサとして機能し、左から順に読み込まれる(楽譜のようなもの)。 ブロックは、アルファベットの種類によって機能が一意に決まっており、音の各パラメータを決定する。 各種アルファベットの機能は以下の通り。
読み込まれた文字が決められたキーワードにマッチすると、その部分のブロックが崩れる。 ブロックが崩れると、キーワードによって異なる種類のイベントが発生する。 キーワードの種類に関しては、Configウィンドウの「keywords」タブを参照。 左右、上下キーを押しながらマウスの左ドラッグで、ルービックキューブのようにブロックを回転させることが出来る。 上下方向へはブロックを8段積み上げた時のみ回転可能になっている。 |
|
a l g o r i t h m
プログラムは大きく分けて、オブジェクトの表示、音の生成、タイピングやコマンド等のプロセスの三つからなる。 グラフィックの表示は主にProcessingを用いた(こちらを参照)。 6面からなるキューブの面pcubie.object.MatrixCube.class上にブロックのオブジェクトpcubie.object.Words.classをVector配列に格納することで実現した。各classのdraw()メソッドが、フレーム毎に呼び出される関数である。 ワイヤーの処理やブロックが崩れたときの処理等、大体の処理はここで行っている。 一番重要なのが、pcubie.object.MatrixCube.getAmida()メソッドである。 このメソッドにより、各段をあみだくじの順番に並べなおしたVector配列が返され、これを元にブロックの色や音のシーケンサの順番を決定している。 音の生成は、JSynプラグインを用いた(ただし、プラグインのインストールは不要。こちらを参照)。 主にやってることは、段を追加したら段数分だけシーケンサを追加し、アウトプットをミキサーに繋ぐ(L, Rの2ch分)、 シーケンサの仕組みは、音声ファイルをサンプル単位で読み込み、エンベロープを設定して、pcubie.synth.Sequencer.class 内でマルチスレッド処理をし、beat()が呼び出されれば、まとめて一斉にポンと音が出るように調整されている (それにより各シーケンサが同じリズムで統一される)。 また、音の方のpcubie.synth.CubieSynth.classでは、pcubie.object.MatrixCubie.classとは 異なり、getAmida()で得られた順番で、Wordsオブジェクトを管理している。 プロセスはpcubie.Control.classで呼び出され、pcubie.process内のタスクのStateがRUNなら、 毎フレームごとに呼び出す処理を行う。詳しくはProcessInterfaceを参照のこと。 |
|
h o w t o p l a y
You can also see instruction with pdf. It is also included with downloaded file.
|