25. QBVH: 特長
•SIMD命令を効果的に使用
•Binary BVH比 1.6∼2.0倍 高速
•kd-tree比 1.3∼1.6倍 高速
•メモリは10%∼50%削減
•インコヒーレントなレイに対しても有効
(※以上は、下記論文での主張です。)
H. Dammertz and J. Hanika1 and A. Keller: Shallow Bounding Volume Hierarchies for Fast
SIMD Ray Tracing of Incoherent Rays.
http://www.uni-ulm.de/fileadmin/website_uni_ulm/iui.inst.100/institut/Papers/QBVH.pdf
29. QBVH: データ構造
child0 child1 child2 child3
__m128
__m128
__m128
__m128
__m128
__m128
min x min x min x min x
min y min y min y min y
min z min z min z min z
max x max x max x max x
max y max y max y max y
max z max z max z max z
child0 idx child1 idx child2 idx child3 idx
axis top axis left axis right fill
1ノードあたり sizeof(float) * 8 * 4 = 128
30. QBVH: データ構造
child0 child1 child2 child3
__m128
__m128
__m128
__m128
__m128
__m128
min x min x min x min x
min y min y min y min y
min z min z min z min z
max x max x max x max x
max y max y max y max y
max z max z max z max z
child0 idx child1 idx child2 idx child3 idx
axis top axis left axis right fill
min/max xyz …子ノードのAABB
child idx …子ノードのインデックス
axis …分割軸 0:x 1:y 2:z
31. QBVH: データ構造
child0 child1 child2 child3
__m128
__m128
__m128
__m128
__m128
__m128
min x min x min x min x
min y min y min y min y
min z min z min z min z
max x max x max x max x
max y max y max y max y
max z max z max z max z
child0 idx child1 idx child2 idx child3 idx
axis top axis left axis right fill
SIMD処理できるように
SoA(Structure of Array)レイアウト
41. 参考文献
H. Dammertz and J. Hanika1 and A. Keller: Shallow Bounding Volume
Hierarchies for Fast SIMD Ray Tracing of Incoherent Rays.
http://www.uni-ulm.de/fileadmin/website_uni_ulm/iui.inst.100/institut/Papers/QBVH.pdf
QBVHの論文です。
ototoi: QBVHを実装した - 明日ではないから
http://d.hatena.ne.jp/ototoi/20090925/p1
QBVHについての解説、他の空間構造とのパフォーマンス比較結果、ソースコードがあります。
Shirley P.: Realistic Ray Tracing, Second Edition. AK Peters, Ltd., 2000.
http://www.amazon.com/dp/1568814615
BVHのソースコード、AABB-Ray交差判定の詳しい説明が載っています。
Kayvon F.: CMU 15-869, Graphics and Imaging Architectures.
http://www.cs.cmu.edu/afs/cs.cmu.edu/academic/class/15869-f11/www/
Carnegie Mellon Universityのグラフィックスコースの資料。
Real-time ray tracingというリンクのPDFにレイパケットの説明があります。