JP6709038B2

Graphic processing unit and method of performing, by graphic processing unit, tile-based graphics pipeline

Abstract

This record has no abstract on file.

JP6709038B2, drawing sheet 1
Sheet 1 of 38

Term

Projected expiry 13 November 2035.

  1. Priority
  2. Filed
  3. Granted
  4. Today
  5. Projected expiry

11 claims: 10 independent, 1 dependent

  1. 1
    グラフィックプロセッシング装置において、グラフィックス・パイプラインを遂行する方法において、 ハルシェーダから出力された出力パッチが含まれたタイルの個数に基づいて、前記出力パッチに対するテッセレーティングをスキップするか否かを判断し、前記判断の結果によって、前記出力パッチまたはテッセレーティングされたプリミティブに係わるタイルリストをビニングするビニング・パイプラインを遂行する段階と、 前記ビニングされたタイルリストに基づいて、タイル単位でレンダリング・パイプラインを遂行する段階と、を含 み、 前記ビニング・パイプラインを遂行する段階は、前記出力パッチが含まれた前記タイルの個数が1個である場合に、テッセレータによって行われる前記出力パッチに対する前記テッセレーティングをスキップすることを含む、 方法。
  2. 2
    前記ビニング・パイプラインを遂行する段階は、 入力パッチを、前記ハルシェーダでハルシェーディングすることにより、前記出力パッチを生成する段階と、 前記出力パッチに係わる前記タイルリストをビニングする段階と、 前記出力パッチが1タイルに含まれるか否かを判断する段階と、を含み、 前記レンダリング・パイプラインを遂行する段階は、 前記出力パッチが前記1タイルに含まれていると判断された場合、前記出力パッチに対して、ビニングされた前記タイルリストを利用して、ラスタライジングを行うことを特徴とする請求項 1 に記載の方法。
  3. 3
    前記ビニング・パイプラインを遂行する段階は、 前記出力パッチが2以上のタイルに含まれていると判断された場合、前記出力パッチに対するテッセレータの前記テッセレーティング、及びドメインシェーダのドメインシェーディングを行うことにより、前記テッセレーティングされたプリミティブを生成する段階を含み、 前記レンダリング・パイプラインを遂行する段階は、 前記テッセレーティングされたプリミティブに対して、ビニングされた前記タイルリストを利用して、前記ラスタライジングを行うことを特徴とする請求項 2 に記載の方法。
  4. 4
    前記ビニング・パイプラインを遂行する段階は、 前記出力パッチが1タイルに含まれた場合、前記出力パッチに係わる可視性ストリームを保存し、前記出力パッチが2以上のタイルに含まれた場合、前記テッセレーティングされたプリミティブに係わる可視性ストリームを保存する段階を含むことを特徴とする請求項1~ 3 のうちの何れか1項に記載の方法。
  5. 5
    前記レンダリング・パイプラインを遂行する段階は、 前記ビニング・パイプラインで、前記テッセレーティングがスキップされた場合、前記ビニング・パイプラインで、前記出力パッチに対して保存されたビンストリームを利用して、テッセレーション・パイプラインを遂行する段階を含むことを特徴とする請求項1~ 4 のうち何れか1項に記載の方法。
  6. 6
    グラフィックス・パイプラインを遂行するコンピューティング装置において、 ハルシェーダから出力された出力パッチが含まれたタイルの個数に基づいて、前記出力パッチに対するテッセレーティングをスキップするか否かを判断し、前記判断の結果によって、前記出力パッチまたはテッセレーティングされたプリミティブに係わるタイルリストをビニングするビニング・パイプライン、及び前記ビニングされたタイルリストに基づいて、タイル単位でレンダリング・パイプラインを遂行するグラフィックプロセッシング装置と、 前記ビニング・パイプラインでビニングされた前記タイルリストを保存し、前記保存されたタイルリストを、前記レンダリング・パイプラインに提供するメモリと、を含 み、 前記グラフィックプロセッシング装置は、前記ビニング・パイプラインで、前記出力パッチが含まれた前記タイルの個数が1個であると判断された場合に、前記ビニング・パイプラインで、テッセレータによって行われる前記出力パッチに対する前記テッセレーティングをスキップする、 コンピューティング装置。
  7. 7
    前記グラフィックプロセッシング装置は、 入力パッチを、前記ハルシェーダでハルシェーディングすることにより、前記出力パッチを生成し、前記出力パッチに対して、前記タイルリストの前記ビニングを行い、前記出力パッチが1タイルに含まれるか否かを判断する前記ビニング・パイプラインを遂行し、 前記出力パッチが、前記1タイルに含まれていると判断された場合、前記出力パッチに対して、ビニングされた前記タイルリストを利用して、ラスタライジングを行う前記レンダリング・パイプラインを遂行することを特徴とする請求項 6 に記載のコンピューティング装置。
  8. 8
    前記グラフィックプロセッシング装置は、 前記出力パッチが2以上のタイルに含まれていると判断された場合、前記出力パッチに対するテッセレータの前記テッセレーティング、及びドメインシェーダのドメインシェーディングを行うことにより、前記テッセレーティングされたプリミティブを生成する前記ビニング・パイプラインを遂行し、 前記テッセレーティングされたプリミティブに対して、ビニングされた前記タイルリストを利用して、前記ラスタライジングを行う前記レンダリング・パイプラインを遂行することを特徴とする請求項 7 に記載のコンピューティング装置。
  9. 9
    前記メモリは、 前記ビニング・パイプラインが遂行される間、前記出力パッチが1タイルに含まれた場合、前記出力パッチに係わる可視性ストリームを保存し、前記出力パッチが2以上のタイルに含まれた場合、前記テッセレーティングされたプリミティブに係わる可視性ストリームを保存す るこ とを特徴とする請求項 6~8 のうち何れか1項に記載のコンピューティング装置。
  10. 10
    請求項1に記載の方法を前記グラフィックプロセッシング装置に実行させるコンピュータプログラム。
  11. 11
    請求項 10 に記載のコンピュータプログラムを記憶する記憶媒体。
Independent claims11