投稿

9月, 2013の投稿を表示しています

ToyBox を RIB 対応にする話 その 7

イメージ
Out of Core な MPBS レンダラ(SnowStorm)ができたので、その比較画像作成のためにレイトレーサ(ToyBox)の機能拡張を行いました。モデルは少し前に流行った Perfumeモデルです。 レイトレーシング(層化 PLS 16x16) MPBS (Out of Core) - スーパーサンプリングなし 実際のレンダリングは ToyBox を RIB 対応させた tb.exe で行いました。 主な機能拡張は、 ReadArchive での .obj ファイル対応 水平画角指定対応 です。 ReadArchive での .obj 対応では、形状のみを読み込むようにしてあります。.obj フォーマットでは .mtl ファイルと連携してマテリアルの指定も可能なのですが、やはり .rib ファイルでは、シェーダの切り替えなども簡単に行いたい場合が多いと思い、今回は形状データの読み込みのみとしました。 水平画角指定は Projection コマンドに fov キーワードだけでなく、horizontalFov キーワードを独自拡張として追加しました。これは SnowStorm 側が水平画角指定を行っているためです。 その他、バグフィックスなども行いました。XY 平面、YZ 平面、ZX 平面に平行なポリゴンだけからなる形状データを読み込んだ場合、レンダリングされないというバグを取ったり等々。 tb の方も、何気に少しずつ開発が進んでおります。 RIB 対応だけではあまり意味がないので、RSL 対応までできたら公開しても良いかなぁ、などと考えております。 ちなみに上記画像は、こんな RIB でレンダリングしてます: # ReadArchive test Display "PerfumeRGB.ppm" "file" "rgb" Format 800 450 1.0 Projection "perspective" "horizontalFov" [ 45 ] Imager "background" "color" [ 0 0 0 ] Pix