hitode909の日記

以前はプログラミング日記でしたが、今は子育て日記です

日光

ホテルのプールが気に入った。プールからビーチに出られるようになってて、海あるならプールいらないじゃんと思ってたけど何も考えずダラっとできるという点ではプールのほうが良い。朝泳いで、チェックアウトしたあともまた泳いだ。空港の近くでとりあえず一泊という形で、すぐ出てしまうのでもったいない。
日光を浴びると元気になるとはよく言うけどこんなに強いカラッとした光を浴びることはあまりない。京都でも浴びられるけどエアコンの室外機から出てきたようなモワッとした空気に包まれている。といってもバリは最高気温28度くらいで、京都は38度とか言っているので10度の差がある。人の密度も京都のほうが多い。京都なぜあんなことになっているのか。バリに住みつつ日本の給料をもらって働けたら最高だと思う。
なにもせずに仰向きで浮かぶ練習をしてたらできるようになって、いつまでも浮いていられるようになった。そうすると雲が合流する様子を凝視できる。耳に水が入るので静かに過ごせるようになってそれも良かった。せめて、バリに住めなくても、家にプールがあればそれでいい。家を建てることがあったらパラメータをプールに全振りしたい。

インドネシアルピアと日本円との変換が難しい

しばらく超絶忙しかったので、たまにはゆっくりしたい…という気持ちになったので6月くらいから準備してバリにやってきた。準備といってもチケットを取ってホテルを取るくらいで、荷造りはビザがいらないので出発する当日にほぼ全てやった。海外旅行キットが箱に入っているので引っ張り出して詰めれば大体終わりという世界観。
準備したり、空港に向かうバスに乗ったりしているときは、胃が痛くなっていたけど、着いてみたらだいぶ気楽な雰囲気だった。
インドと比べて、強烈な匂いがしない、路上に糞尿が散らばっていない、数秒に一度声をかけてきてずっとつきまとってくる強引な客引きが居ない、売り物に大体値札がついている、と、消費者にとって良い点がかなり多い。
デメリットとしては、お金の計算が難しくて、最大の通貨が10万ルピア札で、それがゼロの数だけ考えると日本でいう1000円に相当するので、日本円とルピアの変換はゼロを2つつけ外しすることになる。一方で、金額はキロ単位で表示されているので、キロをつけたり外したりするにはゼロを3つ取る必要があり、換算が難しい。いまのタクシー14円だったのか?とか、そんな安くはないでしょ、とか要領を得ない話をしていた。

こういう観光地に来るのは初めてなのだけど、そこらいたるところでビールを売ってて、3本飲めば1本無料とかやっていて、ビーチでは、雑なビールやさんの看板に、ここは夫を預かる最高の場所で、あなたが買い物してる間夫を個々に置いておくと良いでしょう、ということが書いてあったりする。まったくもって正しいと思う。

クタで売ってる服はあんまりおしゃれじゃなく、サーファーっぽいのか、バスケットボール選手みたいなのか、オーガニックなものか、という感じで、どれも苦手なタイプだった。よさこいも苦手だけどバリにはよさこいの服が売ってないので良かった。インスタグラム以降の世界に対応している感じの服屋があったのでシャツを買った。
69slam.com

f:id:hitode909:20190804235330j:plain
f:id:hitode909:20190804235422j:plain

ブラウザでVJした

木屋町のシエスタを借りて開催したちょっとしたDJイベントでVJした。普段からよく遊びで愉快なウェブページを作っていたので、その延長上。去年はVRで見えるページを作ったりしていたけど、その根底には愉快なウェブページを作りたいという願いがある。

f:id:hitode909:20190803190524g:plain

いろんな機能を作ったので記録しておく。

音量に合わせてでかくなる文字

マイクの音量を拾って、音量に合わせて文字がでかくなるのを最初に作った。基本は、前に作ったのの再利用。
blog.sushi.money

妻ことDJモチモチモッチの名前を画面いっぱいに表示する。文字が伸びるだけでは地味なのでちょっと工夫していて、DJモッチ→DJモチモッチ→DJモチモチモチモチモチモチモッチみたいに文字が伸びるようにもした。inputを置いておいて、そこにメッセージを書くと、そちらを優先、空のときはDJ名、ということにして、VJ中に 挨拶したくなったら挨拶をかけるようにした。

ピカピカする

音量が上限に達したときに画面自体が発光するようにした。マイクの入力がいい感じになると、スネアが鳴るたびに画面がピカッと光ったりしてかっこいい。HSLで色を変えるコードは半年に一回くらい書いてる。
blog.sushi.money

f:id:hitode909:20190804063654g:plain
id:polamjagにもらったGIF。音量をいい感じに拾うのに失敗していてずっとピカピカしている。

絵文字

Unicode絵文字の話題を追っていると、この範囲にこういう絵文字が追加されました、とかやっていたので、文字コード順に絵文字が出てくると楽しいに違いない、と作った。普段、絵文字を巨大なサイズで見ることはないので新鮮だと思う。inputに入れた文字からスタートして、絵文字じゃなくても文字コード順に出せるので、1といれたら1,2,3,4,と出たり、㍾から始めると㍾㍽㍼㍻㍿と並んだりしておもしろい。


ここに試作中のglitch.comへのリンクを貼っておいた。
blog.sushi.money

YouTube

妻も初出演で、ジャンカラで練習したりしていて、セットリストを事前に決めていたので、曲順を教えてもらって、YouTubeからPVで流すことにした。曲のURLはハードコードであらかじめ準備しておきつつも、手でURLを入れたら好きな動画を流せる仕組み。
ただ流すだけだとビデオ流しやさんになってしまうので、ビートに合わせてループしたり、再生速度を変えたり、自動的に再生位置を変えるモードを作ったりした。
出番前に、動画だけじゃなくて曲名も流してほしい、といわれたので、急いで曲名を集めてきて、動画のロードと同時に曲名を表示するようにした。

Giphyから検索してGIFを流す

GiphyのREST APIを叩いて、その場で検索したGIFを曲に合わせて表示できるようにした。gifとstickerがあり、後者は透過画像だけもらえて便利。終わってから、あれはリアルタイムに検索してたんですって喋ってたら、手元にダウンロードしてるのかと思った、という反応だった。それもそうだと思い、プレゼンテーションとしてはどうなっていると良いのかを考えていきたい。
developers.giphy.com

肉市場

関根優子肉市場でTシャツを売ってるので買ってくださいというコンテンツも用意した。曲に合わせてTシャツが1枚ずつ表示される。PVが存在しない曲を流すときに、裏にTシャツを表示することで画面がスカスカにならないようにしていた。
以上、今回すべての画像や動画は手元に仕込んでおいたのではなくて、インターネットから転送されて表示されていた。

ビートと同期

上記いろんなグッズにはビートと言う概念があり、タップボタンを曲に合わせてタップしていくと、それに合わせたテンポで動くようにした。Animatorクラスを継承していて、onBeatで動いたり、毎フレームonFrameを呼び出してもらったり、コントローラの値が変わったらonParametersChangeが呼ばれたり、という構造。

各効果の表示、非表示設定

チェックボックを4つ並べて、4ビートで1週し、チェックが付いてるところで表示するようにした。それによっていろんな効果が曲に合わせて表示されて、なんとなく凝ったことをしているように見えるようになった。

コントロールパネル

コントロールパネルはふだん非表示で、ホバーすると表示されるようにした。手元のPCとスクリーンはミラーリングしているので、お客さんが見る絵の上に堂々と表示される。Presentation APIを使うか検討したのだけど、ブラウザでやってるよ〜というのが伝わるほうが、変なアプリケーションを作ってきたのが伝わって良いかと思った。あとは、僕は作品より作品製作中の様子を見るほうが好きなので、DJやVJの操作中の画面が見えるとおもしろいだろうと考えている。ライブコーディングもそういう感じ。

完成

1.htmlとか3.htmlとか、家で思いつくたびにちまちま作っていて、大体1機能1時間くらいで大枠は作って放っておく、というのをやっていた。最初はaタグでも置いて画面を切り替えようかと考えていたけど、9.htmlくらいまで行ったところで、すべてが同期して動くとよさそうなので1ページにくっつけよう、と移植して、index.htmlに移した。4ビートで1週する仕組みとかを簡単に作れるようになったので1ページにまとめてよかった。Wikipediaをランダムウォークするとか、ストリートビューのカメラをびゅんびゅん回すとか、没になったのも色々ある。

ペライチのHTMLなのでここに置いている。今すぐお試しいただけますので、急にVJする必要が出てきたときにご利用ください。
https://hitode909.github.io/sketch20190802vj/
PCでは動いてるけどスマホで動くかはわからない。コントロールパネルにホバーできないと何もできない気もする。DJ名とか、動画とかは昨日のDJモチモチモッチが出演する前提で固定でおいてあるので、そのまま使うとハロプロ大好きなDJという雰囲気になっていまいちなので、forkして使ってもよさそう。

コードはこちら。全然整理してない。
github.com

今回始めてやってみたけど、人前でリアルタイムに操作して、愉快な体験をさせるためのウェブページを作る、という体験ができておもしろかった。
こういう愉快なウェブページは、用途がないとただのゴミだったりアート作品だったりするけど、VJツールである、と言い張ると、急に便利なツールとして価値が生まれる気がする。


f:id:hitode909:20190803232936j:plain

f:id:hitode909:20190803232939j:plain

f:id:hitode909:20190803233001j:plain