σo

月並だが、

怖い事、悲しいこと、嫌なこと、苦しいこと、ストレス、を構成する出来事と記憶、記憶から感情を演繹するための回路、がいつか短絡してしまい、正しい、と我々が今思っている論理、認識、それと感情、を永遠に失ってしまうイベントというのが低確率ではあるが誰にでも実装されていて、なにかの拍子に、例えば事故、薬、老化、あるいはたった一度、いつもの悲しい夜のたった一瞬「論理はもういいや」という事を思ってしまった事が原因で、ほんの一度世界を全否定してしまうだけで、回路が閉じてしまい、もう二度と正しい感情を生み出せない、視界には光の輪が、耳元では天使の囀りが、家には知らない同居人がいて、あなたは何度1+1を試しても3になってしまう、そんな日がいつか来るかもしれない

というのを子供の頃から恐れている。

DOMMUNEでライブコーディングVJした

3/21(木)、DOMMUNEでVJしました。 僕は自作のVJシステムVEDAを使って、GLSLのライブコーディングを行いました。

目次

出演の経緯

www.dommune.com

DOMMUNEは言わずと知れた映像配信メディア。 大学生の頃から観ていたので、自分が出演できることになるとは……

収録は恵比寿駅から徒歩20分のDOMMUNEのスタジオで行われた。 高級マンション街に急にクラブっぽい文化が現れて不思議な感じだった。

今回のイベントは、日本のオーディオビジュアル集団BRDGと、中国の音楽レーベルFunctionLabのコラボ企画だ。 BRDGは主に東京でイベントを開催してるんだけど、これまでに何度か中国遠征をしている。 今回は中国ツアーの締めくくりとして、FunctionLabのメンバーと共にDOMMUNEでライブすることになった。

僕のVJについて

僕はUnityやTouchDesignerを使ってVJすることもあるけど、今回は「ライブコーディングしてくれ」というオーダーがあったので、自作のVJシステムであるVEDAを使うことにした。

VEDAはGLSLでライブコーディングVJをするためのAtomパッケージだ。 僕は昨年の東京Node学園祭やAlgoraveなど、数々のイベントでVEDAを使用してVJしてきた。

blog.gmork.in

DOMMUNEでは、DJを写したカメラの映像に、VJの映像を合成して配信する。 VJの映像は黒抜きで合成するため、映像を黒メインで作っておくと効果的、とのことだった。

「ライブコーディングっぽさ」「黒メイン」を考えた結果、僕の作戦は以下のようになった。

  • 素材は基本モノトーンで作っておく
  • 色収差やカラーリマッピングなどのエフェクトで色を乗せる
  • ライブコーディングで座標変換や変形を行う

GLSLでのVJというと、レイマーチングによる3D表現を行う人が多いけど、僕はあまりレイマーチングに慣れていないのと、シンプルな絵面を目指したので、今回はレイマーチングの採用を見送ってオール2Dで表現することにした。

VJの反省としては、ネタをシンプルに寄せすぎてしまったな〜というのがある。 DJがミニマルな感じだったので上手いことマッチして助かった……。 次に向けて、もっとバキバキした絵を出せるような仕組みも持ちネタとして作っておきたい。

あと、ライブコーディング成分をもっと出せると良かったな。 事前のトラブルとかで緊張してしまい、簡単な座標変換くらいしか出来なかった。

システム/機材

VJに使用したGLSLのコードは以下で公開している。

github.com

今回はVEDAの本体にも手をいれており、そのままでは動かせない。 というのも、VEDAが依存しているAtomパッケージに不満が生じ、やっつけで自前実装しているからだ。 具体的には、glslifyというGLSLバンドラーが重いので、単純に #include でファイルを連結できるようにした。 また、#include 使用時にエラーが正しく表示されるよう、linterも自分で実装している。

この辺の修正をリリースするかどうかはまだ迷っている。 できるだけ既存のエコシステムには乗っかりたいという気持ちもあるので……。

使用した機材はnanoKontrol2とLaunchpad Mini。 シーンのフェードイン/アウトにnanoKontrolを、エフェクトやシーンの切り替えにはLaunchpad Miniを使用した。 以前からLaunchpadのMIDI信号をOSCに変換するスクリプトをNode.jsで作って愛用してきたんだけど、今回はよりリズミカルに制御しつつテンポの変更にも対応できるよう、シーケンサー/タップテンポ機能を追加した。

github.com

リズムにあわせて一番右下のボタンを押すとループが始まる。 あとは記録ボタンを押しながら適当にボタンを押すと、演奏内容を記録してループしてくれる。 こんな感じ↓

launchpad mini + nanoKontrol2の組み合わせ、かさばらなくて助かってるけど、ボタンの押しづらさとかフェーダーの固さでちょっと不満が出てきたな。 オススメのVJ用MIDIコンあったら教えてください > VJ各位

KORG USB MIDIコントローラー NANO KONTROL2 ナノコントロール2 ブラック

KORG USB MIDIコントローラー NANO KONTROL2 ナノコントロール2 ブラック

Novation パフォーマンスコントローラ Launchpad Mini MK2

Novation パフォーマンスコントローラ Launchpad Mini MK2


自分のVJがリアルタイムで配信されるのは初めてでメッチャ緊張したけどすごく楽しかった!!! 妻が京都の家から観てくれてたりして、不思議な感覚だった。

観てくれた皆様、ありがとうございました!!