JP2017528820A5 - - Google Patents

Download PDF

Info

Publication number
JP2017528820A5
JP2017528820A5 JP2017509677A JP2017509677A JP2017528820A5 JP 2017528820 A5 JP2017528820 A5 JP 2017528820A5 JP 2017509677 A JP2017509677 A JP 2017509677A JP 2017509677 A JP2017509677 A JP 2017509677A JP 2017528820 A5 JP2017528820 A5 JP 2017528820A5
Authority
JP
Japan
Prior art keywords
vertex
shader program
geometry shader
geometry
vertices
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Granted
Application number
JP2017509677A
Other languages
English (en)
Other versions
JP2017528820A (ja
JP6294565B2 (ja
Filing date
Publication date
Priority claimed from US14/466,554 external-priority patent/US9665975B2/en
Application filed filed Critical
Publication of JP2017528820A publication Critical patent/JP2017528820A/ja
Publication of JP2017528820A5 publication Critical patent/JP2017528820A5/ja
Application granted granted Critical
Publication of JP6294565B2 publication Critical patent/JP6294565B2/ja
Expired - Fee Related legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Claims (28)

  1. グラフィックスプロセッサにより、第1のシェーダプログラム実行モードで動作すると判定するステップと、
    前記第1のシェーダプログラム実行モードで動作すると判定したことに応答して、マージ型頂点/ジオメトリシェーダプログラムの単一のインスタンスが、前記マージ型頂点/ジオメトリシェーダプログラムによって受信される第1の複数のプリミティブごとに第1の複数の出力頂点が生成されるように、頂点シェーダ処理およびジオメトリシェーダ処理を実行する前記マージ型頂点/ジオメトリシェーダプログラムの第1の複数のインスタンスを、前記グラフィックスプロセッサのシェーダユニットにより実行するステップと、
    グラフィックスプロセッサにより、第2のシェーダプログラム実行モードで動作すると判定するステップと、
    前記第2のシェーダプログラム実行モードで動作すると判定したことに応答して、前記マージ型頂点/ジオメトリシェーダプログラムの第2の複数のインスタンスの各々が1つの出力頂点を出力するように、前記グラフィックスプロセッサの前記シェーダユニットにより、前記マージ型頂点/ジオメトリシェーダプログラムの前記第2の複数のインスタンスを実行して、第2の複数のプリミティブごとに第2の複数の出力頂点を生成するステップと、
    を含む方法。
  2. 前記マージ型頂点/ジオメトリシェーダプログラムの前記第1の複数のインスタンスを前記グラフィックスプロセッサの前記シェーダユニットにより実行するステップはさらに
    前記マージ型頂点/ジオメトリシェーダプログラムの前記第1の複数のインスタンスを、前記マージ型頂点/ジオメトリシェーダプログラムの前記第1の複数のインスタンスの各々が複数の入力頂点の各々を受信し、前記複数の入力頂点の前記各々の受信に応答して複数の出力頂点を生成するように、前記シェーダユニットにより実行するステップ
    を含む、請求項1に記載の方法。
  3. 前記マージ型頂点/ジオメトリシェーダプログラムの前記第1の複数のインスタンスを前記グラフィックスプロセッサの前記シェーダユニットにより実行するステップは、
    前記シェーダユニットにより、前記マージ型頂点/ジオメトリシェーダプログラムの前記第1の複数のインスタンスを、前記マージ型頂点/ジオメトリシェーダプログラムの前記第1の複数のインスタンスの各々がM個の出力頂点を生成するように実行するステップであって、Mが2以上の整数である、ステップ
    を含む、請求項1に記載の方法。
  4. Mは、前記マージ型頂点/ジオメトリシェーダプログラムによって実装される前記ジオメトリシェーダプログラムによって指定される最大出力頂点カウント値に等しく、前記最大出力頂点カウント値が、前記ジオメトリシェーダプログラムによって処理される各プリミティブに対して前記ジオメトリシェーダプログラムによって生成されるべきである出力頂点の最大数を示す、請求項3に記載の方法。
  5. 前記マージ型頂点/ジオメトリシェーダプログラムの前記第1の複数のインスタンスの各々は、前記マージ型頂点/ジオメトリシェーダプログラムの前記それぞれのインスタンスに割り当てられるプリミティブに対する前記ジオメトリシェーダ処理を実行するように構成可能であり、
    複数のプリミティブの各々は、処理のために1つのマージ型頂点/ジオメトリシェーダインスタンスに割り当てられる、請求項3に記載の方法。
  6. 前記マージ型頂点/ジオメトリシェーダプログラムの前記第1の複数のインスタンスの各々は、前記マージ型頂点/ジオメトリシェーダプログラムの前記それぞれのインスタンスに割り当てられる頂点に対する前記頂点シェーダ処理を実行するようにさらに構成可能であり、
    複数の頂点の各々は、処理のために1つのマージ型頂点/ジオメトリシェーダインスタンスに割り当てられ、
    前記マージ型頂点/ジオメトリシェーダプログラムの前記第1の複数のインスタンスのうちの少なくとも1つは、前記複数の頂点のうちの1つに対する前記頂点シェーダ処理および前記複数のプリミティブのうちの1つに対する前記ジオメトリシェーダ処理を実行するように構成される、請求項5に記載の方法。
  7. 前記マージ型頂点/ジオメトリシェーダプログラムの前記第1の複数のインスタンスの各々は、前記マージ型頂点/ジオメトリシェーダプログラムの前記それぞれのインスタンスに割り当てられる頂点に対する前記頂点シェーダ処理を実行するようにさらに構成可能であり、前記シェーダユニットにより、前記マージ型頂点/ジオメトリシェーダプログラムの前記第1の複数のインスタンスを実行するステップは、
    前記マージ型頂点/ジオメトリシェーダプログラムの第1のインスタンスにより、複数の頂点のうちの1つに対する前記頂点シェーダ処理を実行して、頂点シェーディング済み頂点を生成するステップと、
    前記マージ型頂点/ジオメトリシェーダプログラムの第2のインスタンスにより、前記マージ型頂点/ジオメトリシェーダプログラムの前記第1のインスタンスによって生成された前記頂点シェーディング済み頂点に基づいて、前記複数のプリミティブのうちの第1のプリミティブに対する前記ジオメトリシェーダ処理を実行して、前記第1のプリミティブに対応する1つまたは複数のジオメトリシェーディング済み頂点を生成するステップと、
    前記マージ型頂点/ジオメトリシェーダプログラムの第3のインスタンスにより、前記マージ型頂点/ジオメトリシェーダプログラムの前記第1のインスタンスによって生成された前記頂点シェーディング済み頂点に基づいて、前記複数のプリミティブのうちの第2のプリミティブに対する前記ジオメトリシェーダ処理を実行して、前記第2のプリミティブに対応する1つまたは複数のジオメトリシェーディング済み頂点を生成するステップと
    をさらに含む、請求項5に記載の方法。
  8. 前記第1の複数の出力頂点はM個の出力頂点を含み、前記マージ型頂点/ジオメトリシェーダプログラムの前記第2の複数のインスタンスは、前記マージ型頂点/ジオメトリシェーダプログラムのN個のインスタンスを含み、前記第2の複数の出力頂点はN個の出力頂点を含み、Mが2以上の整数であり、Nが2以上の整数であり、MがN以下である、請求項1に記載の方法。
  9. Mは、前記マージ型頂点/ジオメトリシェーダプログラムによって実装されるジオメトリシェーダ段階によって処理される前記プリミティブの各々に対して生成される頂点の数に等しく、
    Nは、前記マージ型頂点/ジオメトリシェーダプログラムによって実装されるジオメトリシェーダプログラムによって指定される最大出力頂点カウント値に等しく、前記最大出力頂点カウント値が、前記ジオメトリシェーダプログラムによって処理される前記プリミティブの各々に対して前記ジオメトリシェーダプログラムによって生成されるべきである出力頂点の最大数を示す、請求項8に記載の方法。
  10. 前記第1のシェーダプログラム実行モードで動作するとき、複数の頂点の各々は、処理のために1つのマージ型頂点/ジオメトリシェーダインスタンスに割り当てられ、
    前記第2のシェーダプログラム実行モードで動作するとき、前記複数の頂点の各々は、処理のためにK個のマージ型頂点/ジオメトリシェーダインスタンスに割り当てられ、Kが、前記それぞれの頂点を含むプリミティブの数に等しい整数である、請求項8に記載の方法。
  11. 前記マージ型頂点/ジオメトリシェーダプログラムによって実装されるジオメトリシェーダプログラムに関連する出力頂点を記憶するために必要な記憶空間の総量を示す情報に基づいて、前記マージ型頂点/ジオメトリシェーダプログラムを実行するために使用する被選択シェーダプログラム実行モードとして、前記第1のシェーダプログラム実行モードおよび前記第2のシェーダプログラム実行モードのうちの1つを選択するステップと、
    前記シェーダユニットに、前記被選択シェーダプログラム実行モードに基づいて前記マージ型頂点/ジオメトリシェーダプログラムを実行させるステップと
    をさらに含む、請求項8に記載の方法。
  12. 前記第1のシェーダプログラム実行モードおよび前記第2のシェーダプログラム実行モードのうちの前記1つを選択するステップは、
    記憶空間の前記総量を示す前記情報がしきい値よりも大きいかどうかを判断するステップと、
    記憶空間の前記総量を示す前記情報が前記しきい値よりも大きいとの判断に応答して、前記被選択シェーダプログラム実行モードとして前記第2のシェーダプログラム実行モードを選択するステップと、
    記憶空間の前記総量を示す前記情報が前記しきい値以下であるとの判断に応答して、前記被選択シェーダプログラム実行モードとして前記第1のシェーダプログラム実行モードを選択するステップと
    を含む、請求項11に記載の方法。
  13. 第1のシェーダプログラム実行モードで動作すると判定し、
    前記第1のシェーダプログラム実行モードで動作すると判定したことに応答して、マージ型頂点/ジオメトリシェーダプログラムの単一のインスタンスが、前記マージ型頂点/ジオメトリシェーダプログラムによって受信される第1の複数のプリミティブごとに第1の複数の出力頂点が生成されるように、頂点シェーダ処理およびジオメトリシェーダ処理を実行する前記マージ型頂点/ジオメトリシェーダプログラムの第1の複数のインスタンスを実行し、
    第2のシェーダプログラム実行モードで動作すると判定し、
    前記第2のシェーダプログラム実行モードで動作すると判定したことに応答して、前記マージ型頂点/ジオメトリシェーダプログラムの第2の複数のインスタンスの各々が1つの出力頂点を出力するように、前記マージ型頂点/ジオメトリシェーダプログラムの前記第2の複数のインスタンスを実行して、第2の複数のプリミティブごとに第2の複数の出力頂点を生成する
    ように構成されたシェーダユニットを備えるグラフィックス処理装置(GPU)を含むデバイス。
  14. 前記マージ型頂点/ジオメトリシェーダユニットは、
    前記マージ型頂点/ジオメトリシェーダプログラムの前記第1の複数のインスタンスを、前記マージ型頂点/ジオメトリシェーダプログラムの前記第1の複数のインスタンスの各々が複数の入力頂点の各々を受信し、前記複数の入力頂点の前記各々の受信に応答して前記複数の出力頂点を生成するように実行する
    ようにさらに構成される、請求項13に記載のデバイス。
  15. 前記マージ型頂点/ジオメトリシェーダプログラムは、前記頂点シェーダ処理および前記ジオメトリシェーダ処理を実行するようにさらに構成可能であり、
    前記シェーダユニットは、
    前記マージ型頂点/ジオメトリシェーダプログラムの前記第1の複数のインスタンスを、前記マージ型頂点/ジオメトリシェーダプログラムの前記第1の複数のインスタンスの各々がM個の出力頂点を生成するように実行することであって、Mが2以上の整数である、実行することを行うようにさらに構成される、請求項13に記載のデバイス。
  16. Mは、前記マージ型頂点/ジオメトリシェーダプログラムによって実装されるジオメトリシェーダプログラムによって指定される最大出力頂点カウント値に等しく、前記最大出力頂点カウント値が、前記ジオメトリシェーダプログラムによって処理される各プリミティブに対して前記ジオメトリシェーダプログラムによって生成されるべきである出力頂点の最大数を示す、請求項15に記載のデバイス。
  17. 前記マージ型頂点/ジオメトリシェーダプログラムの前記第1の複数のインスタンスの各々は、前記マージ型頂点/ジオメトリシェーダプログラムの前記それぞれのインスタンスに割り当てられるプリミティブに対する前記ジオメトリシェーダ処理を実行するように構成可能であり、
    複数のプリミティブの各々は、処理のために1つのマージ型頂点/ジオメトリシェーダインスタンスに割り当てられる、請求項15に記載のデバイス。
  18. 前記マージ型頂点/ジオメトリシェーダプログラムの前記第1の複数のインスタンスの各々は、前記第1の複数のマージ型頂点/ジオメトリシェーダプログラムの前記それぞれのインスタンスに割り当てられる頂点に対する前記頂点シェーダ処理を実行するようにさらに構成可能であり、
    複数の頂点の各々は、処理のために1つのマージ型頂点/ジオメトリシェーダインスタンスに割り当てられ、
    前記マージ型頂点/ジオメトリシェーダプログラムの前記第1の複数のインスタンスのうちの少なくとも1つは、前記複数の頂点のうちの1つに対する前記頂点シェーダ処理および前記複数のプリミティブのうちの1つに対する前記ジオメトリシェーダ処理を実行するように構成される、請求項17に記載のデバイス。
  19. 前記マージ型頂点/ジオメトリシェーダプログラムの前記インスタンスの各々は、前記マージ型頂点/ジオメトリシェーダプログラムの前記それぞれのインスタンスに割り当てられる頂点に対する前記頂点シェーダ処理を実行するようにさらに構成可能であり、前記シェーダユニットは、
    前記マージ型頂点/ジオメトリシェーダプログラムの第1のインスタンスにより、複数の頂点のうちの1つに対する前記頂点シェーダ処理を実行して、頂点シェーディング済み頂点を生成することと、
    前記マージ型頂点/ジオメトリシェーダプログラムの第2のインスタンスにより、前記マージ型頂点/ジオメトリシェーダプログラムの前記第1のインスタンスによって生成された前記頂点シェーディング済み頂点に基づいて、前記複数のプリミティブのうちの第1のプリミティブに対する前記ジオメトリシェーダ処理を実行して、前記第1のプリミティブに対応する1つまたは複数のジオメトリシェーディング済み頂点を生成することと、
    前記マージ型頂点/ジオメトリシェーダプログラムの第3のインスタンスにより、前記マージ型頂点/ジオメトリシェーダプログラムの前記第1のインスタンスによって生成された前記頂点シェーディング済み頂点に基づいて、前記複数のプリミティブのうちの第2のプリミティブに対する前記ジオメトリシェーダ処理を実行して、前記第2のプリミティブに対応する1つまたは複数のジオメトリシェーディング済み頂点を生成することと
    を行うようにさらに構成される、請求項17に記載のデバイス。
  20. 前記第1の複数の出力頂点はM個の出力頂点を含み、前記マージ型頂点/ジオメトリシェーダプログラムの前記第2の複数のインスタンスは、前記マージ型頂点/ジオメトリシェーダプログラムのN個のインスタンスを含み、前記第2の複数の出力頂点はN個の出力頂点を含み、Mが2以上の整数であり、Nが2以上の整数であり、MがN以下である、請求項13に記載のデバイス。
  21. Mは、前記マージ型頂点/ジオメトリシェーダプログラムによって実装されるジオメトリシェーダ段階によって処理される前記プリミティブの各々に対して生成される頂点の数に等しく、
    Nは、前記マージ型頂点/ジオメトリシェーダプログラムによって実装されるジオメトリシェーダプログラムによって指定される最大出力頂点カウント値に等しく、前記最大出力頂点カウント値が、前記ジオメトリシェーダプログラムによって処理される前記プリミティブの各々に対して前記ジオメトリシェーダプログラムによって生成されるべきである出力頂点の最大数を示す、請求項20に記載のデバイス。
  22. 前記第1のシェーダプログラム実行モードで動作するとき、複数の頂点の各々は、処理のために1つのマージ型頂点/ジオメトリシェーダインスタンスに割り当てられ、
    前記第2のシェーダプログラム実行モードで動作するとき、前記複数の頂点の各々は、処理のためにK個のマージ型頂点/ジオメトリシェーダインスタンスに割り当てられ、Kが、前記それぞれの頂点を含むプリミティブの数に等しい整数である、請求項20に記載のデバイス。
  23. 1つまたは複数のプロセッサを備え、前記1つまたは複数のプロセッサは、
    前記マージ型頂点/ジオメトリシェーダプログラムによって実装されるジオメトリシェーダプログラムに関連する出力頂点を記憶するために必要な記憶空間の総量を示す情報に基づいて、前記マージ型頂点/ジオメトリシェーダプログラムを実行するために使用する被選択シェーダプログラム実行モードとして、前記第1のシェーダプログラム実行モードおよび前記第2のシェーダプログラム実行モードのうちの1つを選択することと、
    前記シェーダユニットに、前記被選択シェーダプログラム実行モードに基づいて前記マージ型頂点/ジオメトリシェーダプログラムを実行させることと
    を行うように構成される、請求項20に記載のデバイス。
  24. 前記1つまたは複数のプロセッサは、
    記憶空間の前記総量を示す前記情報がしきい値よりも大きいかどうかを判断することと、
    記憶空間の前記総量を示す前記情報が前記しきい値よりも大きいとの判断に応答して、前記被選択シェーダプログラム実行モードとして前記第2のシェーダプログラム実行モードを選択することと、
    記憶空間の前記総量を示す前記情報が前記しきい値以下であるとの判断に応答して、前記被選択シェーダプログラム実行モードとして前記第1のシェーダプログラム実行モードを選択することと
    を行うようにさらに構成される、請求項23に記載のデバイス。
  25. ワイヤレス通信デバイスを含む、請求項13に記載のデバイス。
  26. モバイルフォンハンドセットを含む、請求項13に記載のデバイス。
  27. シェーダユニットを備えるグラフィックスプロセッサと、
    第1のシェーダプログラム実行モードで動作すると判定するための手段と、
    前記第1のシェーダプログラム実行モードで動作すると判定したことに応答して、マージ型頂点/ジオメトリシェーダプログラムの単一のインスタンスが、前記マージ型頂点/ジオメトリシェーダプログラムによって受信される第1の複数のプリミティブごとに第1の複数の出力頂点が生成されるように、頂点シェーダ処理およびジオメトリシェーダ処理を実行する前記マージ型頂点/ジオメトリシェーダプログラムの第1の複数のインスタンスを実行するための手段と、
    第2のシェーダプログラム実行モードで動作すると判定するための手段と、
    前記第2のシェーダプログラム実行モードで動作すると判定したことに応答して、前記マージ型頂点/ジオメトリシェーダプログラムの第2の複数のインスタンスの各々が1つの出力頂点を出力するように、前記マージ型頂点/ジオメトリシェーダプログラムの前記第2の複数のインスタンスを実行して、第2の複数のプリミティブごとに第2の複数の出力頂点を生成するための手段と、
    を含む装置。
  28. 1つまたは複数のプロセッサによって実行されると、前記1つまたは複数のプロセッサに、
    グラフィックスプロセッサにより、第1のシェーダプログラム実行モードで動作すると判定させ、
    前記第1のシェーダプログラム実行モードで動作すると判定したことに応答して、マージ型頂点/ジオメトリシェーダプログラムの単一のインスタンスが、前記マージ型頂点/ジオメトリシェーダプログラムによって受信される第1の複数のプリミティブごとに第1の複数の出力頂点が生成されるように、頂点シェーダ処理およびジオメトリシェーダ処理を実行する前記マージ型頂点/ジオメトリシェーダプログラムの第1の複数のインスタンスを、前記グラフィックスプロセッサのシェーダユニットにより実行させ、
    グラフィックスプロセッサにより、第2のシェーダプログラム実行モードで動作すると判定させ、
    前記第2のシェーダプログラム実行モードで動作すると判定したことに応答して、前記マージ型頂点/ジオメトリシェーダプログラムの第2の複数のインスタンスの各々が1つの出力頂点を出力するように、前記グラフィックスプロセッサの前記シェーダユニットにより、前記マージ型頂点/ジオメトリシェーダプログラムの前記第2の複数のインスタンスを実行して、第2の複数のプリミティブごとに第2の複数の出力頂点を生成させる、
    命令を記憶したコンピュータ可読記憶媒体。
JP2017509677A 2014-08-22 2015-08-07 グラフィックス処理において使用するためのシェーダプログラム実行技法 Expired - Fee Related JP6294565B2 (ja)

Applications Claiming Priority (3)

Application Number Priority Date Filing Date Title
US14/466,554 2014-08-22
US14/466,554 US9665975B2 (en) 2014-08-22 2014-08-22 Shader program execution techniques for use in graphics processing
PCT/US2015/044279 WO2016028519A2 (en) 2014-08-22 2015-08-07 Shader program execution techniques for use in graphics processing

Publications (3)

Publication Number Publication Date
JP2017528820A JP2017528820A (ja) 2017-09-28
JP2017528820A5 true JP2017528820A5 (ja) 2017-11-24
JP6294565B2 JP6294565B2 (ja) 2018-03-14

Family

ID=53887231

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2017509677A Expired - Fee Related JP6294565B2 (ja) 2014-08-22 2015-08-07 グラフィックス処理において使用するためのシェーダプログラム実行技法

Country Status (7)

Country Link
US (1) US9665975B2 (ja)
EP (2) EP3489907B1 (ja)
JP (1) JP6294565B2 (ja)
CN (1) CN106663331B (ja)
ES (2) ES2732056T3 (ja)
HU (1) HUE042869T2 (ja)
WO (1) WO2016028519A2 (ja)

Families Citing this family (17)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US10002401B2 (en) * 2015-11-11 2018-06-19 Samsung Electronics Co., Ltd. Method and apparatus for efficient processing of graphics commands
KR102254119B1 (ko) * 2015-11-11 2021-05-20 삼성전자주식회사 그래픽스 명령을 처리하는 방법 및 장치
US10460513B2 (en) * 2016-09-22 2019-10-29 Advanced Micro Devices, Inc. Combined world-space pipeline shader stages
US10776895B2 (en) * 2017-02-10 2020-09-15 Apple Inc. GPU power and performance management
US10685473B2 (en) * 2017-05-31 2020-06-16 Vmware, Inc. Emulation of geometry shaders and stream output using compute shaders
US10559056B2 (en) * 2017-06-12 2020-02-11 Arm Limited Graphics processing
US10726605B2 (en) * 2017-09-15 2020-07-28 Intel Corporation Method and apparatus for efficient processing of derived uniform values in a graphics processor
US11080927B2 (en) * 2017-11-30 2021-08-03 Advanced Micro Devices, Inc. Method and apparatus of cross shader compilation
GB2570304B (en) 2018-01-18 2022-06-01 Imagination Tech Ltd Topology preservation in a graphics pipeline
CN108537866B (zh) * 2018-04-11 2022-04-29 北京知道创宇信息技术股份有限公司 数据处理方法、装置及可读存储介质
CN109710302B (zh) * 2018-12-12 2021-12-24 中国航空工业集团公司西安航空计算技术研究所 一种染色器软件管理装置和方法
CN109712211B (zh) * 2018-12-21 2023-02-10 西安恒歌数码科技有限责任公司 基于osg的高效体阴影生成方法
US11119820B2 (en) * 2019-03-15 2021-09-14 Intel Corporation Local memory sharing between kernels
CN110471700B (zh) * 2019-08-06 2021-06-29 Oppo广东移动通信有限公司 图形处理方法、装置、存储介质及电子设备
US11055895B2 (en) * 2019-08-29 2021-07-06 Advanced Micro Devices, Inc. Shader merge for reduced divergence
US20210272347A1 (en) * 2020-02-28 2021-09-02 Advanced Micro Devices, Inc. Fully utilized hardware in a multi-tenancy graphics processing unit
US11900136B2 (en) * 2021-07-28 2024-02-13 Sony Interactive Entertainment LLC AoT compiler for a legacy game

Family Cites Families (14)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US7978205B1 (en) 2004-05-03 2011-07-12 Microsoft Corporation Systems and methods for providing an enhanced graphics pipeline
US20080094408A1 (en) 2006-10-24 2008-04-24 Xiaoqin Yin System and Method for Geometry Graphics Processing
US8659601B1 (en) * 2007-08-15 2014-02-25 Nvidia Corporation Program sequencer for generating indeterminant length shader programs for a graphics processor
US8254701B1 (en) * 2007-12-13 2012-08-28 Nvidia Corporation Data compression using a geometry shading unit
US20090160863A1 (en) * 2007-12-21 2009-06-25 Michael Frank Unified Processor Architecture For Processing General and Graphics Workload
US8643644B2 (en) 2008-03-20 2014-02-04 Qualcomm Incorporated Multi-stage tessellation for graphics rendering
US8259111B2 (en) 2008-05-30 2012-09-04 Advanced Micro Devices, Inc. Merged shader for primitive amplification
US9142057B2 (en) * 2009-09-03 2015-09-22 Advanced Micro Devices, Inc. Processing unit with a plurality of shader engines
US8619087B2 (en) * 2009-10-06 2013-12-31 Nvidia Corporation Inter-shader attribute buffer optimization
US8786618B2 (en) 2009-10-08 2014-07-22 Nvidia Corporation Shader program headers
US20110216068A1 (en) 2010-03-08 2011-09-08 Sathe Rahul P Edge processing techniques
US10559123B2 (en) * 2012-04-04 2020-02-11 Qualcomm Incorporated Patched shading in graphics processing
US9299123B2 (en) 2013-01-22 2016-03-29 Qualcomm Incorporated Indexed streamout buffers for graphics processing
US9710957B2 (en) 2014-04-05 2017-07-18 Sony Interactive Entertainment America Llc Graphics processing enhancement by tracking object and/or primitive identifiers

Similar Documents

Publication Publication Date Title
JP2017528820A5 (ja)
JP5837221B2 (ja) タイルベースのレンダリングにおけるテッセレーション
US9842428B2 (en) Dynamically optimized deferred rendering pipeline
KR102276909B1 (ko) 렌더링 방법 및 장치
WO2016028519A3 (en) Shader program execution techniques for use in graphics processing
CN109690629B (zh) 图元着色器
US10186053B2 (en) Method and apparatus for performing path rendering
JP2017516207A5 (ja)
US9824458B2 (en) Dynamically switching between late depth testing and conservative depth testing
CN112529995B (zh) 图像渲染计算方法、装置、存储介质以及终端
US20160125649A1 (en) Rendering apparatus and rendering method
WO2014035682A1 (en) Surface tessselation by symmetric edge splitting
JP2017504106A5 (ja)
EP3191944A1 (en) Render-time linking of shaders
GB201310012D0 (en) A graphic processing unit and method for performing tessellation operations
JP2019509555A5 (ja)
US9836869B2 (en) Graphics-processing method of a graphics-processing unit and graphics-processing apparatus
US10417815B2 (en) Out of order pixel shader exports
CN105374004A (zh) 图形处理电路和方法
JP5899364B1 (ja) プレイヤの意図を予測してレンダリングするためのリソース配分を決定するプログラム、電子装置、システム及び方法
KR20210123243A (ko) 3차원 데이터 처리 방법
EP2950213B1 (en) Method, apparatus, and system for migrating virtual machine
US20150103072A1 (en) Method, apparatus, and recording medium for rendering object
US8325182B2 (en) Methods and systems to selectively batch-cull graphics primitives in response to sample cull results
US20160217603A1 (en) Graphics data processing method and apparatus