トップ
レイトレ合宿!
Rendering a beautiful image within an hour!!
リザルト!
1st. githole/akari 25票(ペナルティ0) 解説資料
2nd. nikq/rlr 10票(ペナルティ0)
3rd. shuichih/oreoren 9票(ペナルティ0)
4th. kioku-systemk/edupt 4票(ペナルティ0)
4th. elgraiv-take/1hrenderer 4票(ペナルティ0) 解説資料
6th. uimac/burger 4票(ペナルティ1) 解説資料
7th. hi2p-perim/hinatarender 3票(ペナルティ1) 解説資料
8th. qatnonoil/チナッツ光 2票(ペナルティ1) 解説資料
8th. Pentan/Render1h 2票(ペナルティ1)
10th. ototoi/pulsar 1票(ペナルティ0)
11th. demotomohiro/batchRIs 0票(ペナルティ0) 解説資料
12th. stoikheia/RT2013 0票(ペナルティ1) 解説資料
12th. ProjectAsura/Salty 0票(ペナルティ1) 解説資料
時間切れ
勝手に補足して勝手に載せます。過去のリストはこちらから。
edupt!
実装の参考にするために、eduptとその解説記事をholeさんに書いていただきました!
初めてレイを飛ばす方は参考にしてみてください。
参加者!
現在の参加予定者リストは以下です。
現地エントリー(順不同)
@demotomohiro(demotomohiro/raytomohiro(非公開))
リモートエントリー(順不同)
About!(概要)
"レイトレ合宿!"は、オフラインレンダリングオフライン集会です。
※TokyoDemoFestとは一切関係がありません
今年のRevisionのPC DemoCompoにおいてFairlightとCloudkickerのリアルタイムレイトレース作品「5 faces」が優勝を飾り大きな話題となりました。
リアルタイムレンダリングにもいよいよレイトレースの波が迫っていると言っても過言ではないでしょう。
いきなりリアルタイムにレイトレースを行うのは難しいので、手始めに1時間で絵を一枚レンダリングし合いましょう。
期間は、20138月24日~25日の一泊二日です。
場所は、湯川原の青巒荘です。
参加人数は10名~18名ほどを想定しています。
参加費は、一人15500円です。
5 faces by Fairlight & Cloudkicker
CompoRule!(競技ルール) 詳細
1.レンダラの仕様!
基本的な仕様
Windows7 HomeEdition64bit上で動作する必要があります。VMなどは入れません。
全てのソースコードは自作である必要があります。
運営が許可したもの以外のミドルウェア、ライブラリ、他のソフトウェアの呼び出し等は一切を禁止します。
許可されているもの一覧
WindowsAPI。VC++2012の最新ランタイムを入れておきます。
DirectX。最新のランタイムをインストール&Dx11環境を提供します。ComputeShaderなども利用できます。
OpenGL。グラボのドライバーを最新にしておきます。
boost。BoostProの1.51.0と本家の1.54.0をインストールしておきます。
.NET Framework。4.5のランタイムをインストールしておきます。
OpenMP
公式が用意したユーティリティ群
dllのバージョンの不一致など心配である場合は、自らレンダラがあるフォルダに入れても構いません。
許可されていないもの例
WinSock
GLUT
その他、許可されたものに載っていない全てのもの
言語
C++
C#
上記以外の言語を使用したい場合は個別にご相談ください
コンパイラは自由です。プロファイルをして最適化を施すタイプのコンパイルも許可されます。
開催後に、全てのソースコードをgithubに公開する必要があります。
公開されるソースコードの一部を.lib,.dllで隠したものは認められません。
公開されるソースコードのライセンスは自由です。
一分毎にレンダリング中のフレームバッファの内容(連番)と、最終的なレンダリング結果を画像ファイルとして出力して下さい。
レンダリングに59分使った場合は、59枚の途中経過画像と、最終的なレンダリング結果の二つが出力されていることになります。
画像形式
デフォルトのIrfan viewで表示できる24bpp/32bpp形式で出力してください。
hdr形式などHDRを持つ形式は認められません。
公式でbmpへのエクスポーターを用意しました。(simple_bmp_exporter)
出力イメージサイズに、制限はありません。
展示用プロジェクタ-はLP-Z3です。1,280×720で表示するので、コンペ用にはあまり大きな解像度は必要がないかもしれません。
レンダリングのアルゴリズムに縛りはありません。ラスタライザを使っても構いません。
※以前のルールにあった「プレビューの表示」の項目は廃止されました。
リソース
レンダリング中にネットワークに接続してはいけません。
実行中のファイル書き込みは許可されます。生成する一時ファイルのファイルサイズに関して制限はありません。
実行ファイル、全リソースファイルを合算して1GBを超えてはいけません。
リソースにzip圧縮などを施している場合は、圧縮後のサイズで計算します。
実行前に事前に計算したものをロードするようなものはなるべく控えてください。
「テクスチャ一切禁止」など全面禁止にすると、にっちもさっちもいかなくなるのでこのあたりは「なるべく控えて」の表現にしました。
「単なる画像ビューワ」、「AOの事前ベイク」などの最悪ケースを想定して書かれています。
環境情報を事前に「焼き込む」系のテクニックは「フライングしたレンダリング」とみなし、レンダリング開始前に行った場合は全て禁止します。その「焼き込み」自体も実行時に行った場合は問題ありません。その他、テクスチャにマテリアルの情報を格納する事などは許可されています。
「人間の手で作った」か「自動で生成されるものか」が境界線であると考えてください。
レンダリング時間
レンダリングが一時間を超えた場合は、最後に出力されたフレームバッファイメージを最終結果とします。
コンポマシン(レンダリング用マシン)
運営で用意するノートPCでレンダリングを行います。
Prime Note Galleria QF540を持っていきます。(二年前のものなので、もしかすると買い替えるかもしれませんが、期待しないでください。。)
持ち込みPCでレンダリングを行う場合は、エキシビジョンとなります。
2.サブミット!(作品提出)
サブミットの意思がある場合は、まず参加登録を行ってください。参加登録後、専用のMLに追加します。受付終了しました。
サブミットは、現地に参加する予定がなくても行うことができます。受付終了しました。
参加作品はgithubにて管理をお願いします。
privateリポジトリとpublicリポジトリのどちらで開発しても構いません。
自身のprivateリポジトリで開発を進める場合は、このアカウントをCollaboratorに設定をして下さい。
privateリポジトリを作ることができず、かつprivateリポジトリで開発を行いたい場合は連絡を下さい。
githubにて最後に行った「タグ付け」をしたpushをサブミットとみなします。
タグ名は、「rendering1h_[バージョン番号]」としてください。
タグ付けは〆切(8月23日 24:00)前に行ってください。
タグを作ったら、一度運営に何らかの手段で連絡を下さい。
連絡があったバージョンについて、ファイルの不備がないかのチェックと、簡単な動作確認をします。
不備の有無について折り返し連絡を必ずします。連絡がない場合は再度連絡をお願いします。
サブミットは何度でもできます。
githubへpushされるものには以下のものを必ず含めてください。
全ソースコード
ビルド済み 実行ファイル
ロードされるリソース
readme
合宿当日の発表用スライド(現地参加者と、希望者のみ)。スライドの形式については「投票」の項目を参照してください。
レンダリング結果(デフォルトのIrfan viewで表示できる24bpp/32bpp形式。)
1時間以内でレンダリングしたものを必ず含めてください。
レンダリング時間を長くとることでさらに良い結果になる場合は、そのイメージを追加で含めても構いません。
これらのイメージは、現地でのレンダリングが何らかの理由で上手くいかなった場合に使うことを想定しています。
readmeには以下の項目を必ず含めてください。
作者名
作品名
レンダラ名
作品コンセプト
技術的アピールポイント
ディレクトリ構造は以下のようにしてください。
src/以下 : 全ソース
bin/以下 : 実行ファイルとリソース
etc/以下 : スライド,readme,実行結果
階層の深さについては特に指定はしません。
エキシビジョン(非競技レンダリング)
コンポ(競技)としてではなく、見世物としても作品を提出することが可能です。その場合はエキシビジョンという扱いになります。
投票、景品の授与などは行われません。
以下の条件に合致するものは、エキシビジョンとして登録されます。
事前にレンダリングが1時間を超えることが判明しているもの。
特殊な環境やマシンパワーが必要で、コンポマシンでは動作させることができないもの。
コンポとして提出したが、何らかの理由で失格になったもの。
3.投票!
投票の前に、制作者のアピールタイムを設けます。
制限時間は10分。
テクニカルなこと、コンセプト的なこと、その他何のことについて話しても構いません。
アピールタイム中に流すスライドを1枚以上、10枚以内で作成してください。
スライドの形式は、pdfかppt/pptxかテキストです。画像を載せても構いません。
リモート参加の人もスライドを提出することは可能です。
リモート参加で、アピールタイムで何か話したいことがある場合は、要相談です。
投票
会場参加者のみが可能です。
一人持ち点5点で、好きな作品に投票します(一つの作品に複数点投票することも可能)。
ランキング
最終得点は、「総獲得票」によって計算されます。
上位(三位までを予定しています)には景品を用意する予定です。
リモートエントリーの場合は、景品はもらえません。リモートエントリーではない人が繰り上がり景品が授与されます。
※以前のルールでは、「被投票数をレンダリング時間で割る」計算方法を採用するとしていましたが、換算の仕方として適当ではなく、さらにルールの軸がブレるということで廃止しました。
4.その他!
普段Windowsをあまり使わないという方へ
レンダラーはOS非依存な部分が多いはずなので、最終的にwindows用の実行ファイルになっていれば、開発は他のOS上で行っても構いません。
運営サイドでWindows上でのビルドチェック/動作チェックなどは行わないので、各自で対応をお願いします。
細かい注意点
PCの状態/スペックの読みによっては、事前に想定していたレンダリング時間の予測が外れることが考えられます。起動直後にテスト的に一部をレンダリングしベンチマークを取ったのちに、出力解像度、サン プル数、アルゴリズムを調整する、時間が足りなくなったら打ち切るなどの処理を行うことを推奨します。
版権に関わるものは一切レンダリングしないでください。
ルール違反をしたもの、ルールに記載のないものでもフェアではないと判断したものについては、全てエキシビジョン扱いとします。
レンダリング中は、温泉に入ったり、卓球をしたり、おしるこを飲んだり、ラムレーズンを食べたりして時間を潰します。
TimeTable!(仮時間割)
金曜日24:00: git push 締切
土曜日16:00: チェックイン
土曜日16:30: レンダリング開始
土曜日18:00: 夕飯&セミナー開始
18:30: 実践! QBVH
19:00: レイトレ空間構造入門
19:30: フォトンマップ入門
20:00: 曲面レイトレ入門
土曜日20:30: 夕飯&セミナー終了
日曜日 8:00: レンダリング終了&結果発表&投票&順位発表
日曜日 9:30: チェックアウト&解散
Seminar!(セミナー)
一日目の夕食時に宴会場にて、レイトレに関するセミナーが行われます!
1. 「実践! QBVH」@shuichihayashi (スライド)
QBVHでレイトレの衝突判定を高速化する方法について、BVHの基本的なところから、
論文の理論の説明、今回実際どのように実装したかを解説します。
実用的なレイトレーサーに必要な空間構造の説明
各種空間構造の概要、BVHの実践など。
3. 「フォトンマップ入門」@shuichihayashi (スライド)
フォトンマップの理論、アルゴリズムの流れ、実装の方法、私が最初勘違いしたポイント等などを
解説します。ちょっと理解が怪しい所は、参加者諸兄のツッコミに期待します。
曲面を直接レイトレでレンダリングする方法の紹介
各種パラメトリック曲線の概要、曲面レイトレの実践方法など
Location!(場所)
場所は、湯川原の青巒荘の予定です。
Twitter!
Staff!
企画: q
監修: hole
Link!
他のレンダリングコンペティションや、マテリアルのウェブページ
便利なツール
very sleepy: Indigo Rendererを作ったNick Chapmanさんが作ったプロファイラsleepyの改良版。
Dr.Memory: 高機能なメモリリーク、メモリ破壊チェッカーです。
書籍紹介
Ray Tracing from the Ground Up: レイトレ入門書籍。pbrtよりも平易でわかりやすい印象です。 (公式サイト)
Physically Based Rendering: 物理ベースレンダラの全ソースコードを解説した書籍。網羅的に解説されているようですが、難解な印象です。通称pbrt。(公式サイト)