@FL1NEさんと一緒にデモシーンについて話しました。 私は簡単なシェーダーライブコーディングをしながらプログラミングによる形状のモデリングについて解説しました。
@FL1NEさんと一緒にデモシーンについて話しました。 私は簡単なシェーダーライブコーディングをしながらプログラミングによる形状のモデリングについて解説しました。
GDCは初参加でしたが、スポンサーセッションで登壇したり、Unity本社でUnity Profilerのミーティングを行ったり、 Meetupに参加して海外のシェーダーやWebGLのエンジニアと交流したり、Stadiaの遅延を味わったりと、セッションの聴講だけでなく貴重な体験をたくさんできました!
Google と KLab の2社の合同セッションReal-World Techniques and Best Practices for Optimizing Android Gamesで登壇しました。
前半はGoogleのFrancescoさんが「Android Common Performance Pitfalls」というタイトルで「Androidのパフォーマンスチューニングのはまりどころ」を紹介しました。
後半はKLabから私(@gam0022)、@ohomagic さん、@hnw さんの3人で 「Continuous Profiling for Android Game Performance Optimization」というタイトルで「CI/CDと連携したモバイル(Android)向けUnity製ゲームの自動プロファイリングシステムの構築方法」について紹介しました。
3月にサンフランシスコで開催される #GDC2019 で登壇します!
— がむ@GDC登壇した (@gam0022) 2019年2月18日
自動プロファイリングシステムによる
Unity製Androidゲームの継続的なパフォーマンスチューニングについて、
弊社KLabの取り組みをご紹介します😊https://t.co/NEiOPRHKPe
一応 Presenter です#GDC19 #GDC2019 pic.twitter.com/Eq6pcDpKuN
— がむ@GDC登壇した (@gam0022) 2019年3月19日
資料と動画は近日公開する予定ですので、乞うご期待ください!
みなさんはGLSL Sandboxのシェーダーをローカルで編集したりgitで管理したいと思ったことはありませんか?
VSCodeの拡張機能の『Shader Toy』をインストールすれば簡単に実現できます。
本拡張はShadertoyとGLSL Sandboxの互換性を備えており、 どちらのコードも修正なしにそのまま動作できます!
WindowsとMacの両方に対応しています。
次の画像はTraveler2 by kaneta(Tokyo Demo Fest 2018 GLSL Compo優勝作品)をVSCode上で動作させた様子です。
導入方法と使い方は簡単です。
GLSLのコードを編集した状態でコマンドパレットから「Shader Toy: GLSL Preview」を開くだけです。
GLSLのコードを認識しないときは、「Shader Toy: GLSL Preview」を閉じてから再実行すると認識できる場合があります。
12月1日~12月2日に秋葉原で開催されたTokyo Demo Fest 2018(以下、TDF)に参加しました。
TDFは、日本国内で唯一のデモパーティです。 コンピュータを用いて作成された楽曲や映像作品をデモと呼び、 デモに関心のある人々が一堂に会してコンペティションを行ったり、技術を共有したりといったイベントをデモパーティと呼びます。
今年のTDFでは、さだきちさん(@sadakkey)とチームを組み、『WORMHOLE』(映像:gam0022 / サウンド:sadakkey)という作品を発表しました。
Windows実行ファイル形式のデモ作品のコンペティションであるCombined Demo Compoにて、本作品が1位に選ばれました!
この記事では『WORMHOLE』の映像制作技術について解説します。 ソースコードを公開していますので、ご興味のある方はそちらもご確認いただければと思います(スターください!)。
サウンド編についてはさだきちさんが解説されています。あわせてご覧ください!
「ワームホールによる空間移動」をコンセプトとして、 不思議な球体がワームホールを介して非現実なデジタル空間と水平線の広がる自然空間を行き来する映像を制作しました。
不思議な球体がトンネルを進んでいくと、周囲を明滅する光がだんだんとモノクロからカラフルに変わっていきます。 トンネルの最奥にあるワームホールへ近づくほど明滅はだんだんと激しくなっていき、ホワイトアウトとともにワームホールを越えると、球体は海上に出現します。 その後、球体はじわじわと歪んでいき、戦闘機へと形を変えます。
変形中の不思議な球体の上には、私が尊敬するデモシーナーの名前を表示しました。 これはグリーティングと呼ばれるデモシーンにおける慣習です。
戦闘機はパーティクルを放ちながら海上を進み、パーティクルが一瞬だけTDFのロゴを形作ります。 そして戦闘機は元の球体に変形し、突如現れたワームホールに吸い込まれるようにして冒頭のトンネルのシーンに戻っていきます。
実装ならびに制作にはUnityを利用しました。 詳細は後述しますが、Timeline, TextMeshPro, Chinemachine, PostProcessingStack v2といったUnity 2018.2の新機能も活用しています。
発表タイトルは「もっと綺麗で写実的な絵作りをしたい!レイマーチング向けのシェーディング技術」です。
発表の概要はこんな感じです。
AOがどういう意味を持つのか、大域照明にどんな関係にあるのか、などを学んでいただけたら嬉しいです。 レイマーチングによるAO計算の動作原理を図で解説した日本語の資料は見たことが無いので、 この発表を聞いて「なるほどな」と思ってもらえれば幸いです。
チーム名のアロマゲドンは、TVアニメ『プリパラ』に登場する白玉みかんさんと黒須あろまさんの2人組アイドルユニットの名前をお借りしました。 本チームでは、白玉みかんさん役を私が、黒須あろまさん役をkanetaaaaaさん(以下、あろま)が務めました。
予選結果は、407チーム中81位で、最終スコアは46,461でした。
アプリのチューニングはある程度はできたのですが、GET /icons
の帯域問題に対処できなかったのが敗因でした。
来年の予選突破に向けて、反省と感想を残そうと思います。
去年に引き続き、2回目の参加でした。去年の記事はこちらです。
Tokyo Demo Fest(TDF)とは、こんなイベントです(公式サイトからの引用)。
Tokyo Demo Fest は日本で唯一のデモパーティです。 デモパーティは、コンピュータを用いたプログラミングとアートに興味のある人々が日本中、世界中から一堂に会し、デモ作品のコンペティション(コンポ)やセミナーなどを行います。また、イベント開催中は集まった様々な人たちとの交流が深められます。
今年は、なんと私の勤め先であるKLab株式会社もTDFにパートナーという形で参加させていただきました! 去年の様子を紹介したことをきっかけに、弊社内でデモシーンへの関心が高まりつつあり非常に嬉しいです。
エナジータワー #TokyoDemoFest pic.twitter.com/O6dXOFwGXq
— kemas_Ti(カフェインファイター (@kemas306) 2017年2月18日
また、個人としては「Fusioned Bismuth」という作品でGLSL Graphics Compoで3位を頂くことができました! 自分の作品を多くの方に評価していただけて、大変嬉しいです!!ありがとうございました!
#TokyoDemoFest 2017のGLSL Graphics Compoにて、昨年に引き続き3位をいただきました!嬉しいです!
— がむ (@gam0022) 2017年2月19日
せっかくなのでトロフィーを並べました(左が今年、右が去年)。 pic.twitter.com/In8QqliO1L
2016-02-20〜21に開催されたTokyo Demo Fest 2016に参加しました。
Tokyo Demo Festとは、このようなイベントです(公式ページからの引用)。
Tokyo Demo Fest は日本で唯一のデモパーティです。 デモパーティは、コンピュータを用いたプログラミングとアートに 興味のある人々が日本中、世界中から一堂に会し、 デモ作品のコンペティションやセミナーなどを行います。 また、イベント開催中は集まった様々な人たちとの交流が深められます。
私は”Carbon”という作品をGLSL Graphics Compoに提出して、3位入賞してきました!
さらに、three.jsの作者であり、GLSL Sandboxの作者でもあるMr.Doobと握手してきました!
今回が初参加でしたが、本当に最高のイベントでした!楽しかったです。 オーガナイザーのみなさん、参加者のみなさん、ありがとうございました!
全体のレポートについては、@h_doxasさんの記事がとても分かりやすいです。
WebGL 総本山を更新しました > 超ハイレベルな作品が入り乱れた Tokyo Demo Fest 2016! 大興奮の2日間をレポート! - WebGL 総本山 https://t.co/ZeYrYoLiz2 pic.twitter.com/e3XFwpIrCD
— h_doxas (@h_doxas) 2016, 2月 23
この記事では、GLSL Graphics Compoで発表した”Carbon”という作品の裏話と、個人的に印象に残った思い出などを話します。
Compo(コンポ)とは、一定の制約の中で映像や音楽の作品を製作し、投票によって順位をつけるイベントです。
今年のGLSL Graphics Compoでは、GLSL Sandbox上で動作する映像作品の順位を競いました。
GLSL Sandboxで動作させるためには、フラグメントシェーダだけで作品を実装する必要があります。 当然ですが、立体データや画像データは読み込めないので、コードだけでなんとかする必要があります。
私は”Carbon”というタイトルで作品を提出して3位入賞しました。 今年のGLSL Graphics Compoはレベルが高かったので、入賞できて嬉しかったです。
コチラから動くデモをご覧になれます!
GLSL Compo に 「Carbon」という作品を出しました!https://t.co/UOqE3FvFyWhttps://t.co/JxkH3LtI4t#TokyoDemoFest pic.twitter.com/yfkJBzQllD
— がむ@TDF最高だった (@gam0022) 2016, 2月 21
#TokyoDemoFest の "Carbon" の回路にglow効果をつけたのでスクショ撮り直した。Shadertoyにも反映。https://t.co/zeIZhsc8zT pic.twitter.com/Q4UKTCfAsP
— がむ@TDF最高だった (@gam0022) 2016年2月27日
私の「Carbon」が GLSL Compo で入賞しました👏
— がむ@TDF最高だった (@gam0022) 2016年2月21日
ありがとうございます! #TokyoDemoFesthttps://t.co/f7LoEYWzFq pic.twitter.com/SIel9DKA6n
今回もレイマーチングによる作品です。
距離関数(distance function)は、Mandelboxというフラクタル図形を mod でループさせただけなので、非常にお手軽です。