Syoyo Fujita's Blog

raytracing monte carlo

Month: December, 2009

リアルタイムレイトレエンジニアを探せ!

http://lucille.atso-net.jp/blog/?p=873 のつづき.

とまあ、そんなわけで(?)、思いのほか早く、リアルタイムレイトレエンジニア、
特に SIMD 最適化とかの低レベルチューニングができるリアルタイムレイトレエンジニアを確保する必要が出てきてしまいました.

当たり前ですが、今からどこかポテンシャルのある人物を採用して、リアルタイムレイトレエンジニアとして教育していくのでは間に合わないわけで、
ヘッドハント的なことをしてどこからか引き抜いてくる必要があるわけですが、
うーん、海外含め、まあマジでリアルタイムレイトレエンジニアなんて現状希少品種なんでまず居ないわけ.
居たとしても、すでに他の仕事で忙しく無理だったりとか.

世の中、人財とタイミングですねー.
いずれにせよ、なんとか探してみようと思います.

で、なんでかしらないけれども、そんなことをするときに一番役立っているのが、6 年くらい前までの、僕がまだ学生のころに築いたグラフィックス関連の人脈.
これもやっぱりタイミングと言えるかも(リアルタイムレイトレへの布石は 6 年前から始まっていた!なんてね).

もし、オレこそリアルタイムレイトレエンジニア!と思わん方がいればご連絡ください.

とくに、GPU レイトレとかではなく、
固定小数点でレイトレトラバーサルが書けるなどのスキルがあったり、
メガデモコーディングなどの低レベルチューニングができるようなスキルがあるほうが望ましいです.

NativeClient + SW raytracer = A new web 3D experience in very near future.

NativeClient が Google chrome 4.0 beta に搭載されているっぽい.
そんなわけで、もう少ししたら、ネイティブな速度で動くアプリが一般的な Web ブラウザ環境で実現できそうな雰囲気があります.

と、そうなると、ここで SW レイトレを走らせたら… と思いますね.
(O3D は GPU に依存する&ラスタライズグラフィックスという時点で未来がない. そもそもラスタライザは死んだし)

簡単な見積もりを取ってみましょう.

いまのだいたいの汎用的な PC 環境を考えると、 CPU は 2 GHz くらい.

2 GHz のマシンで、384 x 256 ピクセルの解像度のレイトレを 30 fps で実現するには,
2 * 1000 * 1000 * 1000 (Hz) / (384*256*30) = 678 cycles/pixel

と、ピクセルあたり 700 サイクルあれば実現できます.
SIMD 最適化レイトレエンジンなら、テクスチャも張りつつ結構それなりのモデルを扱えるような負荷量です.

web での利用なので、ハイエンドゲームみたいにゴテゴテなグラフィクスをやらなくていいし、
またレイトレでしか実現できない表現で攻めれば、低解像度でも意外と満足するとおもう。

ってか逆に twitter のように、ゆるふわで頑張らないグラフィックスクオリティが求められていそう.
(ちょっとレンダラ野郎にとってはこの点は残念かもしれないけど)
もちろんポリゴンレンダラと十分差異化した上での話ですけど.

意外と SW レイトレって大きな市場を取れる気がするんですよねー. たとえば今回のような web グラフィックス用とか.
しかも意外とまだ競合(?)がいない感じ.