2019年7月に作ったシェーダーを紹介する(VRChatライブコーディングもやったぞ!)
はじめに
毎月やっている月毎に制作したシェーダーの紹介第6回目です。
今月は先月までと比べて忙しい時期だった(後先月頑張りすぎて燃え尽きていた...)ので、あまり活動できませんでしたがいくつかシェーダーを作ったので紹介します。
7/3
仕事から帰ってきて友人と通話している間にのんびりシェーダーライブコーディングの練習をしていてできたものです。
Travelerに登場した物体と似たようなものを出そうという意思と、bloom表現をボリューメトリックにしようと考えてできました。
一度のマーチングループで衝突判定とボリューム累積を行っているので、結構いい加減な見た目になっていますが、これはこれでありだと思ってます。
動くものはこちらから glslfan.com
7/16
ネオンとブラーがいい感じのシェーダーを作りました🤔https://t.co/g2tK3NE58o#shadertoy #glsl #raymarching pic.twitter.com/k4iXZzFjdq
— かねた (@kanetaaaaa) 2019年7月15日
会社の同僚にこちらのページを教えてもらい、インスパイアされて作り始めました。 www.reddit.com
Glow表現
レイマーチングでGlow表現をする時はボリューム累積を行うのが一般的なので、今回も例に漏れずそのようにしています。
自分が今までやっていたボリューム累積と異なるところとして
- マーチ数は変更せずにシーンの深度を見てマーチ距離を決定する
- ディザパターンを使用して見た目の情報量を増やす
を取り入れてみました。
深度を見てマーチ距離を決定することで、距離が近い箇所のボリューム累積が正確になり何もしないよりかは良い見た目になったと思います。
ディザパターンはこちらのShadertoyで実装されていたベイヤー配列というパターンを使わせていただきました。
特殊な距離関数合成
距離関数に関する情報はiq氏のページがとても有名ですが、MERCURYというデモグループのこちらのページにもとても有益な距離関数の情報が載っています(こちらは主に距離関数同士の合成に関するメソッドが多数あります)
スパイクブラー
このブラーをスパイクブラーと呼ぶか知りませんが、トゲトゲになるので僕はそのように読んでいます。
実は全然特殊なことをしていなくて、スクリーン中央から放射状にノイズを作成してアニメーション変数iTimeのオフセットとして利用しています。
iTimeにオフセットしてモーションブラーは過去にTraveler 2で利用したテクニックですが、これを放射状なノイズに変更するだけで全然違った印象になりました!
7/17
昨日VRChatで二時間弱ライブコーディングをやりました!
— かねた (@kanetaaaaa) 2019年7月17日
その時にできたものです🤔https://t.co/CmE0gP16jv#glsl #raymarching #neort #VRライブコーディングバトル pic.twitter.com/whdWFfEpIU
帰宅直前、玄関の前あたりでブタジエン氏に誘われて2度目のVRChatライブコーディングをやりました!
今回はなんと坪倉氏制作の4人ライブコーディングバトル特化の闘技場風のワールドで、私含めて4名のライブコーダーで二時間弱で同時にコーディングを実現できました!!
世界初!VR内でライブコーディングバトルを行いました!マジでとんでもない空間だった…。
— 坪倉輝明@メディアアーティスト (@kohack_v) 2019年7月17日
また軽率に開催したい。#glsl #raymarching #vrchat
【テスト配信】VRChatでライブコーディング【VRChat生放送 #20】 https://t.co/vVlApFC2j2 pic.twitter.com/VeN0FLLeS8
当日の様子はこちらにアーカイブされています。
私はアイデアが思いつかないときは過去に見た映像などを再現しようと頑張る傾向にあります。
コーディングが終わった後に、「元ネタを忘れてしまったがTwitterで見た映像を再現しようとした」という話をしたら、観覧者の一人だったfotfla氏が元ネタを知っていて、まさかの裏ライブコーディングで同じネタで作っていました...!
先に言い訳をしておくと、これを書こうとしたら(大元ネタはKeijiroさんのやつ)まさかかねたさんとかぶった。https://t.co/9YnyZGQD4xhttps://t.co/GbTgXD3heO
— fotfla (@fotfla) 2019年7月17日
こんなこともあるのかと盛り上がっていました。
さいごに
7月も何とかシェーダーを作ることができました。
3日坊主で有名な僕が、7ヵ月も続けられていることが今でも驚きです...(それだけシェーダーで遊ぶのは楽しい)
最近はGLSLやシェーダーライブコーディングを始める人が多くて、TLを眺めるだけでもとても楽しいですし、VRChatというプラットフォームでみんなでワイワイシェーダーを書いてボイチャするという空間が楽しすぎました!
8月は何を作るかまだ未定ですが、もし何か作ったら紹介します。