hibitの技術系メモ

数学とか3Dとか翻訳とか

KLabExpertCampに参加しました

 9/8~9/12、KLabExpertCampというイベントに参加しました。形式としてはインターンですが、業務を手伝った訳ではなく、参加者同士で集まってワイワイShaderを書いて映像作品を作ろうというものです。時節柄、オフラインではなくオンライン開催になりました。イベントの様子は#KlabExpertCampで。

作品

www.youtube.com

 Shaderなんぞやという方のために一応解説しておくと、この映像はすべてGLSLというプログラム言語で書かれたもので、3Dソフトによるポリゴン作成やレンダリング等は一切かませておりません。フラクタル処理を多用することにより、このような映像を生み出しています。

 コードを見たいという方のためにShaderToy(前半)(後半)にリンクを貼っておきますが、そこそこのグラボを積んでいるPCでないと計算負荷でPCが固まるおそれがあるので注意です。

 音楽はLogicで自作して後付しております。つよい人だとGLSLで音声すら作成する人もいるらしいです。(つよい)。

技術的な感想

  • 初歩的なレイマーチングはやったことはあるけど、カメラを動かしてスクリプトを作ってというのは初めてだった。
  • アポロニアンマンデルバルブを初めて使った。コードは流用させていただいたけど、思いつくのも実装するのもすごい。
  • レンダリングの処理をしてより見栄えを上げたかったけど、4日間の作業時間では無理だった。
  • VSCodeでGLSLをプレビューする環境を作り上げ、タイムラインの細かい調整はShaderToy Unofficial Pluginで済ませるというワークフローを確立した。作業効率50倍ぐらいになったと思う。
  • やっぱりフラクタルは楽しい。

イベント的な感想

 Shader勢が集まってShaderを書く会ということで、以前からVRChatで話したことある方、話したことはなくてもなんとなく名前は知っている方が多かったです。全員初対面というよりは話しやすい状態だったので個人的には助かりました。4日間で何回か講義を受けて、後はひたすらオンライン会議を繋ぎながら作業。入退場はある程度自由だし、ミュートもカメラオフも自由なので、他の作業と並行しやすかったのも助かりポイント。オフラインで集まって合宿みたいなのも、それはそれで楽しそうだったけど、今のご時世ではそもそも無理だったので、難しい……。

お世話になった諸々

  • かねたさんのコード。この🤔はかねたさんから許可を頂いて流用させていただきました。また、かねたさんにはメンターとしてレイマーチングやマテリアル設定のサンプルコード等もいただきまして、全面的にかなりお世話になりました。ありがとうございます!
  • アポロニアンのコードの本質的な部分はiq神のShaderToyから流用させていただきました。10行ぐらいの距離関数でこれが実装されるとか、信じられねえ……。
  • マンデルバルブのコードはこの記事から流用させていただきました。
  • GLSLの動画化には、避雷さんのShader Recを使わせていただきました。1分超の動画を投げても返ってくる。すごい。
  • 楽曲制作にあたっては、よじしょー君に色々とLogic操作の指導や助言をいただきました。助かった。

最後に

 このような有意義なイベントを企画したいただいたKLabの運営陣の皆様、誠にありがとうございました。他の参加者の作品も#KlabExpertCampから見られるので、興味があればぜひ。

 (☝ ՞ਊ ՞)☝KLab最高~~(☝ ՞ਊ ՞)☝