normalize.fmの第032回にゲスト出演させていただきました。
#normalizeFM の新エピソード公開しました。
— h_doxas (@h_doxas) October 18, 2022
今回は @gam0022 さんをゲストに、普段の収録と比較するとかなりテックな話題に寄った感じで、深い技術の話をいろいろうかがいました。
032. たゆまぬ努力とキャッチアップhttps://t.co/acML0WOwYQ
normalize.fmの第032回にゲスト出演させていただきました。
#normalizeFM の新エピソード公開しました。
— h_doxas (@h_doxas) October 18, 2022
今回は @gam0022 さんをゲストに、普段の収録と比較するとかなりテックな話題に寄った感じで、深い技術の話をいろいろうかがいました。
032. たゆまぬ努力とキャッチアップhttps://t.co/acML0WOwYQ
自作のレンダラーでこんな動画を 10分の制限時間 でレンダリングして5位をいただきました!
レイマーチングとポリゴンをハイブリッドに描画できる単方向パストレーシングのレンダラーをOptiXで開発して16人中7位でした。
— がむ (@gam0022) September 4, 2022
レンダリング時間は10分(1フレーム2秒)だったので、
NEEやMISなどサンプリングの高速化も行いました。
動画は本戦で実際に出力されたファイルです。#レイトレ合宿 pic.twitter.com/LDgKL7gLsY
レイマーチングはレイキャスティングと比べて遅いと感じていましたが、なるべく同じ条件で計測した場合に実際どのくらい差があるのか比較してみました。
メンガーのスポンジをレイマーチングとレイキャスティングでそれぞれ交差判定を実装し、フラクタルの深度を1~4に変化しながら計測しました。
次の画像はレイマーチングによる深度4のメンガーのスポンジです。
先に結果から発表すると、なんとレイマーチングはレイキャスティングの15~20倍くらい遅いようでした。
ここまで遅いなんてショック😨…
256サンプリング時のレンダリング時間(秒)
フラクタルの深度 | 1 | 2 | 3 | 4 |
---|---|---|---|---|
レイマーチング | 8.85388秒 ![]() |
9.00077秒 ![]() |
9.14309秒 ![]() |
9.29724秒 ![]() |
レイキャスティング | 0.445493秒 ![]() |
0.466056秒 ![]() |
0.50258秒 ![]() |
0.602458秒 ![]() |
自作のレンダラーでこんな画像を 60秒の制限時間 でレンダリングして4位をいただきました!
ちなみに4K解像度(3840x2160)です!
事前に本番環境で動作確認できなかったこともあり、よく見ると意図しないアーティファクトが発生しているのですが、許容レベルに収まったのはラッキーでした。
NVIDIA® OptiX上で『レイマーチング×パストレーシング』による物理ベースレンダラーを開発しました。
レイとオブジェクトの交差判定をレイマーチングで行い、ライティングをパストレーシングをするという、レイマーチングとパストレーシングのハイブリッドなレンダリングを実現しました。
NVIDIA® OptiX上で
— がむ (@gam0022) July 28, 2019
『レイマーチング×パストレーシング』
を実装できた😉 #レイトレ合宿 pic.twitter.com/FKbuHiXqmP
レイトレ合宿6の概要や自作レンダラーの紹介や取り組んだことについては前編に詳しく紹介させていただきました。
この記事では後編(当日編)として合宿当日の様子について振り返ります。 主に参加者との交流や神津島観光やレクリエーションの様子について書いていきます。 現地の雰囲気が少しでも伝われば幸いです。
また、他の参加者のレポートも合わせてお読みいただくと、内容を補完できると思います。
この記事では前編(準備編)ということで、自作レンダラーに実装した機能や手法の紹介を行います。
後編(当日編)はこちらです。
9月1日(土)~9月2日(日)に神津島で開催されたレイトレ合宿6に参加しました。
レイトレ合宿は完全自作のレイトレーサーを走らせて画像の美しさを競うイベントです。
参加者の中には、Arnold RendererやRadeon ProRenderといった商用のレンダラーの開発者、 SIGGRAPH 2017で発表された研究者など、グラフィック分野の最先端で活躍されている方々もいらっしゃり、大変刺激を受けました。
私は今年で3回目の参加になります。過去の参加報告はこちらです。
Rustで開発したパストレーシングによる自作の物理ベースレンダラー(Hanamaru Renderer)をバージョンアップして、 こんな感じの画像を123秒でレンダリングしました。
今回は19人中10位だったので、ギリギリ入賞圏内に潜り込めました!
↑リンクをクリックするとオリジナルの可逆圧縮の画像になります。
ソースコードはGitHubに公開しています(スターください)。