28歳になった

無事に28歳を迎えることができた。ロックミュージシャンに生まれなくてよかった……
最近ブログあんまり書けてないので、まとめて近況報告しよかな。

!!!!! ほしいものリスト http://amzn.asia/haHW5vX !!!!!

引っ越した

2月のことだけど、下京区のマンションから、鴨川の近くの一戸建てに引っ越した。
木造で築50年なので、床が凹んでいたり冬は異常に寒かったりするけど、広いし部屋の感じが好みだったのでほぼ即決した。
生まれて初めての一軒家で、家具を買ったりテーブルを作ったりして楽しんでいる。

新居、1帖ほどの広さだけど庭がある。
庭には前の住人が置いていった蹲居セットが設置されており、電源を入れると京都人になりきることができる。

会社からはちょっとだけ遠くなったが、自転車でいろんな所に行ったり、同居人の友達を呼んだりできるようになった。
気に入っているので長く住むかもしれない。

椎間板、痛めてた

3月にハーフマラソンに参加した所、親指の筋に痛みを感じるようになった。

大学時代からずっと左足の感覚が麻痺してて、でも診断が下されることで自分の病気が確定してしまうのが怖くて病院に行くのを避けてたんだけど、流石に日常生活に支障が出たのと、いよいよマズいんじゃないかと焦りを感じた事もあり、会社近くの整形外科で診て貰うことにした。

整形外科は会社の同僚も複数人世話になっている町医者で、なるほど午前9時にもかかわらず満員であり、受付から診察室に通されるまでに90分待たされたが、診察自体は5分で終わってしまった。 症状を告げるなり、「それは腰のL5の神経だね〜」と即答され、椎間板がヘタっていること、ヘルニアとは違うこと、運動する時にはコルセットを着けないといけないこと、指圧マッサージは絶対にダメということを立て続けに説明された。 指圧マッサージ、その翌週くらいに初体験しようかな〜って思ってたので残念。

帰る前にリハビリ室に呼ばれ、腰の牽引をしたり、低周波治療器だとか腰の体操を行なった。 昔部活で膝をやった時、お年寄りが並んでじっと牽引されているのを見て不思議に思っていたけど、まさか自分がこんな若さで牽引されることになるとは思わなかった。

コルセット、採寸したあと「じゃあ来週3万円もってきて」って言われて仰天した。 保険の制度上、コルセットの代金は先に自腹で払って、あとから還付申請?をする必要があるらしい。 今後のことを考えると絶対に必要だから仕方ないけど、金欠だったので給料日まで待ってもらったりした。

バランスボールを導入

整形外科で勧められたのでバランスボールを導入した。

会社ではアーロンチェアやバロンチェアが支給されるので、どちらかを使っている人が多い。
僕は高級椅子よりも堅い椅子のほうが好みだったので、安いスタッキングチェアをずっと使っていたんだけど、もしかしたら腰には良くなかったのかもしれない。

購入したのはこの商品。 どの商品も似たり寄ったりなので、一番レビュー多そうなやつにした。
バランスボール、なんでどれもテカテカして青とかピンクとかなんだ、もうちょっとシンプルなやつはないのか、無印あたりがシュッとしたやつ出してくれないかな……

1月くらい使った感想はこんな感じ。

  • メリット
    • 柔らかい
    • 音楽に合わせてポヨポヨしてるとコーディングが捗る
  • デメリット
    • 空気を入れる音がうるさい
    • ポヨポヨしてるの、同僚がイライラしてないか心配
    • 尻が蒸れる

空気を入れる時、リバーブのかかった不思議な音がする。

f:id:amagitakayosi:20170624121855p:plain

腰に良いかどうかはまだわからない(左足は相変わらず痺れている)。

GLSL/TidalCycles入門してる

amagitakayosi.hatenablog.com

この前記事を書いたとおり、最近ずっとGLSLを書いている。
この後も更に9個のアニメーションを追加した。

fand.github.io

段々ハマる時間が長くなってペースが落ちてきている……。
レイマーチングは面白いけど処理が重く、ライブコーディングには向かないので、もっとライブコーディング向けの表現も練習していかないといけない。

手応えがあったやつはShadertoyにも投稿したりしている。
Shadertoy、誰にも見られないかと思ったけど、意外とコメント付くし、便利ライブラリを教えてくれたりして感動している。

Tシャツも作って自分で着ている。
みんな買ってくれ!!!

suzuri.jp

最近はTidalCyclesにも興味がでてきた。
TidalCyclesは音楽を演奏するためのライブコーディング環境。
コードはHaskellで書くため、他のライブコーディング環境と比べると圧倒的に短いコードで演奏でき、魔術感があって楽しい。

DJ/VJイベントにライブコーディング枠で参加したい!!!

Kyoto.js 13やります

connpass.com

7/30(日) にやります、皆様の募集をお待ちしております!!!!!!!!!!!!!!1


この一年は人生が大きく変わったけど、今年はこれからも変化がつづいていきそう。

毎日GLSLでアニメーションを作ってる

最近GLSLやWebGLの世界に入門して、毎日こんなアニメーションを作っている。

4月末、東京に出張する機会があり、ついでに何か面白いイベントや展示がないか探していると、チャネルというイベントを見つけた。
以前から気になっていたBRDG/VRDG方面のイベントらしい。
会場は六本木のSuperdeluxe。出張先のオフィスからも近いので、少し早退して行ってみる事にした。

そこではハードな電子音に合わせて、GLSLやHaskellのライブコーディングによるVJが行われていた。

そのあまりのクオリティの高さに衝撃を受け、GWごろから少しずつ、ほぼ毎日GLSLを書いている。

GLSLとは

OpenGL Shading Languageの略。
OpenGLWebGLなどの3Dグラフィックス環境において、オブジェクトの影や色を計算するために作られた言語だ。
GPUのパワーを簡単に引き出すことができ、複雑なアニメーションをリアルタイムに実現できる。

元々は影を計算したりテクスチャを貼ったりするための物だったけど、GPUパワーに目をつけた人たちがGLSL単体でアート活動をし始めて、現在では独特なコミュニティを形成している。
GLSL SandboxShadertoy には、異常な努力と才能によって書かれたアニメーションが溢れている。

GLSLはいわゆるメガデモ界隈でも愛用されている。
日本のデモパーティTokyo Demo Festでは、GLSLだけで作品を作るコンテストがあったりする。

tokyodemofest.jp

僕の活動

GLSLを書いたり、GLSLからGIFアニメを生成するツールを作ったりしているので見てくれ!!

fand/webgl-study

fand.github.io

これまでに作ったアニメーションとその制作メモをGitHub Pagesにまとめている。

GLSLを動作させる環境は、Three.jsを利用して自分で実装した。
Shadertoy等を利用することも考えたが、いずれGLSLだけでなくWebGL全般について学んでいきたいと思っているので、GLSL環境から自分で構築することにした。

技術的には、glslifyとWebpackを組み合わせている。
glslifyはGLSLのコードをbrowserifyのようにバンドルするためのツール。
Webpack用のloaderも提供されていたり、glslifyを前提としたライブラリがnpmで公開されていたりする。

glslifyと関連ライブラリのお陰で、うろ覚えでも気軽にレイマーチング入門できた。 これまでに覚えたテーマとしてはこんな感じ。

レイマーチング

Web Audio APIを使った、FFTと連動するアニメーション

シェルピンスキーのギャスケット

ビルド済みのGLSLファイルは、このレポジトリの docs/shaders/ 以下に置いてある。

github.com

fand/glsl2img

amagitakayosi.hatenablog.com

GLSLのコードからPNG画像やGIFアニメを生成するツール。 webgl-studyの開発フローに組み込んで、サムネイル画像を簡単に作れるようにしている。

技術的には、headless-glを利用してNode.js上でWebGLを動作させ、pngjsやgifencoderで画像を出力している。

glslifyにPullReqを出した (WIP)

Atomにはlinter-glslというパッケージがあり、GLSLの構文エラーを教えてくれる。
しかし、glslifyには対応していないので、glslifyを利用したコードでは本質的ではないエラーが大量に表示されてしまう。

これを解決するには、linter-glslをglslifyに対応させるだけでなく、glslifyをsourcemapsに対応させる必要がある。
単純にglslifyを通すだけでは、linter-glslはビルド済みのコードに対してlintを実行することになるので、エラーの行数がズレてしまうからだ。

というわけで、glslifyのコードを読んで、sourcemapsに対応するPullReqを作ってみたんだけど、今のところ反応がない……

[WIP]Sourcemaps support by fand · Pull Request #6 · stackgl/glslify-bundle · GitHub

学習リソース

以下のWebサイトや書籍を読んで、色々学んでいる。
GLSLはあまり情報が豊富ではないが、幸いにもいくつかWeb書籍などが存在する。

wgld.org

wgld.org

WebGLに関する情報が大量にまとまっているサイト。
GLSLカテゴリでは、レイマーチングの基本が丁寧に解説されている。

The Book of Shaders

thebookofshaders.com

GLSLについて、WebGLの事を何一つ知らなくても学べるWeb書籍。
文中にあるGLSLコードは編集可能になっていて、結果をリアルタイムに確認しながら学習できるようになっている。

初めてのThree.js

初めてのThree.js 第2版 ―WebGLのためのJavaScript 3Dライブラリ

初めてのThree.js 第2版 ―WebGLのためのJavaScript 3Dライブラリ

オライリーのThree.jsの本。
日本語でサッと把握できて良いかな〜という事で購入したけど、まだあんまりThree.jsを活用できてない。
MMDの解説もあるので、そのうち初音ミクとか表示してなんか出来たら楽しそうだなあ。

Moleman 2

メガデモ文化を追ったドキュメンタリー映画
日本語字幕つきでYouTubeに公開されている。

www.youtube.com

いろんなすごいデモやすごい人達が紹介されていて、やる気が高まる。
僕はこれ見てコモドール64ほしくなった。ヤフオクで16万……。


ここまで読んでくれたあなたは、きっと今頃GLSLを書きたくて仕方ないはず。
みんなGLSLやろうぜ、そしてライブコーディングしたりデモ作ったりしよう!