最近、ゲームやグラフィックスのニュースを(gaming and graphics news)少しでも見たことがあれば、最新かつ最高の流行語であるレイトレーシング(ray tracing)を聞いたことがあるでしょう。パストレーシング(path tracing)と呼ばれる似たような言葉を聞いたことがあるかもしれません。そして、プロセスのいずれかが何であるかを完全に理解していないことを完全に許される可能性があります。
簡単な説明は、パストレーシングとレイトレーシング(ray tracing)の両方がグラフィカルな手法であり、計算能力が大幅に向上する代わりに、よりリアルな画像が得られることです。YouTubeには、レイトレーシングの特定の側面を明確に示すだけでなく、システムにかかるストレスを示すMinecraftビデオ(Minecraft video)が(YouTube)あり
ます。
それがあなたが必要とする唯一の説明であるなら、素晴らしいです!しかし、深く掘り下げて、各手法がどのように機能するのか、GPUハードウェア(GPU hardware)会社がレイトレーシング対応カードに少額の料金を請求している理由を知りたい場合は、読み進めてください。
ラスタライズとコンピュータグラフィックス
コンピューター(computer screen)の画面に表示されている画像は、その画像として始まったわけではありません。ラスターまたはベクター画像(vector image)として始まります。ラスターイメージ(raster image)は、シェーディングされたピクセルのコレクションで構成されます。
ベクター画像(vector image)は数式に基づいているため、画像のサイズをほぼ無期限に大きくすることができます。ベクター画像(vector image)の欠点は、より正確な詳細を実現するのが難しいことです。ベクター(Vector)画像は、必要な色が少ない場合に最適です。
ラスタライズの主な強みは、特にレイトレーシングなどの手法と比較した場合の速度です。GPU 、またはグラフィックスプロセッシングユニットは、小さな形状、ほとんどの場合三角形から3D画像を作成するようにゲームに指示します。(GPU)これらの三角形は個々のピクセルに変換され、シェーダーを通過して画面に表示される画像を作成します。
ラスタライズは、処理速度が速いため、長い間ビデオゲームグラフィックスの頼りになるオプションでしたが、現在のテクノロジーが限界にぶつかり始めると、次のレベルに突破するために、より高度な技術が必要になります。そこでレイトレーシングが登場します。
次の画像に示すように、レイト(Ray)レーシングはラスタライズよりもはるかにリアルに見えます。急須(tea pot)とスプーンの反射を見てください
。
レイトレーシングとは何ですか?
表面レベル(surface level)では、レイトレーシング(ray tracing)は、光とオブジェクトの単一の交差から完全なフォトリアリズムまですべてを意味する総称です。ただし、今日使用されている最も一般的なコンテキストでは、レイトレーシングとは、(ray tracing)設定点(set point)からの光線(ピクセル単位)を追跡し、オブジェクトに遭遇したときの反応をシミュレートするレンダリング手法(rendering technique)を指します。
少し時間を取って、あなたがいる部屋の壁を見(moment and look)てください。壁に光源がありますか、それとも別の光源から壁に反射した光がありますか?レイト(Ray)レーシンググラフィックスは、あなたの目から始まり、視線をたどって壁に到達し、次に壁から光源に戻る光の経路をたどります。
上の図は、これがどのように機能するかを示しています。シミュレートされた「目」(この図のカメラ)の理由は、GPUの負荷を軽減するためです。
なんで?まあ、レイトレーシングは真新しいものでは(t brand-new)ありません。それは実際にはかなり長い間存在しています。ピクサーはレイトレーシング技術を使用して多くのムービーを作成していますが、(Pixar)ピクサー(Pixar)が達成する解像度での高忠実度のフレームごとのグラフィックスには時間がかかります。
多く(A lot)の時間。モンスターズユニバーシティ(Monsters University)の一部のフレームは、それぞれ29時間かかったと報告されています。トイストーリー3はフレームあたり平均7時間かかり、 (Toy Story 3 )Wiredの2010年のストーリーによると、一部のフレームは39時間かかりました。
この映画は、あらゆる表面からの光の反射を示し、誰もが知って愛するようになったグラフィックスタイルを作成しているため、(style everyone)作業負荷(work load)はほとんど想像を絶するものです。レイトレーシング技術を目で見ることができるものだけに制限することにより、ゲームはグラフィックプロセッサに(文字通りの)メルトダウンを起こさせることなくこの技術を利用できます。
下の画像を見てください。
見た目はリアルですが、写真ではありません。レイトレーシング画像です。このような画像を作成するには、どれだけの電力が必要か想像してみてください。1つの光線を問題なく追跡および処理できますが、その光線がオブジェクトに当たって跳ね返った場合はどうでしょうか。
1つの光線は10の光線になり、それらの10は100になります。増加は指数関数的です。ポイントの後、3次および4次を超えたバウンスと反射は、収穫逓減を示します。言い換えれば、計算と表示には、価値があるよりもはるかに多くの電力が必要です。画像をレンダリングするために、どこかに制限を描画する必要があります。
ここで、1秒間に30〜60回それを行うことを想像してください。これは、ゲームでレイトレーシング技術を使用するために必要な電力量です。確かに印象的ですよね?
レイトレーシング(ray tracing)が可能なグラフィックスカードの到達可能性は時間の経過とともに向上し、最終的にはこの手法は3Dグラフィックスと同じくらい簡単に利用できるようになります。ただし、今のところ、レイトレーシング(ray tracing)は依然としてコンピュータグラフィックスの最先端と見なされています。では、パストレーシングはどのように機能するのでしょうか。
パストレーシングとは何ですか?
パストレーシング(Path tracing)はレイトレーシングの一種です(ray tracing)。それはその傘下にありますが、レイトレーシング(ray tracing)が1968年に最初に理論化された場所では、パストレーシングは1986年まで登場しませんでした(そして結果は現在ほど劇的ではありませんでした)。
前述の光線の指数関数的な増加を覚えていますか?パスト(Path)レーシングはその解決策を提供します。レンダリングにパストレーシングを使用する場合、レイはバウンスごとに1つのレイのみを生成します。光線はバウンスごとに設定された線(set line)をたどるのではなく、ランダムな方向に発射されます。
次に、パストレーシングアルゴリズムは、すべての光線をランダムにサンプリングして、最終的な画像を作成します。これにより、さまざまなタイプの照明、特にグローバルイルミネーションがサンプリングされます。
パストレーシング(path tracing)の興味深い点は、シェーダーを使用して効果をエミュレートできることです。
最近、Nintendo Switchエミュレーター(Nintendo Switch emulator)用のシェーダーパッチが登場しました。これにより、プレイヤー(shader patch)は、ゼルダの伝説ブレスオブザワイルド(The Legend of Zelda: Breath of the Wild)やスーパーマリオオデッセイ(Super Mario Odyssey.)などのタイトルで、パストレースされたグローバルイルミネーションをエミュレートできます。効果は見栄えがしますが、実際のパストレーシング(path tracing)ほど完全ではありません。
パストレーシング(Path tracing)は、レイトレーシングの1つの形式にすぎません。画像をレンダリングするための最良の方法として歓迎されましたが、パストレーシングには独自の欠陥があります。
しかし、最終的には、パストレーシングとレイト(path tracing and ray)レーシングの両方で、非常に美しい画像が得られます。民生用マシンのハードウェアがビデオゲームでリアルタイムでレイトレーシング(ray tracing)が可能になるようになった今、業界は2Dから3Dグラフィックスへのステップとほぼ同じくらい印象的なブレークスルーを達成する準備ができています。
ただし、必要なハードウェアが「手頃な価格」であると見なされるまでには、まだしばらく時間がかかります(少なくとも数年はかかります)。現在のところ、必要なグラフィックカードでさえ1,000ドルをはるかに超えています。
What is Path Tracing and Ray Tracing? And Why do They Improve Graphics?
If yоu’ve takеn even the slightest glance
towards gaming and graphics news lately, then you’ve heard the latest and
greatest buzzword: ray tracing. Yoυ might also have heard a similar-sounding
wоrd called path tracing. And yоu could be totallу forgiνen for not fully
understanding what either one of the рroceѕses is.
A simple explanation is that both path
tracing and ray tracing are graphical techniques that result in more realistic-looking
images at the cost of significantly more computational power. There is a
Minecraft video on YouTube that demonstrates the particular aspects of ray
tracing in a clear way, but also illustrates the stress it puts on a system.
If that’s the only explanation you need,
great! But if you want to dig deep and find out how each technique works and
why GPU hardware companies are charging a small fortune for ray tracing-capable
cards, read on.
Rasterization and Computer Graphics
Any image you see displayed on a computer screen did not start out as that image. It begins as either a raster or a vector image. A raster image is composed of a collection of shaded pixels.
A vector image is based on mathematical formulas that mean the image can be increased in size almost indefinitely. The downside of vector images is that more precise details are difficult to achieve. Vector images are best used when only a few colors are needed.
The main strength of rasterization is its
speed, especially in comparison to techniques like ray tracing. Your GPU, or
graphics processing unit, will tell the game to create a 3D image out of small
shapes, most often triangles. These triangles are turned into individual pixels
and then put through a shader to create the image you see on screen.
Rasterization has been the go-to option for
video game graphics for a long time due to how quickly it can be processed, but
as current technology begins to bump against its limits more advanced
techniques are needed ot break through to the next level. That’s where ray
tracing comes in.
Ray tracing looks far more realistic than
rasterization, as the image below illustrates. Look at the reflections on the
tea pot and the spoon.
What is Ray Tracing?
At the surface level, ray tracing is an
umbrella term that means everything from a single intersection of light and
object to complete photorealism. In the most common context used today,
however, ray tracing refers to a rendering technique that follows a beam of
light (in pixels) from a set point and simulates how it reacts when it
encounters objects.
Take a moment and look at the wall of the
room you’re in. Is there a light source on the wall, or is light reflected off
the wall from another source? Ray traced graphics would start at your eye and
follow your line of sight to the wall, and then follow the path of light from
the wall back to the light source.
The diagram above illustrates how this
works. The reason for the simulated “eyes” (the camera in this
diagram) is to lessen the load on the GPU.
Why? Well, ray tracing isn’t brand-new. It’s actually been around for quite some time. Pixar uses ray tracing techniques to create many of its movies, but high-fidelity, frame-by-frame graphics at the resolutions Pixar achieves take time.
A lot of time. Some frames in Monsters University took a reported 29 hours each. Toy Story 3 took an average of 7 hours per frame, with some frames taking 39 hours according to a 2010 story from Wired.
Because the film illustrates the reflection
of light from every surface to create the graphical style everyone has come to
know and love, the work load is almost unimaginable. By limiting ray tracing
techniques to only what the eye can see, games can utilize the technique
without causing your graphics processor to have a (literal) meltdown.
Take a look at the image below.
That’s not a photograph, despite how real it looks. It’s a ray-traced image. Try to imagine how much power is required to create an image that looks like this. One ray can be traced and processed without much trouble, but what about when that ray bounces off an object?
A single ray can turn into 10 rays, and those 10 can turn into 100, and so on. The increase is exponential. After a point, bounces and reflections beyond tertiary and quaternary display diminishing returns. In other words, they require far more power to calculate and display than they are worth. For the sake of rendering an image, a limit has to be drawn somewhere.
Now imagine doing that 30 to 60 times per
second. That is the amount of power required to use ray tracing techniques in
games. It’s certainly impressive, right?
The attainability of graphics cards capable
of ray tracing will go up as time goes on, and eventually this technique will
become as readily available as 3D graphics. For now, though, ray tracing is
still considered the cutting-edge of computer graphics. So how does path
tracing come into play?
What is Path Tracing?
Path tracing is a type of ray tracing. It
falls under that umbrella, but where ray tracing was originally theorized in
1968, path tracing didn’t come onto the scene until 1986 (and the results were
not as dramatic as those now.)
Remember the exponential increase in rays
mentioned earlier? Path tracing provides a solution to that. When using path
tracing for rendering, the rays only produce a single ray per bounce. The rays
do not follow a set line per bounce, but rather shoot off in a random
direction.
The path tracing algorithm then takes a
random sampling of all of the rays to create the final image. This results in sampling
a variety of different types of lighting, but especially global illumination.
An interesting thing about path tracing is
that the effect can be emulated through the use of shaders. A shader patch
appeared recently for a Nintendo Switch emulator that allowed players to
emulate path traced global illumination in titles like The Legend of Zelda: Breath of the Wild and Super Mario Odyssey. While the effects look nice, they aren’t as
complete as true path tracing.
Path tracing is just one form of ray
tracing. While it was hailed as the best way to render images, path tracing
comes with its own flaws.
But in the end, both path tracing and ray tracing result in absolutely beautiful images. Now that the hardware in consumer-grade machines has reached a point that ray tracing is possible in real-time in video games, the industry stands poised to make a breakthrough that’s almost as impressive as the step from 2D to 3D graphics.
However, it will still be some time—several years at least—before the necessary hardware will be considered “affordable.” As of now, even the necessary graphics cards cost well over $1,000.