「ボリュームレンダリング」の版間の差分
imported>Fallout New Tokyo |
imported>Fallout New Tokyo |
||
| 3行目: | 3行目: | ||
== 概要 == | == 概要 == | ||
ボリュームレンダリングは主に[[放射線]]の吸収量を[[コンピューターグラフィックス]]として表現する[[医用画像]]や[[非破壊検査]]などの領域で使用されている手法である。ボリュームレンダリングでは[[モデル]]の表面だけの[[ポリゴン]]と異なり、[[モデル]]の中身まで描き出すことができる。大雑把に言えば[[マインクラフト]]で「何か」を作り上げたような感じである。 | ボリュームレンダリングは主に[[放射線]]の吸収量を[[コンピューターグラフィックス]]として表現する[[医用画像]]や[[非破壊検査]]などの領域で使用されている手法である。ボリュームレンダリングでは[[モデル]]の表面だけの[[ポリゴン]]と異なり、[[モデル]]の中身まで描き出すことができる。大雑把に言えば[[マインクラフト]]で「何か」を作り上げたような感じである。 | ||
[[コンピューター]]および[[グラフィックボード]]の高性能化により、[[ゲーム]]などの[[ポリゴン]]主体の[[3D]]においても、雲の表現などの古くから[[ビルボード]]という手抜き手法が使われていた部分を高画質化する手法として採用され始めている。 | |||
ボリュームレンダリングにおいて最終的に出力する1つの[[ピクセル]]の値を求めるためのベースとなる[[データ]]を得ることを[[レイキャスティング]]という。ボリュームレンダリングでは[[レイキャスティング]]で得られた[[データ]]を[[最大値]]や[[最小値]]、[[平均値]]、[[中央値]]などの様々な方法により加工することで最終的な映像を取得する。ただし、レイキャスティングで得た値を即座にピクセルに変換する手法が一般的であるため、ボリュームレンダリングとレイキャスティングを同一として語られることも多い。 | ボリュームレンダリングにおいて最終的に出力する1つの[[ピクセル]]の値を求めるためのベースとなる[[データ]]を得ることを[[レイキャスティング]]という。ボリュームレンダリングでは[[レイキャスティング]]で得られた[[データ]]を[[最大値]]や[[最小値]]、[[平均値]]、[[中央値]]などの様々な方法により加工することで最終的な映像を取得する。ただし、レイキャスティングで得た値を即座にピクセルに変換する手法が一般的であるため、ボリュームレンダリングとレイキャスティングを同一として語られることも多い。 | ||
| 12行目: | 14行目: | ||
:* 512 * 512 * 512 * 2バイト = 256MB | :* 512 * 512 * 512 * 2バイト = 256MB | ||
:* 1024 * 1024 * 1024 * 2バイト = 2GB | :* 1024 * 1024 * 1024 * 2バイト = 2GB | ||
上記は単純に[[ボクセル]] | 上記は単純に[[ボクセル]]を保持するために必要な最低限のメモリ容量であり、実際にはここから計算した値を確保しておくための[[メモリ]]なども必要になる。このような巨大な[[データ]]は[[メインメモリ]]から[[VRAM]]への転送なども大きな負担となる。[[ゲーム]]などに最適化された[[グラフィックボード]]は[[VRAM]]上に一度[[データ]]を転送したらシーンが変わるまで使い回す前提となっていることが多いため、[[メインメモリ]]と[[VRAM]]の間で大量の転送を行うような用途では[[シェーダー]]が遊んでしまうのである。このためボリュームレンダリングでは[[シェーダー]]の性能よりも[[メモリ]]の容量や速度が[[ボトルネック]]となることが多く、安物の[[オンボードGPU]]では厳しかったりする。なお、[[オンボードGPU]]でも[[PlayStation 4]]のように[[GDDR5]]と[[hUMA]]のような技術を組み合わせればボリュームレンダリングも大きく前進する可能性がある。 | ||
[[ | |||
== 関連項目 == | == 関連項目 == | ||