最近よく聞く「レイトレーシング」 一体ナニモノ?:レイトレーシングが変えるゲームグラフィックス(第1回)(2/3 ページ)
エントリークラスの独立(外部)GPUだけでなく最新のゲーム機にも広がってきた「リアルタイムレイトレーシング(RT)」への対応。リアルタイムはともかく、「レイトレーシング」とは一体何なのか? 簡単に解説する。
では「レイトレーシング」って何?
一方で、RTで使われる「レイトレーシング法」では、画面上のピクセルからレイを放ち(キャストし)、それが3Dシーン内を突き進んで必要な情報を回収してくる、という仕組みを採用している。
一般に「レイ(Ray)」を直訳すると「光線」と訳される。しかし実際は情報を回収するために飛ばす探査機だと考えた方がイメージに近い(この先の図版でいうと「1」に当たる)。
3Dシーン内を突き進み、第三者の3Dオブジェクトに衝突したら、そこは「第三者に遮蔽(しゃへい)されている」と判断できる。その遮蔽(しゃへい)の度合いを判断すれば「影」を生成できる、ということになる(この先の図版でいうと「2」に当たる)。
着目しているピクセルがツルツルとした材質だったとしたら、そのピクセルには第三者が映り込むはずだ。だとしたら、衝突した第三者の3Dオブジェクトの色を取得して、そのピクセルに適用することで「鏡像」が表現できるという寸法だ(この先の図版でいうと「3」に当たる)。
この第三者の3Dオブジェクトが既に光に照らされているとすれば、その影響を回収し、今着目しているピクセルに反映することで「間接光」の影響も反映できる。
つまり、ラスタライズ法では自動では得られない「影」「鏡像」「間接光」の処理を、レイトレーシング法なら一度の描画で容易に得られることになる。加えて、ラスタライズ法では捨ててしまっていた、画面外の3Dオブジェクトや、正面からは見えない3Dオブジェクトの背面側の情報も、レイトレーシング法なら正確に処理できる。
なので、画面外の3Dオブジェクトが映り込む鏡像も表現できるし、画面外の3Dオブジェクトの影を画面内に投写することもできる。3Dオブジェクトの背面からの間接光の影響も描画に反映できる。
……と、概説を読むだけでもレイトレーシング法はかなりすごそうである。何より、その演算量がラスタライズ法と比べて大きくなることも容易に想像できるはずだ。
Copyright © ITmedia, Inc. All Rights Reserved.