にょきにょきシンセサイザー

[ソース表示] SiON SoundObject の1つである Arpeggiator と si.sound.synthesizers.AnalogSynth クラス によるシンセサイザです。 SiON SoundObject Quartet でも使われている Arpeggiator の音合成に AnalogSynth モジュールを用いて各パラメータをUIからいじれるようにしています。AnalogSynth モジュールにより、一般的な減算型シンセの VCO/VCA/VCF を用いた音色エディットが可能となります。 Arpeggiator による演奏や AnalogSynth による音色エディットを使いたい場合は参考にしてみてください。 SiON Kaoscillator は、よりシンプルな Arpeggiator の使用例です。

Active Sonar Sequencer

[ソース表示] 譜面を潜水艦のアクティブソナーに見立てたシーケンサーです。クリックで音素を配置、ドラッグで音素を動かす、ダブルクリックで色変更できます。HTML5xFlash JAM session4で金賞を頂きました。

Bound Ball Synthesizer 2

[ソース表示] 跳ねるボールのバウンドによって自動演奏を行います。 上述 Puppyish Pentatonicism と同様ランダムなタイミングで発生するバウンドの効果音を、Synchronized Sequence 機能によってリズムに合わせています。このアプリでは上述のタイムラグをごまかすために、接地タイミングの先行計算を行って早めに発音させています。インタラクティブ性があり(クリックで発音)、演算が単純(バウンドのみ)な場合に有効な方法です。 物理演算+音生成の実装における、Puppyish Pentatonicism 以外のもうひとつの選択肢となります。

Click me, if you can

[ソース表示] SiON を使った簡単なクリックゲームです。ウロウロ動くボタンを3個連続で同じ色をクリックできると得点が入ります。早いほど高得点で、空クリックは時間ペナルティになります。HTML5xFlash JAM session3で銀賞を頂きました。

Extended ColorChooser

[ソース表示] MinimalComps の ColorChooser を Gimp スタイルに拡張しました。色々なアプリに組み込めると思います。

ActionScript3.0 ライブラリ入門

ActionScript3.0 ライブラリ入門 -翔泳社の本という書籍にて共著で執筆させていただきました。「2章5節:サウンド系ライブラリ」を担当しました。 関連エントリ;ActionScript3.0ライブラリ入門  

Puppyish Pentatonicism

[ソース表示] 物理演算で自由落下するボールの衝突によって自動演奏を行います。 物理演算による衝突はランダムなタイミングで発生しますが、その効果音を Synchronized Sequence 機能によってリズムに合わせることで、自動演奏しているように見せています。Synchronized Sequence 機能は、発音メソッド(SiONDriver.noteOn/sequenceOn/playSound)を呼び出してからリズムに合うタイミングまで待機して音を鳴らす機能なので、そのまま使うとタイムラグが発生します。このアプリではバッファを使用して表示されるタイミングを遅らせることでタイムラグを目立たなくしています。 物理演算+音生成を実装したい場合、参照してください。

Real Time Ray Tracing

[ソース表示] レイトレースの中でも最も基本的な球面反射をリアルタイムでレンダリングします。200行弱の非常にシンプルな実装のため、移植性は高いと思います。 jsdo.it にはJavaScript version[Real Time Ray Tracing]も投稿しました。こちらはブラウザごとのNumberの扱いの違いなどに微妙に悩まされました。