レイトレ合宿6に行ってきました
島です!
レイトレ合宿6 に行ってきました!
今年は神津島です。島にくると旅行している感が圧倒的で、テンションは爆上がりですね!(天候で帰れないリスクとかありますけど・・・延泊組は台風の影響が少し心配されましたが、全員無事帰ってこれたようです) 自分は朝のジェット船組だったので、1日目は温泉にひとまず入ったらすぐメインイベントへ
あとまったく知らなかったのですが、丁度その日に第1回神津島アクアスロンなるイベントが昼にあったらしく、
第7回 神津島アクアスロン大会が開催されました。 - 本日の神津島
温泉の場所から、レイトレ合宿イベント会場までの道路も封鎖される!!!ということで少し焦りつつレンタルサイクルを飛ばしました。(間に合ったはずだったんですが、結局みんなが遅れているのをいいことにフランクフルトを買っていて遅刻しちゃいましたが・・・すみません!
レイトレ検定
偉人Tシャツシリーズのおかげで、Ivan Edward Sutherlandを選ぶ問題は楽勝だったものの、結構わからない問題も。ぐやじい('ᾥ' )。 レイトレ合宿はラスタライザを滅ぼしリアルタイムレイトレーシングを実現することだったのか・・・精神を高めるためだと思ってた・・・
ところで、来年はぜひ三葉レイちゃんTシャツが欲しいです!よろしくお願いします!
参加していない方も、レイトレ合宿6 に問題と回答があるのでレイトレが好きな人は楽しめると思います。
三葉レイちゃんの応援メッセージ
※レイトレ合宿6 サイトより
なんと、特別に応援動画をいただいていたとのこと!かわいい。 なにか絡みがあるんじゃないかと前々から思ってはいましたが、驚きました! もちろん中の人などいないのですが、マネージャー的な人は現地参加者の中にいるんじゃないかと思っていたものの、どうやらそうでもないようです。かわいい
セミナー
Zinさんおよびishiyamaさんによる発表がありました。Zinさんの発表でのレンダラーのテストの話は、わりと頭の痛い問題だなぁ・・・と思います。特に組み合わせで発生するような問題をあぶり出すために、うまいテストを作りたい、というのはレンダラー開発だけで起こる問題ではないようにも思いました。 ishiyamaさんの発表では、ボリュームレンダリング方程式にいくつかの仮定をおくことで大気拡散のモデルを導出するというものでしたが、高度すぎて自分はポカーン状態でしたが、ざっくりと考え方や雰囲気を追うだけでも勉強になりました。こんなふうに自在に理論を操ることができれば、やれることの自由度がぐっと上がりそうで、それはとても良いことだなぁと思いました。 ずっと自分はボリュームレンダリングはほったらかしだったので、そのうちチャレンジしたいとは思っています。holeさんによると、
がサーベイとしてとても良いとのことだったので、後ほどチャレンジしたいです。
発表
今回の自分の最終絵はこちらです。 フルHD(1920x1080) のおそらく520sppいかないくらいで終了だと思います。(embree、ポリゴン超多くてもパフォーマンスめちゃくちゃ良くてびっくりです。
そして3位の景品をいただきました!ありがとうございます! 本だけどカメラ・・・カメラなのに本です。近い内に試したいですね!
カメラを賞品としていただきました!?これでカメラ完全に理解しちゃいます!#レイトレ合宿6 pic.twitter.com/xHnKvqO8Q3
— うしお (@ushiostarfish) 2018年9月1日
スライドとソースコードはこちらです。
スライドとhttps://t.co/MMhaeQ3bAD
— うしお (@ushiostarfish) 2018年9月4日
ソースコードです!https://t.co/ShVxPJZ3su#レイトレ合宿6
※ベルベットですが、ラフネスがわりと低い割にエッジの光り方が弱い気がするがちょっときになるところで、後ほど追加検証せねば・・・
あんまり尖ったことは盛り込めなかった反面、houdiniとかembreeとかうまく噛み合ってすごく開発はやりやすかったところは良かったです。来年加速データ構造をどうするかはちょっと悩みますね...それこそRTXに乗っかるならそれもいいのかもしれませんが、embree爆速だったとはいえずっとembreeというのも味気ない...
ところで、NUMA(Non-Uniform Memory Access)により半分しかうまくCPUを使えない!!問題がwindowsであったようなのですが、TBBのおかげか、自分のケースでは特に意識することなく妥当な並列性能だったように思いました。どうやらTBB 3.0からは透過的に扱えるになっているらしいです。
しかし、今年もみんなそれぞれ違ったチャレンジがあり、すごい! 目立つところだと、光源をガラスの中に閉じ込めるハードモードをやったり、VCMへのチャレンジや、メニーライト、Full-Featured with RTX、大気拡散...などなど アドベントカレンダーもどれも勉強になるものばかりです。調べたり勉強したり試したり、そしてそれが共有されて、みなが先生であり生徒になっていけば、きっとガンガン加速していきそうです。(ちょっと意識すぎるコメントになってしまいました。
シーンについて
スライドではあんまり詳しくシーンの作りについては共有しておりませんでしたので、こちらに自分の備忘録としても良いので乗っけておこうとおもいました。
イルカ
イルカについてはまずblenderでMirrorモディファイアとSubdivision Surfaceモディファイアを適用しつつ手作業でモデルを作成します。 blender 上でdeformモディファイアとかで曲げても良かったのかもしれませんが、今回はhoudiniをいろいろ使っていきたかったので、この時点でhoudiniに持っていきます。
Houdiniに持ってきたら、Wire Captureをして、
ラインをBendしたものを用意して、
Wire Deformを適用します。
波
Curveでまず1区画を作ります。
いったんゴニョゴニョやってメッシュ化します。縦には細かく刻んであるのは曲げても破綻しにくくするためです。
LineとCopy to Pointsを使って繰り返します。
Vexプログラミングで丸くします。
押し出したり、Fuseでつなげたり法線を調整したりして完成です。
Houdiniのよく挙げられる良いところは非破壊なところで、一番最初のカーブまで戻って修正が可能なところです
リング
まずはラインを用意して、
すごく適当にランダムに動かしつつ、法線とスケールをすごく適当に設定します。このとき微妙に配置が気にいらないときは、乱数シードをずらしてかっこいいのを探します。数十個程度パラパラと見れば良いシードが見つかるものです。
Copy To Pointsでサークルを配置して、
Poly Wireで厚さをつくって、
ポリゴンがめり込んでいるのは今回は嫌だったので、一度VDB from PolygonsとConvertで一度vdbを経由することで、 めり込みを回避しつつリングの境界線をなめらかにします。
あとは外側のリングを適当に配置して完成です。
クロス
まず適当な粗さでグリッドを用意しつつ、Cloth Objectボタンを押して、ビューポートでオブジェクトを選んで、Enterを押します。
この操作で自動的にシミュレーション用のノードが構成されます。(ここの構造あんまり慣れておらず、理解が浅いです。すみません すると、フレームを進めるとすでに自由落下をはじめます。
適当なオブジェクトを配置します。ポリゴンになってないとシミュレーションがうまくいきませんでした。
今度はCloth Objectボタンと同様に、Static Objectボタンを押して選択すると、自動的にシミュレーションノードに組み込まれます。
あとはオブジェクトサイズとか、物理パラメータを微調整するなどしつつ、シミュレーションすれば、
シミュレーションのポリゴンが荒い場合は、Subdivideノードを挟むだけで綺麗になります。
床
床がちょっとだけ寂しかったので、模様をつけることにしました。 まずはボックスを用意して、
グリッドをラインに変換したあと、
ワイヤーメッシュ化して、
Booleanで表面を削ってしまいます。
これだけです。 結構プログラミングのアイディアを簡単に組み込んでいけるHoudiniは、楽しいものです。 興味の湧いた方はまずはApprentice版をダウンロード!
部屋から見えた夕日
すごかったです。そして来年の合宿も楽しみです。 運営の皆様、大変ありがとうございました!