Discover millions of ebooks, audiobooks, and so much more with a free trial

Only $11.99/month after trial. Cancel anytime.

スキャンラインレンダリング: スキャンライン レンダリング技術による視覚的リアリズムの探求
スキャンラインレンダリング: スキャンライン レンダリング技術による視覚的リアリズムの探求
スキャンラインレンダリング: スキャンライン レンダリング技術による視覚的リアリズムの探求
Ebook68 pages7 minutes

スキャンラインレンダリング: スキャンライン レンダリング技術による視覚的リアリズムの探求

Rating: 0 out of 5 stars

()

Read preview

About this ebook

スキャンライン レンダリングとは


スキャンライン レンダリングは、3D コンピュータ グラフィックスにおける可視表面を決定するためのアルゴリズムであり、ポリゴンではなく行ごとに動作します。 -ポリゴンごとまたはピクセルごとに。 レンダリングされるすべてのポリゴンは、最初に最初に表示される上部の y 座標によってソートされ、次に画像の各行またはスキャン ラインが、ソートされたリストの先頭にあるポリゴンとスキャンラインの交点を使用して計算されます。 アクティブなスキャン ラインが画像の下に進むにつれて、並べ替えられたリストが更新され、表示されなくなったポリゴンが破棄されます。


メリット


( I) 次のトピックに関する洞察と検証:


第 1 章: スキャンライン レンダリング


第 2 章: ペインターのアルゴリズム


第 3 章: ラスタライゼーション


第 4 章: テクスチャ マッピング


第 5 章: Z バッファリング


第 6 章: グラフィックス パイプライン


第 7 章: クリッピング (コンピューター グラフィックス)


第 8 章: 陰面の決定


第 9 章: シェーダー


第 10 章: シャドウ ボリューム


(II) 一般のよくある質問に答える スキャンライン レンダリングについて。


(III) さまざまな分野でのスキャンライン レンダリングの実際の使用例。


この本の対象者


専門家、学部生、大学院生、愛好家、愛好家、およびあらゆる種類のスキャンライン レンダリングに関する基本的な知識や情報を超えたいと考えている人。


 

Language日本語
Release dateMay 14, 2024
スキャンラインレンダリング: スキャンライン レンダリング技術による視覚的リアリズムの探求

Read more from Fouad Sabry

Related to スキャンラインレンダリング

Titles in the series (100)

View More

Related ebooks

Related articles

Reviews for スキャンラインレンダリング

Rating: 0 out of 5 stars
0 ratings

0 ratings0 reviews

What did you think?

Tap to rate

Review must be at least 10 words

    Book preview

    スキャンラインレンダリング - Fouad Sabry

    スキャンライン レンダリング

    スキャンライン レンダリング (スキャン ライン レンダリングおよびスキャン ライン レンダリングとも呼ばれます) は、ポリゴンごとまたはピクセル単位ではなく、行単位で動作する 3D コンピューター グラフィックスで可視サーフェスを決定するためのアプローチです。イメージの各行またはスキャン ラインは、スキャンラインとソートされたリストの前面にあるポリゴンとの交点を使用して計算され、ソートされたリストは、現在のスキャン ラインがイメージに沿って進行するにつれて、表示されなくなったポリゴンを削除するように更新されます。

    この方法の主な利点は、スキャン平面の法線に沿って頂点を並べ替えることで、エッジ間の比較の量を減らすことです。さらに、すべての頂点の座標をメインメモリから作業メモリに変換することは必須ではありません。現在のスキャン ラインと交差するエッジを形成する頂点のみがアクティブ メモリに存在する必要があり、各頂点は 1 回だけ読み込まれます。メインメモリは、多くの場合、中央処理装置とキャッシュメモリ間のリンクよりもはるかに低速です。したがって、メインメモリ内の頂点に再アクセスしないようにすると、大幅な高速化が期待できます。

    このタイプのアルゴリズムは、フォン反射モデルや Z バッファ アルゴリズムなど、他のさまざまなグラフィックス手法と簡単にマージできます。

    投影されたポリゴンのエッジは、通常、スキャンラインごとに 1 つずつバケットに配置されます。ラスタライザーは、アクティブなエッジ テーブル (AET) を維持します。エントリは、ソートリンク、X 座標、グラデーション、および連結されたポリゴンへの参照を保持します。次のスキャンラインをラスタライズするには、無関係なエッジが除去され、現在のスキャンラインの Y バケットの新しいエッジが X 座標の順序で配置されます。アクティブなエッジテーブルのエントリでは、Xとその他のパラメータが増加します。アクティブなエッジ テーブルのエントリは X ソートされたリストに保持され、2 つのエッジが交差すると変更が発生します。エッジを更新した後、アクティブなエッジ テーブルは X 順にトラバースされ、表示されているスパンのみが出力されますが、Z オーダーのアクティブなスパン テーブルは保持され、エッジが交差するときにサーフェスが挿入および削除されます。

    このスキャンラインと Z バッファリングのハイブリッドでは、アクティブなエッジ テーブルの並べ替えが排除され、1 つのスキャンラインから次のスキャンラインへのアクティブなポリゴン スパンを維持しながら、一度に 1 つのスキャンラインが Z バッファにラスタ化されます。

    2 番目の形式では、中間段階で ID バッファーがラスタライズされ、結果として得られる可視ピクセルのシェーディングを遅延させることができます。

    1967年、ワイリー、ロムニー、エヴァンス、エルダールは、スキャンラインレンダリング技術を初めて発表しました。ユタ大学のアイヴァン・サザーランドのグラフィックグループとソルトレイクシティのエバンス&サザーランド社は、これらの技術に関する初期の研究の多くを行った。

    初期のEvans & Sutherland ESIGのイメージジェネレータ(IG)は、ハードウェアの「オンザフライ」で、フレームバッファなしで一度に1ラスタラインずつ画像を生成するアプローチを利用していたため、当時の高価なメモリが不要になった。その後の亜種は混合戦略を利用しました。

    ニンテンドーDSは、この方法で3Dシーンをレンダリングできる最新のハードウェアであり、ラスタライズされたグラフィックスをVRAMにキャッシュする機能を備えています。

    1980年代のビデオゲーム機に広く使われていたスプライトハードウェアは、初歩的なスキャンラインレンダリングです。

    このアプローチは、オリジナルの Quake エンジンで周囲の環境をソフトウェアでレンダリングするために利用されました (ただし、移動するオブジェクトは上部に Z バッファリングされていました)。静的な風景の優先順位付けは、BSP から派生した並べ替えに基づいて行われました。これは、コストのかかるピクセル操作と高い深度の複雑さを伴うシーンの処理において、Zバッファ/タイプペインターの方法よりも優れていることを示しました(つまり、ハードウェアの支援なしで遠近法を正したテクスチャマッピング)。この手法は、現在 PC で普及している Z バッファベースの GPU が広く採用される前から行われていました。

    PlayStation 3の開発中、ソニーは標準的なCPU/GPU構成に落ち着く前に、2番目のCellプロセッサでソフトウェアスキャンラインレンダラーを実験しました。

    同様に、タイル レンダリング (特に PowerVR 3D プロセッサ) では、プリミティブはスクリーン空間にソートされ、高速オンチップ メモリで一度に 1 タイルずつレンダリングされます。ハードウェアスキャンラインレンダリングの精神に則り、ドリームキャストには、直接ラスタースキャンアウトのために一度に1列のタイルをラスタライズするモードがあり、完全なフレームバッファの必要性を排除しました。

    一部のソフトウェア ラスタライザでは、スパン バッファリング (またはカバレッジ バッファリング) が採用されており、ソートされ、クリップされたスパンのリストがスキャンライン バケットに格納されます。一連のプリミティブは、可視ピクセルのみをラスタライズする前に、このデータ構造に適用されます。

    Zバッファリングに対するスキャンラインレンダリングの主な利点は、可視ピクセルが処理される回数が絶対的に最小限に抑えられることであり、透明効果が適用されていない場合は常に1回であり、高解像度またはコストのかかるシェーディング計算の場合に有利です。

    現在のZバッファシステムでも、粗雑なフロントツーバックソート(「リバースペインター法」に近づく)、初期のZリジェクト(階層Zと組み合わせて)、およびプログラム可能なGPUで利用可能な頻度の低い遅延レンダリング技術を使用して、同様の改善を得ることができます。

    ラスターを操作するスキャンライン アプローチには、過負荷を適切に処理できないという欠点があります。

    この手法は、プリミティブの数が増えるにつれて効果的にスケーリングされるとは考えられていません。これは、レンダリング中に必要な中間データ構造のサイズが原因であり、複雑なシーンでは Z バッファの容量を超える可能性があります。

    その結果、Zバッファは、今日のインタラクティブグラフィックスアプリケーションに広く普及しています。Zバッファを使用すると、大量のプリミティブを直線的に、並列に、ハードウェアに適した方法でトラバースできます。グラフィックチップを離れることはありません変換された座標、属性のグラデーションなどです。可視ピクセルと深度の値のみが記録されます。

    Painter のアルゴリズム

    ペインタのアルゴリズム(深度ソートアルゴリズムと優先塗りつぶしも)は、3Dコンピュータグラフィックスで可視サーフェスを決定するためのアルゴリズムであり、ピクセル単位ではなくポリゴン単位、行単位、または追加の隠線除去技術を使用した領域単位で動作します。

    1972年、3人ともCADCentreに在籍していたとき、マーティン・ニューウェル、リチャード・ニューウェル、トム・サンチャは、隠れ面決定問題の基本解として画家のアルゴリズムを初めて提示した。

    Painter's Algorithm は、概念的には次のように動作します。

    各ポリゴンを深度に従って並べ替える

    最も遠いものから近いものまで、すべてのポリゴンを配置します。

    Enjoying the preview?
    Page 1 of 1