Triangle mesh voxelization test using GPU

説明 (In Japanese)

  • GPU を使って三角形メッシュをボクセル化するテストプログラムを自宅で書いてみました.
  • 下は Sponza の内部です.



  • 下図は Sponza を外から見たものです.



  • 手法としては "OpenGL Insight のボクセル化の記事に載っていた方法で三角形メッシュをジオメトリシェーダで XYZ 各平面に射影してラスタライズし, 生成されたフラグメントの結果を 3d texture (DX11 の UAV かつレンダリングターゲットに設定)に対してランダム書き込みしています.

Some GPU ray tracers

説明(In Japanese)

  • NVidia のweb サイトに GPU ray tracer の一覧があったので, その紹介です.
  • NVidia Optix, Arion, FurryBall, Lightworks, Octane, V-Ray あたりがサポートしているようです.

参考文献

その他

InterlockedCompareExchange() in HLSL

void InterlockedCompareExchange(
  in   UINT dest,
  in   UINT compare_value,
  in   UINT value,
  out  UINT original_value
);

// pseudocode
original_value = image[ dest ];
if ( compare_value == old_value )
{
    image[ dest ] = value;
}
return original_value;

Some links of OIT(Order Independent Transparency)

Intel

AMD

Some links of motion blur in games