JP6961054B2 - テッセレーション方法 - Google Patents
テッセレーション方法 Download PDFInfo
- Publication number
- JP6961054B2 JP6961054B2 JP2020138467A JP2020138467A JP6961054B2 JP 6961054 B2 JP6961054 B2 JP 6961054B2 JP 2020138467 A JP2020138467 A JP 2020138467A JP 2020138467 A JP2020138467 A JP 2020138467A JP 6961054 B2 JP6961054 B2 JP 6961054B2
- Authority
- JP
- Japan
- Prior art keywords
- vertex
- vertices
- tessellation
- coefficient
- center
- 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.)
- Active
Links
Images
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06T—IMAGE DATA PROCESSING OR GENERATION, IN GENERAL
- G06T17/00—Three dimensional [3D] modelling, e.g. data description of 3D objects
- G06T17/20—Finite element generation, e.g. wire-frame surface description, tesselation
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06T—IMAGE DATA PROCESSING OR GENERATION, IN GENERAL
- G06T15/00—3D [Three Dimensional] image rendering
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06T—IMAGE DATA PROCESSING OR GENERATION, IN GENERAL
- G06T15/00—3D [Three Dimensional] image rendering
- G06T15/005—General purpose rendering architectures
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06T—IMAGE DATA PROCESSING OR GENERATION, IN GENERAL
- G06T17/00—Three dimensional [3D] modelling, e.g. data description of 3D objects
- G06T17/20—Finite element generation, e.g. wire-frame surface description, tesselation
- G06T17/205—Re-meshing
Landscapes
- Engineering & Computer Science (AREA)
- Physics & Mathematics (AREA)
- Computer Graphics (AREA)
- General Physics & Mathematics (AREA)
- Theoretical Computer Science (AREA)
- Geometry (AREA)
- Software Systems (AREA)
- Image Generation (AREA)
- Medicines Containing Material From Animals Or Micro-Organisms (AREA)
Description
(a)整数区分化(Integer partitioning)、すべての4つのエッジについてエッジTF=3
(b)整数区分化、すべての4つのエッジについてエッジTF=4
(c)2の累乗整数区分化(Power of two integer partitioning)、すべての4つのエッジについてエッジTF=2
(d)2の累乗整数区分化、すべての4つのエッジについてエッジTF=4
(e)2の累乗整数区分化、すべての4つのエッジについてエッジTF=8
を示す。
f)奇数(Odd)小数区分化、すべての4つのエッジについてエッジTF=3.0
g)奇数小数区分化、すべての4つのエッジについてエッジTF=4.0
h)偶数(Even)小数区分化、すべての4つのエッジについてエッジTF=3.0
i)偶数小数区分化、すべての4つのエッジについてエッジTF=4.0
である。
E=wC+(1-w)D
を用いて算出されることができ、ここで、wは重み付け係数であり、細分割比の小数部分から導出され、Dは特定の細分割レベルにおいて導出される第1の頂点値であり、Cは、より微細な細分割レベルにおいて導出される第2の頂点値である。上記の式を用いてEを算出することによって、新しい中間の頂点が点C及びDの間で円滑に移行する。
式1:BlendWeightFunc(TF0,…TF3).=MAXi=0..3(MIN(TFi-1,1))
であるように選ばれる。
四角形が細分割されることになるため、上記の最初のTFは、下記のアプローチ:
IF InitialTFcentre<2.0
TFcentre:=1.0
BWcentre:=BlendWeightFunc(TF0,TF1,TF2,TF3)
ELSE
TFcentre:=InitialTFcentre/2
BWcentre:=1.0
ENDIF
を用いて「等分され」て、中心についてのTF及びBW(又は、ブレンド係数)を生じさせる。
IF TFi=1.0
WTFi 0:=1.0
WBWi 0:=BWi
ELSE IF TFi<2.0
WTFi 0:=1.0
WBWi 0:=TFi-1.0
ELSE
WTFi 0:=TFi/2
WBWi 0:=1.0
として導出される。
及び、後者のエッジ
並びに、各々の新たに追加された頂点についての頂点テッセレーション係数及びブレンド係数が、算出される(ブロック726)。それから、サブ四角形(すなわち、Wi 0、Wi 1、VCentre(Wi 2であると見なされることができる)、及びWi 3を含む4つの頂点)は、(ブロック728、及び、ブロック702に戻る点線の矢印により示されるとおり)戻って図7に示される方法に入力される。
IF InitialTFM<2.0
TFM:=1.0
BWM:=MAX(MIN(TFA-1,1),MIN(TFB-1,1))
ELSE
TFM:=InitialTFM/2
BWM:=1.0
ENDIF
である。
)であると算出され、「等分」の後は“1.0”に設定され(すなわち、TFcentre:=1.0)、ブレンド係数BFcentreは0.5に設定される。中心頂点は、サブ四角形の中で「第3の」頂点を形成し得るので、これはさらにWV0 2と呼ばれることになる。
IF InitialTFcentre<2.0
TFcentre:=1.0
BWcentre:=BlendWeightFunc(TF0,TF1,TF2)
ELSE
TFcentre:=InitialTFcentre/2
BWcentre:=1.0
ENDIF
で算出される。これにおいて、3つの頂点はV0〜V2で表され、その頂点テッセレーション係数はTF0〜TF2で表される。
IF TF=1.0
WTFi 0:=1.0
WBWi 0:=BWi
ELSE IF TFi<2.0
WTFi 0:=1.0
WBWi 0:=TFi-1.0
ELSE
WTFi 0:=TFi/2
WBWi 0:=1.0
として導出される。
及び、後者のエッジ
並びに、各々の新たに追加された頂点についての頂点テッセレーション係数及びブレンド係数が、算出される(ブロック818)。それから、サブ四角形(すなわち、Wi 0、Wi 1、VCentre(Wi 2であると見なされることができる)、及びWi 3を含む4つの頂点)が、図7に示される四角形の方法に対して入力される(ブロック820であり、すなわちブロック702において始まる)。
IF InitialTFM<2.0
TFM:=1.0
BWM:=MAX(MIN(TFA-1,1),MIN(TFB-1,1))
ELSE
TFM:=InitialTFM/2
BWM:=1.0
ENDIF
として決定される。
が用いられてもよい。さらに、式3を用いることに代わって、下記の式、すなわち、
が用いられてもよい。さらに、式4を用いることに代わって、下記の式、すなわち、
が用いられてもよい。
a)ブレンド重み付け関数(上記の式1における)は、
BlendWeightFunc=MAXi=0..P-1(MIN(TFi-1,1))
に一般化される。
b)中心の最初のTFについての関数(上記の式2における)は、
に一般化される。
c)前の頂点及び次の頂点のインデックス付けは、それぞれ、V(i-1)MOD P及びV(i+1)MOD Pになる。
上記の実施形態につき以下の付記を残しておく。
[付記1]
a)四角形パッチを定義する4つの頂点を含む入力を受け取ることであって、各頂点は、ドメイン空間座標及び頂点テッセレーション係数を含み、
b)前記頂点テッセレーション係数を閾値と比較し、
c)すべての4つの頂点テッセレーション係数が前記閾値より小さいか又は等しいと決定することに応答して、前記パッチを2つ又は4つの三角形に分割し、
d)前記4つの頂点テッセレーション係数のうち少なくとも1つが前記閾値を超えると決定することに応答して、
前記パッチに対する中心頂点を生成し、前記の新たに追加された中心頂点についての頂点テッセレーション係数及びブレンド係数を算出し、
順に、前記の4つの受け取られた頂点のうち各1つを選択することであって、各々の選択された頂点について、
前記選択された頂点に基づいて頂点を定義し、
前記選択された頂点の頂点テッセレーション係数が前記閾値を超えるか、又は双方の隣接頂点の頂点テッセレーション係数が前記閾値を超えると決定することに応答して、2つの新しい頂点を追加して前記選択された頂点と隣接頂点との間の各エッジを細分割し、前記新しい頂点の頂点テッセレーション係数及びブレンド係数を算出し、サブ四角形を定義し且つ前記の定義された頂点と前記中心頂点と前記2つの新しい頂点とを含む4つの頂点を、さらなる入力としてa)に提供し、
前記選択された頂点の頂点テッセレーション係数が前記閾値を超えず、正確に一方の隣接頂点の頂点テッセレーション係数が前記閾値を超えると決定することに応答して、新しい頂点を追加して、前記選択された頂点と前記閾値を超える頂点テッセレーション係数を有する隣接頂点との間のエッジを細分割し、前記の定義された頂点と前記の新たに追加された頂点と前記中心頂点と他方の隣接頂点とにより定義されるサブ四角形を、前記定義された頂点を前記サブ四角形における対角線的に対向の頂点に接続することによって2つの三角形に分割する
ように構成されたハードウェアロジックを含むハードウェアテッセレーションユニット。
[付記2]
前記パッチを2つ又は4つの三角形に分割するように構成された前記ハードウェアロジックは、
前記パッチがトップレベルパッチであるかを決定し、
前記パッチがトップレベルパッチであると決定することに応答して、中心頂点を追加し、各入力頂点を前記中心頂点につなぐことによって4つの三角形を作成し、
前記パッチがトップレベルパッチでないと決定することに応答して、前記パッチのソース頂点を前記パッチの対角線的に対向の頂点に接続することによって2つの三角形を作成する
ように構成されたハードウェアロジックを含む、付記1に記載のハードウェアテッセレーションユニット。
[付記3]
前記パッチに対する中心頂点を生成するように構成された前記ハードウェアロジックは、
トップレベルパッチについて、(i)N次元空間におけるすべての4つの角の頂点についての位置の平均と、(ii)N次元空間にマップされる、ドメイン空間におけるすべての4つの角の頂点についての場所の平均と、の重み付けされたブレンドにより与えられる位置を有する中心頂点を生成し、
トップレベルパッチでないパッチについて、(i)N次元空間における前記選択された頂点と対角線的に対向の頂点との位置の平均と、(ii)N次元空間にマップされる、ドメイン空間における前記選択された頂点と対角線的に対向の頂点とについての場所の平均と、の重み付けされたブレンドにより与えられる位置を有する中心頂点を生成する
ように構成されたハードウェアロジックを含み、
前記重み付けされたブレンドは、前記頂点テッセレーション係数の関数として決定される重み付けを使用する、
付記1又は2に記載のハードウェアテッセレーションユニット。
[付記4]
前記重み付けは、
MAXi=0..3(MIN(TFi-1,1))
により与えられる、付記3に記載のハードウェアテッセレーションユニット。
[付記5]
前記新たに追加された中心頂点についての頂点テッセレーション係数及びブレンド係数を算出するように構成された前記ハードウェアロジックは、
最初の頂点テッセレーション係数を、
を用いて算出し、
前記新たに追加された中心頂点についての頂点テッセレーション係数TFcentre及びブレンド係数BWcentreを、
InitialTFcentreが2より小さいかを決定し、
InitialTFcentreが2.0より小さいと決定すること応答して、TFcentre=1及びBWcentre=BlendWeightFunc(TF0,TF1,TF2,TF3)を設定することであって、
BlendWeightFunc(TF0,…TF3).=MAXi=0..3(MIN(TFi-1,1))
であり、
InitialTFcentreが2.0より小さくないと決定すること応答して、TFcentre=InitialTFcentre/2及びBWcentre=1.0を設定する
ことによって算出する
ように構成されたハードウェアロジックを含む、付記1乃至4のうちいずれか1項に記載のハードウェアテッセレーションユニット。
[付記6]
前記選択された頂点に基づいて頂点を定義するように構成された前記ハードウェアロジックは、
前記の定義された頂点のドメイン空間座標を前記選択された頂点のドメイン空間座標に等しく設定し、
前記選択された頂点の頂点テッセレーション係数が1.0に等しいかと、前記選択された頂点の頂点テッセレーション係数が2.0より小さいかとを決定し、
前記選択された頂点の頂点テッセレーション係数が1.0に等しいと決定することに応答して、前記定義された頂点の頂点テッセレーション係数を1.0に等しく設定し、前記定義された頂点のブレンド係数を前記選択された頂点のブレンド係数に等しく設定し、
前記選択された頂点の頂点テッセレーション係数が1.0に等しくなく、2.0より小さいと決定することに応答して、前記定義された頂点の頂点テッセレーション係数を1.0に等しく設定し、前記定義された頂点のブレンド係数を前記選択された頂点の頂点テッセレーション係数より1少ない値に等しく設定し、
前記選択された頂点の頂点テッセレーション係数が2.0より小さくないと決定することに応答して、前記定義された頂点の頂点テッセレーション係数を前記選択された頂点の頂点テッセレーション係数の半分に等しく設定し、前記定義された頂点のブレンド係数を1に等しく設定する
ように構成されたハードウェアロジックを含む、付記1乃至5のうちいずれか1項に記載のハードウェアテッセレーションユニット。
[付記7]
2つの新しい頂点を追加して前記選択された頂点と隣接頂点との間の各エッジを細分割し、前記新しい頂点の頂点テッセレーション係数及びブレンド係数を算出するように構成された前記ハードウェアロジックは、頂点VAとVBとの間のエッジを細分割する各々の新しい頂点VMについて、
VMについての最初の頂点テッセレーション係数を、
を用いて算出し、
前記の新たに追加された頂点VMについての頂点テッセレーション係数TFM及びブレンド係数BWMを、
InitialTFMが2より小さいかを決定し、
InitialTFMが2.0より小さいと決定することに応答して、TFM=1及びBWM=MAX(MIN(TFA-1,1),MIN(TFB-1,1))を設定し、
InitialTFMが2.0より小さくないと決定することに応答して、TFM=InitialTFM/2及びBWM=1.0を設定し、
ドメイン空間におけるVMの位置を、VA及びVBのドメイン空間座標の平均であるように、及び、(i)N次元空間におけるVA及びVBの位置の平均と、(ii)N次元空間にマップされる、ドメイン空間におけるVMの位置との、BWMを用いて重み付けされたブレンドにより与えられる位置を有するN次元空間における位置に、設定する
ことによって算出する
ように構成されたハードウェアロジックを含む、付記1乃至6のうちいずれか1項に記載のハードウェアテッセレーションユニット。
[付記8]
三角形パッチを定義する3つの頂点を含む入力を受け取ることであって、各頂点は、ドメイン空間座標及び頂点テッセレーション係数を含み、
前記頂点テッセレーション係数を閾値と比較し、
前記3つの頂点テッセレーション係数のうち少なくとも1つが前記閾値を超えると決定することに応答して、
前記パッチに対する中心頂点を生成し、前記の新たに追加された頂点についての頂点テッセレーション係数及びブレンド係数を算出し、
順に、前記の3つの受け取られた頂点のうち各1つを選択することであって、各々の選択された頂点について、
前記選択された頂点に基づいて頂点を定義し、
前記選択された頂点の頂点テッセレーション係数が前記閾値を超えると決定することに応答して、2つの新しい頂点を追加して前記選択された頂点と隣接頂点との間の各エッジを細分割し、前記新しい頂点の頂点テッセレーション係数及びブレンド係数を算出し、サブ四角形を定義し且つ前記の定義された頂点と前記中心頂点と前記2つの新しい頂点とを含む4つの頂点を、さらなる入力としてa)に提供し、
前記選択された頂点の頂点テッセレーション係数が前記閾値を超えず、双方の隣接頂点の頂点テッセレーション係数が前記閾値を超えると決定することに応答して、2つの新しい頂点を追加して前記選択された頂点と隣接頂点との間の各エッジを細分割し、前記の定義された頂点と前記の新たに追加された頂点と前記中心頂点と他方の隣接頂点とにより定義されるサブ四角形を、前記定義された頂点を前記サブ四角形における対角線的に対向の頂点に接続することによって2つの三角形に分割し、
前記選択された頂点の頂点テッセレーション係数が前記閾値を超えず、次の隣接頂点の頂点テッセレーション係数が前記閾値を超え、前の隣接頂点の頂点テッセレーション係数が前記閾値を超えないと決定することに応答して、新しい頂点を追加して前記選択された頂点と前記次の隣接頂点との間のエッジを細分割し、前記定義された頂点と前記の新たに追加された頂点と前記中心頂点とを接続する1つの三角形を描画し、
前記選択された頂点の頂点テッセレーション係数が前記閾値を超えず、次の隣接頂点の頂点テッセレーション係数が前記閾値を超えず、前の隣接頂点の頂点テッセレーション係数が前記閾値を超えると決定することに応答して、新しい頂点を追加して前記選択された頂点と前記前の隣接頂点との間のエッジを細分割し、前記定義された頂点と前記の新たに追加された頂点と前記中心頂点と前記次の隣接頂点とにより定義されるサブ四角形を、前記定義された頂点を前記サブ四角形における対角線的に対向の頂点に接続することによって2つの三角形に分割する
ように構成されたハードウェアロジック、をさらに含む付記1乃至7のうちいずれか1項に記載のハードウェアテッセレーションユニット。
[付記9]
三角形パッチについて、前記パッチに対する中心頂点を生成し、前記の新たに追加された頂点についての頂点テッセレーション係数及びブレンド係数を算出するように構成された前記ハードウェアロジックは、
前記三角形パッチの3つの頂点の平均値により与えられるドメイン空間における位置を有する中心頂点を生成し、
最初の頂点テッセレーション係数を、
を用いて算出し、
前記新たに追加された中心頂点についての頂点テッセレーション係数TFcentre及びブレンド係数BWcentreを、
InitialTFcentreが2より小さいかを決定し、
InitialTFcentreが2.0より小さいと決定すること応答して、TFcentre=1及びBWcentre=BlendWeightFunc(TF0,TF1,TF2)を設定することであって、
BlendWeightFunc(TF0,…TF2).=MAXi=0..2(MIN(TFi-1,1))
であり、
InitialTFcentreが2.0より小さくないと決定すること応答して、TFcentre=InitialTFcentre/2及びBWcentre=1.0を設定する
ことによって算出する
ように構成されたハードウェアロジックを含む、付記8に記載のハードウェアテッセレーションユニット。
[付記10]
三角形パッチについて、前記選択された頂点に基づいて頂点を定義するように構成された前記ハードウェアロジックは、
前記の定義された頂点のドメイン空間座標を前記選択された頂点のドメイン空間座標に等しく設定し、
前記選択された頂点の頂点テッセレーション係数が1.0に等しいかと、前記選択された頂点の頂点テッセレーション係数が2.0より小さいかとを決定し、
前記選択された頂点の頂点テッセレーション係数が1.0に等しいと決定することに応答して、前記定義された頂点の頂点テッセレーション係数を1.0に等しく設定し、前記定義された頂点のブレンド係数を前記選択された頂点のブレンド係数に等しく設定し、
前記選択された頂点の頂点テッセレーション係数が1.0に等しくなく、2.0より小さいと決定することに応答して、前記定義された頂点の頂点テッセレーション係数を1.0に等しく設定し、前記定義された頂点のブレンド係数を前記選択された頂点の頂点テッセレーション係数より1少ない値に等しく設定し、
前記選択された頂点の頂点テッセレーション係数が2.0より小さくないと決定することに応答して、前記定義された頂点の頂点テッセレーション係数を前記選択された頂点の頂点テッセレーション係数の半分に等しく設定し、前記定義された頂点のブレンド係数を1に等しく設定する
ように構成されたハードウェアロジックを含む、付記8又は9に記載のハードウェアテッセレーションユニット。
[付記11]
三角形パッチについて、新しい頂点を追加して前記選択された頂点と隣接頂点との間の各エッジを細分割し、前記新しい頂点の頂点テッセレーション係数及びブレンド係数を算出するように構成された前記ハードウェアロジックは、頂点VAとVBとの間のエッジを細分割する各々の新しい頂点VMについて、
VMについての最初の頂点テッセレーション係数を、
を用いて算出し、
前記の新たに追加された頂点VMについての頂点テッセレーション係数TFM及びブレンド係数BWMを、
InitialTFMが2より小さいかを決定し、
InitialTFMが2.0より小さいと決定することに応答して、TFM=1及びBWM=MAX(MIN(TFA-1,1),MIN(TFB-1,1))を設定し、
InitialTFMが2.0より小さくないと決定することに応答して、TFM=InitialTFM/2及びBWM=1.0を設定し、
ドメイン空間におけるVMの位置を、VA及びVBのドメイン空間座標の平均であるように、及び、(i)N次元空間におけるVA及びVBの位置の平均と、(ii)N次元空間にマップされる、ドメイン空間におけるVMの位置との、BWMを用いて重み付けされたブレンドにより与えられる位置を有するN次元空間における位置に、設定する
ことによって算出する
ように構成されたハードウェアロジックを含む、付記8乃至10のうちいずれか1項に記載のハードウェアテッセレーションユニット。
[付記12]
P>4においてP辺のパッチを定義するP個の頂点を含む入力を受け取ることであって、各頂点は、ドメイン空間座標及び頂点テッセレーション係数を含み、
前記頂点テッセレーション係数を閾値と比較し、
すべてのP個の頂点テッセレーション係数が前記閾値を超えないと決定することに応答して、中心頂点を追加し、前記パッチをP個の三角形に分割し、
前記P個の頂点テッセレーション係数のうち少なくとも1つが前記閾値を超えると決定することに応答して、
前記パッチについての中心頂点を生成し、前記の新たに追加された中心頂点についての頂点テッセレーション係数及びブレンド係数を算出し、
順に、前記のP個の受け取られた頂点のうち各1つを選択することであって、各々の選択された頂点について、
前記選択された頂点に基づいて頂点を定義し、
前記選択された頂点の頂点テッセレーション係数が前記閾値を超えるか、又は双方の隣接頂点の頂点テッセレーション係数が前記閾値を超えると決定することに応答して、2つの新しい頂点を追加して前記選択された頂点と隣接頂点との間の各エッジを細分割し、前記新しい頂点の頂点テッセレーション係数及びブレンド係数を算出し、サブ四角形を定義し且つ前記の定義された頂点と前記中心頂点と前記2つの新しい頂点とを含む4つの頂点を、さらなる入力としてa)に提供し、
前記選択された頂点の頂点テッセレーション係数が前記閾値を超えず、正確に一方の隣接頂点の頂点テッセレーション係数が前記閾値を超えると決定することに応答して、新しい頂点を追加して、前記選択された頂点と前記閾値を超える頂点テッセレーション係数を有する隣接頂点との間のエッジを細分割し、前記の定義された頂点と前記の新たに追加された頂点と前記中心頂点と他方の隣接頂点とにより定義されるサブ四角形を、前記定義された頂点を前記サブ四角形における対角線的に対向の頂点に接続することによって2つの三角形に分割する
ように構成されたハードウェアロジック、をさらに含む付記1乃至11のうちいずれか1項に記載のハードウェアテッセレーションユニット。
[付記13]
パッチ又はサブ四角形内における再利用のための頂点データを記憶するように配置されたメモリ素子、をさらに含み、前記パッチ又はサブ四角形の2つ以上の細分割された部分の一部であるエッジを細分割するように追加される頂点が、パッチ又はサブ四角形ごとに1回だけ決定される、付記1乃至12のうちいずれか1項に記載のハードウェアテッセレーションユニット。
[付記14]
コンピュータグラフィクスシステムにおいてテッセレーションを実行する方法であって、
a)四角形パッチを定義する4つの頂点を含む入力を受け取るステップであって、各頂点は、ドメイン空間座標及び頂点テッセレーション係数を含む、ステップと、
b)前記頂点テッセレーション係数を閾値と比較するステップと、
c)すべての4つの頂点テッセレーション係数が前記閾値を超えないと決定することに応答して、前記パッチを2つ又は4つの三角形に分割するステップと、
d)少なくとも1つのテッセレーション係数が前記閾値を超えると決定することに応答して、
前記パッチに対する中心頂点を生成し、前記の新たに追加された中心頂点についての頂点テッセレーション係数及びブレンド係数を算出するステップと、
順に、前記の4つの受け取られた頂点のうち各1つを選択するステップであって、各々の選択された頂点について、
前記選択された頂点に基づいて頂点を定義するステップと、
前記選択された頂点の頂点テッセレーション係数が前記閾値を超えるか、又は双方の隣接頂点の頂点テッセレーション係数が前記閾値を超えると決定することに応答して、2つの新しい頂点を追加して前記選択された頂点と隣接頂点との間の各エッジを細分割し、前記新しい頂点の頂点テッセレーション係数及びブレンド係数を算出し、サブ四角形を定義し且つ前記の定義された頂点と前記中心頂点と前記2つの新しい頂点とを含む4つの頂点を、さらなる入力としてa)に提供するステップと、
前記選択された頂点の頂点テッセレーション係数が前記閾値を超えず、正確に一方の隣接頂点の頂点テッセレーション係数が前記閾値を超えると決定することに応答して、新しい頂点を追加して、前記選択された頂点と前記閾値を超える頂点テッセレーション係数を有する隣接頂点との間のエッジを細分割し、前記の定義された頂点と前記の新たに追加された頂点と前記中心頂点と他方の隣接頂点とにより定義されるサブ四角形を、前記定義された頂点を前記サブ四角形における対角線的に対向の頂点に接続することによって2つの三角形に分割するステップと、
を含む方法。
[付記15]
前記パッチを2つ又は4つの三角形に分割するステップは、
前記パッチがトップレベルパッチであるかを決定すること、
前記パッチがトップレベルパッチであると決定することに応答して、中心頂点を追加し、各入力頂点を前記中心頂点につなぐことによって4つの三角形を作成こと、及び
前記パッチがトップレベルパッチでないと決定することに応答して、前記パッチのソース頂点を前記パッチの対角線的に対向の頂点に接続することによって2つの三角形を作成すること
を含む、付記14に記載の方法。
[付記16]
前記パッチに対する中心頂点を生成するステップは、
トップレベルパッチについて、(i)N次元空間におけるすべての4つの角の頂点についての位置の平均と、(ii)N次元空間にマップされる、ドメイン空間におけるすべての4つの角の頂点についての場所の平均と、の重み付けされたブレンドにより与えられる位置を有する中心頂点を生成すること、及び
トップレベルパッチでないパッチについて、(i)N次元空間における前記選択された頂点と対角線的に対向の頂点との位置の平均と、(ii)N次元空間にマップされる、ドメイン空間における前記選択された頂点と対角線的に対向の頂点とについての場所の平均と、の重み付けされたブレンドにより与えられる位置を有する中心頂点を生成すること
を含み、
前記重み付けされたブレンドは、前記頂点テッセレーション係数の関数として決定される重み付けを使用する、
付記14又は15に記載の方法。
[付記17]
前記新たに追加された中心頂点についての頂点テッセレーション係数及びブレンド係数を算出するステップは、
最初の頂点テッセレーション係数を、
を用いて算出すること、及び
前記新たに追加された中心頂点についての頂点テッセレーション係数TFcentre及びブレンド係数BWcentreを、
InitialTFcentreが2より小さいかを決定し、
InitialTFcentreが2.0より小さいと決定すること応答して、TFcentre=1及びBWcentre=BlendWeightFunc(TF0,TF1,TF2,TF3)を設定することであって、
BlendWeightFunc(TF0,…TF3).=MAXi=0..3(MIN(TFi-1,1))
であり、
InitialTFcentreが2.0より小さくないと決定すること応答して、TFcentre=InitialTFcentre/2及びBWcentre=1.0を設定する
ことによって算出すること、
を含む、付記14乃至16のうちいずれか1項に記載の方法。
[付記18]
前記選択された頂点に基づいて頂点を定義するステップは、
前記の定義された頂点のドメイン空間座標を前記選択された頂点のドメイン空間座標に等しく設定すること、
前記選択された頂点の頂点テッセレーション係数が1.0に等しいかと、前記選択された頂点の頂点テッセレーション係数が2.0より小さいかとを決定すること、
前記選択された頂点の頂点テッセレーション係数が1.0に等しいと決定することに応答して、前記定義された頂点の頂点テッセレーション係数を1.0に等しく設定し、前記定義された頂点のブレンド係数を前記選択された頂点のブレンド係数に等しく設定すること、
前記選択された頂点の頂点テッセレーション係数が1.0に等しくなく、2.0より小さいと決定することに応答して、前記定義された頂点の頂点テッセレーション係数を1.0に等しく設定し、前記定義された頂点のブレンド係数を前記選択された頂点の頂点テッセレーション係数より1少ない値に等しく設定すること、及び
前記選択された頂点の頂点テッセレーション係数が2.0より小さくないと決定することに応答して、前記定義された頂点の頂点テッセレーション係数を前記選択された頂点の頂点テッセレーション係数の半分に等しく設定し、前記定義された頂点のブレンド係数を1に等しく設定すること、
を含む、付記14乃至17のうちいずれか1項に記載の方法。
[付記19]
2つの新しい頂点を追加して前記選択された頂点と隣接頂点との間の各エッジを細分割し、前記新しい頂点の頂点テッセレーション係数及びブレンド係数を算出するステップは、頂点VAとVBとの間のエッジを細分割する各々の新しい頂点VMについて、
VMについての最初の頂点テッセレーション係数を、
を用いて算出すること、及び
前記の新たに追加された頂点VMについての頂点テッセレーション係数TFM及びブレンド係数BWMを、
InitialTFMが2より小さいかを決定し、
InitialTFMが2.0より小さいと決定することに応答して、TFM=1及びBWM=MAX(MIN(TFA-1,1),MIN(TFB-1,1))を設定し、
InitialTFMが2.0より小さくないと決定することに応答して、TFM=InitialTFM/2及びBWM=1.0を設定し、
ドメイン空間におけるVMの位置を、VA及びVBのドメイン空間座標の平均であるように、及び、(i)N次元空間におけるVA及びVBの位置の平均と、(ii)N次元空間にマップされる、ドメイン空間におけるVMの位置との、BWMを用いて重み付けされたブレンドにより与えられる位置を有するN次元空間における位置に、設定する
ことによって算出すること、
を含む、付記14乃至18のうちいずれか1項に記載の方法。
[付記20]
付記1乃至13のうちいずれか1項に記載のハードウェアテッセレーションユニットを定義するコンピュータ可読プログラムコードをエンコードさせたコンピュータ可読記憶媒体。
1302 頂点シェーダ
1304 テッセレーションユニット(テッセレータ)
1306 ドメインシェーダ
1400 コンピューティングベース装置
1402 プロセッサ
1412 通信インターフェース
1410 メモリ
1404 オペレーティングシステム
1406 アプリケーションソフトウェア
1408 テッセレーションモジュール
Claims (15)
- コンピュータグラフィックスシステムにおいてテッセレーションを実行する方法であって、
三角形パッチを定義する3つの頂点を含む入力を受け取るステップであって、各頂点は、ドメイン空間座標及び頂点テッセレーション係数を含む、ステップと、
前記頂点テッセレーション係数を閾値と比較するステップと、
前記3つの頂点テッセレーション係数のうち少なくとも1つが前記閾値を超えると決定することに応答して、
前記パッチに対する中心頂点を生成し、前記の新たに追加された頂点についての頂点テッセレーション係数及びブレンド係数を算出するステップと、
順に、前記の3つの受け取られた頂点のうち各1つを選択するステップであって、各々の選択された頂点について、
前記選択された頂点に基づいて頂点を定義するステップと、
前記選択された頂点の頂点テッセレーション係数が前記閾値を超えず、次の隣接頂点の頂点テッセレーション係数が前記閾値を超え、前の隣接頂点の頂点テッセレーション係数が前記閾値を超えないと決定することに応答して、新しい頂点を追加して前記選択された頂点と前記次の隣接頂点との間のエッジを細分割し、前記定義された頂点と前記の新たに追加された頂点と前記中心頂点とを接続する1つの三角形を描画するステップと、
前記選択された頂点の頂点テッセレーション係数が前記閾値を超えず、次の隣接頂点の頂点テッセレーション係数が前記閾値を超えず、前の隣接頂点の頂点テッセレーション係数が前記閾値を超えると決定することに応答して、新しい頂点を追加して前記選択された頂点と前記前の隣接頂点との間のエッジを細分割し、前記定義された頂点と前記の新たに追加された頂点と前記中心頂点と前記次の隣接頂点とにより定義されるサブ四角形を、前記定義された頂点を前記サブ四角形における対角線的に対向の頂点に接続することによって2つの三角形に分割するステップと、
を含む方法。 - 各々の選択された頂点について、
前記選択された頂点の頂点テッセレーション係数が前記閾値を超えず、双方の隣接頂点の頂点テッセレーション係数が前記閾値を超えると決定することに応答して、2つの新しい頂点を追加して前記選択された頂点と隣接頂点との間の各エッジを細分割し、前記の定義された頂点と前記の新たに追加された頂点と前記中心頂点とにより定義されるサブ四角形を、前記定義された頂点を前記サブ四角形における対角線的に対向の頂点に接続することによって2つの三角形に分割するステップ
をさらに含む請求項1に記載の方法。 - 前記パッチに対する中心頂点を生成し、前記の新たに追加された頂点についての頂点テッセレーション係数及びブレンド係数を算出するステップは、
前記三角形パッチの3つの頂点の平均値により与えられるドメイン空間における位置を有する中心頂点を生成するステップと、
最初の頂点テッセレーション係数を、
前記新たに追加された中心頂点についての頂点テッセレーション係数TFcentre及びブレンド係数BWcentreを、
InitialTFcentreが2より小さいかを決定し、
InitialTFcentreが2.0より小さいと決定すること応答して、TFcentre=1及びBWcentre=BlendWeightFunc(TF0,TF1,TF2)を設定することであって、
BlendWeightFunc(TF0,…TF2).=MAXi=0..2(MIN(TFi-1,1))
であり、
InitialTFcentreが2.0より小さくないと決定すること応答して、TFcentre=InitialTFcentre/2及びBWcentre=1.0を設定する
ことによって算出するステップと、
を含む、請求項1又は2に記載の方法。 - 前記選択された頂点に基づいて頂点を定義するステップは、
前記の定義された頂点のドメイン空間座標を前記選択された頂点のドメイン空間座標に等しく設定するステップと、
前記選択された頂点の頂点テッセレーション係数が1.0に等しいかと、前記選択された頂点の頂点テッセレーション係数が2.0より小さいかとを決定するステップと、
前記選択された頂点の頂点テッセレーション係数が1.0に等しいと決定することに応答して、前記定義された頂点の頂点テッセレーション係数を1.0に等しく設定し、前記定義された頂点のブレンド係数を前記選択された頂点のブレンド係数に等しく設定するステップと、
前記選択された頂点の頂点テッセレーション係数が1.0に等しくなく、2.0より小さいと決定することに応答して、前記定義された頂点の頂点テッセレーション係数を1.0に等しく設定し、前記定義された頂点のブレンド係数を前記選択された頂点の頂点テッセレーション係数より1少ない値に等しく設定するステップと、
前記選択された頂点の頂点テッセレーション係数が2.0より小さくないと決定することに応答して、前記定義された頂点の頂点テッセレーション係数を前記選択された頂点の頂点テッセレーション係数の半分に等しく設定し、前記定義された頂点のブレンド係数を1に等しく設定するステップと、
を含む、請求項1乃至3のうちいずれか1項に記載の方法。 - 新しい頂点を追加して前記選択された頂点と隣接頂点との間のエッジを細分割し、前記新しい頂点の頂点テッセレーション係数及びブレンド係数を算出するステップは、頂点VAとVBとの間のエッジを細分割する各々の新しい頂点VMについて、
VMについての最初の頂点テッセレーション係数を、
前記の新たに追加された頂点VMについての頂点テッセレーション係数TFM及びブレンド係数BWMを、
InitialTFMが2より小さいかを決定し、
InitialTFMが2.0より小さいと決定することに応答して、TFM=1及びBWM=MAX(MIN(TFA-1,1),MIN(TFB-1,1))を設定し、
InitialTFMが2.0より小さくないと決定することに応答して、TFM=InitialTFM/2及びBWM=1.0を設定し、
ドメイン空間におけるVMの位置を、VA及びVBのドメイン空間座標の平均であるように、及び、(i)N次元空間におけるVA及びVBの位置の平均と、(ii)N次元空間にマップされる、ドメイン空間におけるVMの位置との、BWMを用いて重み付けされたブレンドにより与えられる位置を有するN次元空間における位置に、設定する
ことによって算出するステップと、
を含む、請求項1乃至4のうちいずれか1項に記載の方法。 - 前記閾値は1に等しい、請求項1乃至5のうちいずれか1項に記載の方法。
- パッチ又はサブ四角形内における再利用のための頂点データを記憶するステップ、をさらに含み、前記パッチ又はサブ四角形の2つ以上の細分割された部分の一部であるエッジを細分割するように追加される頂点が、パッチ又はサブ四角形ごとに1回だけ決定される、請求項1乃至6のうちいずれか1項に記載の方法。
- パッチ又はサブ四角形の細分割された部分は三角形又はサブ四角形を含む、請求項7に記載の方法。
- 三角形パッチを定義する3つの頂点を含む入力を受け取ることであって、各頂点は、ドメイン空間座標及び頂点テッセレーション係数を含み、
前記頂点テッセレーション係数を閾値と比較し、
前記3つの頂点テッセレーション係数のうち少なくとも1つが前記閾値を超えると決定することに応答して、
前記パッチに対する中心頂点を生成し、前記の新たに追加された頂点についての頂点テッセレーション係数及びブレンド係数を算出し、
順に、前記の3つの受け取られた頂点のうち各1つを選択することであって、各々の選択された頂点について、
前記選択された頂点に基づいて頂点を定義し、
前記選択された頂点の頂点テッセレーション係数が前記閾値を超えず、次の隣接頂点の頂点テッセレーション係数が前記閾値を超え、前の隣接頂点の頂点テッセレーション係数が前記閾値を超えないと決定することに応答して、新しい頂点を追加して前記選択された頂点と前記次の隣接頂点との間のエッジを細分割し、前記定義された頂点と前記の新たに追加された頂点と前記中心頂点とを接続する1つの三角形を描画し、
前記選択された頂点の頂点テッセレーション係数が前記閾値を超えず、次の隣接頂点の頂点テッセレーション係数が前記閾値を超えず、前の隣接頂点の頂点テッセレーション係数が前記閾値を超えると決定することに応答して、新しい頂点を追加して前記選択された頂点と前記前の隣接頂点との間のエッジを細分割し、前記定義された頂点と前記の新たに追加された頂点と前記中心頂点と前記次の隣接頂点とにより定義されるサブ四角形を、前記定義された頂点を前記サブ四角形における対角線的に対向の頂点に接続することによって2つの三角形に分割する
ように構成されたハードウェアロジックを含むハードウェアテッセレーションユニット。 - 各々の選択された頂点について、
前記選択された頂点の頂点テッセレーション係数が前記閾値を超えず、双方の隣接頂点の頂点テッセレーション係数が前記閾値を超えると決定することに応答して、2つの新しい頂点を追加して前記選択された頂点と隣接頂点との間の各エッジを細分割し、前記の定義された頂点と前記の新たに追加された頂点と前記中心頂点とにより定義されるサブ四角形を、前記定義された頂点を前記サブ四角形における対角線的に対向の頂点に接続することによって2つの三角形に分割する
ように構成されたハードウェアロジックをさらに含む請求項9に記載のハードウェアテッセレーションユニット。 - 前記パッチに対する中心頂点を生成し、前記の新たに追加された頂点についての頂点テッセレーション係数及びブレンド係数を算出するように構成された前記ハードウェアロジックは、
前記三角形パッチの3つの頂点の平均値により与えられるドメイン空間における位置を有する中心頂点を生成し、
最初の頂点テッセレーション係数を、
前記新たに追加された中心頂点についての頂点テッセレーション係数TFcentre及びブレンド係数BWcentreを、
InitialTFcentreが2より小さいかを決定し、
InitialTFcentreが2.0より小さいと決定すること応答して、TFcentre=1及びBWcentre=BlendWeightFunc(TF0,TF1,TF2)を設定することであって、
BlendWeightFunc(TF0,…TF2).=MAXi=0..2(MIN(TFi-1,1))
であり、
InitialTFcentreが2.0より小さくないと決定すること応答して、TFcentre=InitialTFcentre/2及びBWcentre=1.0を設定する
ことによって算出する
ように構成されたハードウェアロジックを含む、請求項9又は10に記載のハードウェアテッセレーションユニット。 - 前記選択された頂点に基づいて頂点を定義するように構成された前記ハードウェアロジックは、
前記の定義された頂点のドメイン空間座標を前記選択された頂点のドメイン空間座標に等しく設定し、
前記選択された頂点の頂点テッセレーション係数が1.0に等しいかと、前記選択された頂点の頂点テッセレーション係数が2.0より小さいかとを決定し、
前記選択された頂点の頂点テッセレーション係数が1.0に等しいと決定することに応答して、前記定義された頂点の頂点テッセレーション係数を1.0に等しく設定し、前記定義された頂点のブレンド係数を前記選択された頂点のブレンド係数に等しく設定し、
前記選択された頂点の頂点テッセレーション係数が1.0に等しくなく、2.0より小さいと決定することに応答して、前記定義された頂点の頂点テッセレーション係数を1.0に等しく設定し、前記定義された頂点のブレンド係数を前記選択された頂点の頂点テッセレーション係数より1少ない値に等しく設定し、
前記選択された頂点の頂点テッセレーション係数が2.0より小さくないと決定することに応答して、前記定義された頂点の頂点テッセレーション係数を前記選択された頂点の頂点テッセレーション係数の半分に等しく設定し、前記定義された頂点のブレンド係数を1に等しく設定する
ように構成されたハードウェアロジックを含む、請求項9乃至11のうちいずれか1項に記載のハードウェアテッセレーションユニット。 - 新しい頂点を追加して前記選択された頂点と隣接頂点との間のエッジを細分割し、前記新しい頂点の頂点テッセレーション係数及びブレンド係数を算出するように構成された前記ハードウェアロジックは、頂点VAとVBとの間のエッジを細分割する各々の新しい頂点VMについて、
VMについての最初の頂点テッセレーション係数を、
前記の新たに追加された頂点VMについての頂点テッセレーション係数TFM及びブレンド係数BWMを、
InitialTFMが2より小さいかを決定し、
InitialTFMが2.0より小さいと決定することに応答して、TFM=1及びBWM=MAX(MIN(TFA-1,1),MIN(TFB-1,1))を設定し、
InitialTFMが2.0より小さくないと決定することに応答して、TFM=InitialTFM/2及びBWM=1.0を設定し、
ドメイン空間におけるVMの位置を、VA及びVBのドメイン空間座標の平均であるように、及び、(i)N次元空間におけるVA及びVBの位置の平均と、(ii)N次元空間にマップされる、ドメイン空間におけるVMの位置との、BWMを用いて重み付けされたブレンドにより与えられる位置を有するN次元空間における位置に、設定する
ことによって算出する
ように構成されたハードウェアロジックを含む、請求項9乃至12のうちいずれか1項に記載のハードウェアテッセレーションユニット。 - パッチ又はサブ四角形内における再利用のための頂点データを記憶するように配置されたメモリ素子、をさらに含み、前記パッチ又はサブ四角形の2つ以上の細分割された部分の一部であるエッジを細分割するように追加される頂点が、パッチ又はサブ四角形ごとに1回だけ決定される、請求項9乃至13のうちいずれか1項に記載のハードウェアテッセレーションユニット。
- 実行されたときに少なくとも1つのプロセッサに請求項1乃至8のうちいずれか1項に記載の方法を実行させるコンピュータ実行可能プログラムコードを記憶したコンピュータ読取可能記憶媒体。
Applications Claiming Priority (3)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
GB1509764.5A GB2533444B (en) | 2015-06-05 | 2015-06-05 | Tessellation method |
GB1509764.5 | 2015-06-05 | ||
JP2016111778A JP6752629B2 (ja) | 2015-06-05 | 2016-06-03 | テッセレーション方法 |
Related Parent Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP2016111778A Division JP6752629B2 (ja) | 2015-06-05 | 2016-06-03 | テッセレーション方法 |
Publications (2)
Publication Number | Publication Date |
---|---|
JP2020191134A JP2020191134A (ja) | 2020-11-26 |
JP6961054B2 true JP6961054B2 (ja) | 2021-11-05 |
Family
ID=53784997
Family Applications (2)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP2016111778A Active JP6752629B2 (ja) | 2015-06-05 | 2016-06-03 | テッセレーション方法 |
JP2020138467A Active JP6961054B2 (ja) | 2015-06-05 | 2020-08-19 | テッセレーション方法 |
Family Applications Before (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP2016111778A Active JP6752629B2 (ja) | 2015-06-05 | 2016-06-03 | テッセレーション方法 |
Country Status (5)
Country | Link |
---|---|
US (7) | US9892554B2 (ja) |
EP (2) | EP3703015A3 (ja) |
JP (2) | JP6752629B2 (ja) |
CN (2) | CN106251391B9 (ja) |
GB (2) | GB2533444B (ja) |
Families Citing this family (14)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
KR101555426B1 (ko) * | 2014-02-07 | 2015-09-25 | 고려대학교 산학협력단 | 지형 렌더링 방법 및 장치 |
US20170358132A1 (en) * | 2016-06-12 | 2017-12-14 | Apple Inc. | System And Method For Tessellation In An Improved Graphics Pipeline |
US10242496B2 (en) * | 2017-04-24 | 2019-03-26 | Intel Corporation | Adaptive sub-patches system, apparatus and method |
USD868807S1 (en) * | 2017-09-19 | 2019-12-03 | Covestro Llc | Display screen portion with a graphical user interface |
US10621782B1 (en) * | 2017-12-06 | 2020-04-14 | Apple Inc. | Sub-patch techniques for graphics tessellation |
US10580209B2 (en) * | 2018-03-06 | 2020-03-03 | Qualcomm Incorporated | Removal of degenerated sub-primitives in tessellation |
GB2572617B (en) * | 2018-04-05 | 2021-06-16 | Imagination Tech Ltd | Blending hardware |
GB2572625B (en) | 2018-04-05 | 2020-06-17 | Imagination Tech Ltd | Ordering in tessellation operations |
GB2572620C (en) | 2018-04-05 | 2021-10-20 | Imagination Tech Ltd | Accessing Primitive Data |
GB2572619B (en) | 2018-04-05 | 2020-06-17 | Imagination Tech Ltd | Hardware Tessellation Units |
US11010862B1 (en) * | 2019-11-14 | 2021-05-18 | Advanced Micro Devices, Inc. | Reduced bandwidth tessellation factors |
CN111414661B (zh) * | 2020-03-31 | 2023-04-28 | 北京市建筑设计研究院有限公司 | 利用直线型材组成带状曲面建筑表皮的设计方法 |
US20220119744A1 (en) * | 2020-10-16 | 2022-04-21 | The Procter & Gamble Company | Method of manufacturing water-soluble unit dose articles comprising water-soluble fibrous structures |
USD985614S1 (en) * | 2021-01-21 | 2023-05-09 | Jake Paul Arsenault | Computer monitor or portion thereof with computer generated building icon |
Family Cites Families (36)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US6229570B1 (en) * | 1998-09-25 | 2001-05-08 | Lucent Technologies Inc. | Motion compensation image interpolation—frame rate conversion for HDTV |
US6476813B1 (en) * | 1999-11-30 | 2002-11-05 | Silicon Graphics, Inc. | Method and apparatus for preparing a perspective view of an approximately spherical surface portion |
US20020060685A1 (en) * | 2000-04-28 | 2002-05-23 | Malcolm Handley | Method, system, and computer program product for managing terrain rendering information |
GB2378337B (en) * | 2001-06-11 | 2005-04-13 | Canon Kk | 3D Computer modelling apparatus |
GB2415118B (en) | 2002-05-10 | 2006-04-05 | Imagination Tech Ltd | An interface and method of interfacing between a parametic modelling unit and a polygon based rendering system |
US6940505B1 (en) * | 2002-05-20 | 2005-09-06 | Matrox Electronic Systems Ltd. | Dynamic tessellation of a base mesh |
US20050131660A1 (en) * | 2002-09-06 | 2005-06-16 | Joseph Yadegar | Method for content driven image compression |
US8482559B2 (en) * | 2002-11-04 | 2013-07-09 | Ati Technologies Ulc | Method and apparatus for triangle tessellation |
DE10254606B4 (de) | 2002-11-22 | 2006-06-29 | Siemens Ag | Verfahren und Vorrichtung zur schnellen Verarbeitung von Messdaten mit einer Vielzahl unabhängiger Stichproben |
US7194125B2 (en) * | 2002-12-13 | 2007-03-20 | Mitsubishi Electric Research Laboratories, Inc. | System and method for interactively rendering objects with surface light fields and view-dependent opacity |
US6879328B2 (en) * | 2003-03-03 | 2005-04-12 | Sun Microsystems, Inc. | Support of multi-layer transparency |
US20040207622A1 (en) * | 2003-03-31 | 2004-10-21 | Deering Michael F. | Efficient implementation of shading language programs using controlled partial evaluation |
US7148890B2 (en) * | 2003-04-02 | 2006-12-12 | Sun Microsystems, Inc. | Displacement mapping by using two passes through the same rasterizer |
US8471852B1 (en) | 2003-05-30 | 2013-06-25 | Nvidia Corporation | Method and system for tessellation of subdivision surfaces |
US20070247458A1 (en) * | 2006-04-11 | 2007-10-25 | Samsung Electronics Co., Ltd. | Adaptive computation of subdivision surfaces |
US7928979B2 (en) | 2008-02-01 | 2011-04-19 | Microsoft Corporation | Efficient geometric tessellation and displacement |
JP5078712B2 (ja) * | 2008-04-01 | 2012-11-21 | 任天堂株式会社 | 画像処理プログラム、画像処理装置、画像処理システム及び画像処理方法 |
US8169437B1 (en) * | 2008-07-09 | 2012-05-01 | Nvidia Corporation | Distributed tessellation topology generator |
US8482560B2 (en) | 2008-12-31 | 2013-07-09 | Intel Corporation | Image forming techniques |
US20100214294A1 (en) * | 2009-02-20 | 2010-08-26 | Microsoft Corporation | Method for tessellation on graphics hardware |
US20100253683A1 (en) * | 2009-04-01 | 2010-10-07 | Munkberg Carl J | Non-uniform tessellation technique |
US8537158B2 (en) * | 2009-12-02 | 2013-09-17 | Microsoft Corporation | Parallel triangle tessellation |
US8144147B2 (en) * | 2010-04-07 | 2012-03-27 | Intel Corporation | Hierarchical bounding of displaced parametric surfaces |
US20110310102A1 (en) * | 2010-06-17 | 2011-12-22 | Via Technologies, Inc. | Systems and methods for subdividing and storing vertex data |
US8665266B2 (en) * | 2010-06-23 | 2014-03-04 | The United States Of America, As Represented By The Secretary Of The Navy | Global visualization process terrain database builder |
US8547598B2 (en) * | 2011-04-28 | 2013-10-01 | Xerox Corporation | Polygonal-boundary-based halftone method |
US8791945B2 (en) * | 2011-05-18 | 2014-07-29 | Intel Corporation | Rendering tessellated geometry with motion and defocus blur |
US9595074B2 (en) * | 2011-09-16 | 2017-03-14 | Imagination Technologies Limited | Multistage collector for outputs in multiprocessor systems |
US8854374B2 (en) * | 2011-12-23 | 2014-10-07 | Advanced Micro Devices, Inc. | Tessellation patterns |
US9076260B2 (en) * | 2012-08-30 | 2015-07-07 | Qualcomm Incorporated | Stitching for primitives in graphics processing |
US9305397B2 (en) * | 2012-10-24 | 2016-04-05 | Qualcomm Incorporated | Vertex order in a tessellation unit |
US9123168B2 (en) * | 2013-01-30 | 2015-09-01 | Qualcomm Incorporated | Output ordering of domain coordinates for tessellation |
KR102104057B1 (ko) * | 2013-07-09 | 2020-04-23 | 삼성전자 주식회사 | 점별로 테셀레이션 팩터를 할당하는 방법과 상기 방법을 수행할 수 있는 장치들 |
CN103810756B (zh) * | 2014-01-17 | 2016-08-17 | 浙江大学 | 基于不规则区域的自适性的Loop细分曲面的绘制方法 |
KR20160030426A (ko) * | 2014-09-10 | 2016-03-18 | 삼성전자주식회사 | 서브디바이더를 포함하는 그래픽스 프로세싱 유닛과 이를 포함하는 장치 |
KR102327144B1 (ko) * | 2014-11-26 | 2021-11-16 | 삼성전자주식회사 | 그래픽 프로세싱 장치 및 그래픽 프로세싱 장치에서 타일 기반 그래픽스 파이프라인을 수행하는 방법 |
-
2015
- 2015-06-05 GB GB1509764.5A patent/GB2533444B/en active Active
- 2015-06-05 GB GB1710603.0A patent/GB2552260B/en active Active
-
2016
- 2016-01-18 US US14/997,718 patent/US9892554B2/en active Active
- 2016-05-27 EP EP20171153.8A patent/EP3703015A3/en active Pending
- 2016-05-27 EP EP16171755.8A patent/EP3101628B1/en active Active
- 2016-06-03 CN CN201610391081.1A patent/CN106251391B9/zh active Active
- 2016-06-03 JP JP2016111778A patent/JP6752629B2/ja active Active
- 2016-06-03 CN CN202110540278.8A patent/CN113256774A/zh active Pending
-
2018
- 2018-01-09 US US15/865,959 patent/US10140762B2/en active Active
- 2018-11-26 US US16/200,081 patent/US10360725B2/en active Active
-
2019
- 2019-06-07 US US16/434,828 patent/US10740967B2/en active Active
-
2020
- 2020-06-04 US US16/893,132 patent/US11263811B2/en active Active
- 2020-08-19 JP JP2020138467A patent/JP6961054B2/ja active Active
-
2022
- 2022-02-02 US US17/591,486 patent/US11676335B2/en active Active
-
2023
- 2023-06-13 US US18/208,964 patent/US20230343032A1/en active Pending
Also Published As
Publication number | Publication date |
---|---|
US20200302690A1 (en) | 2020-09-24 |
EP3703015A2 (en) | 2020-09-02 |
US10740967B2 (en) | 2020-08-11 |
US20190311537A1 (en) | 2019-10-10 |
GB2552260B (en) | 2019-04-10 |
EP3703015A3 (en) | 2020-09-30 |
US11263811B2 (en) | 2022-03-01 |
GB2533444B (en) | 2017-08-16 |
JP2020191134A (ja) | 2020-11-26 |
GB201710603D0 (en) | 2017-08-16 |
EP3101628A1 (en) | 2016-12-07 |
CN106251391B9 (zh) | 2021-07-20 |
EP3101628B1 (en) | 2020-07-01 |
CN106251391B (zh) | 2021-05-14 |
GB201509764D0 (en) | 2015-07-22 |
US20230343032A1 (en) | 2023-10-26 |
CN113256774A (zh) | 2021-08-13 |
US11676335B2 (en) | 2023-06-13 |
CN106251391A (zh) | 2016-12-21 |
US20220157018A1 (en) | 2022-05-19 |
GB2552260A (en) | 2018-01-17 |
US20190096126A1 (en) | 2019-03-28 |
GB2533444A (en) | 2016-06-22 |
US10140762B2 (en) | 2018-11-27 |
US10360725B2 (en) | 2019-07-23 |
US9892554B2 (en) | 2018-02-13 |
US20160358373A1 (en) | 2016-12-08 |
JP2017004517A (ja) | 2017-01-05 |
US20180218536A1 (en) | 2018-08-02 |
JP6752629B2 (ja) | 2020-09-09 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
JP6961054B2 (ja) | テッセレーション方法 | |
US11830143B2 (en) | Tessellation method using recursive sub-division of triangles | |
US11900543B2 (en) | Tessellation method using displacement factors |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
A621 | Written request for application examination |
Free format text: JAPANESE INTERMEDIATE CODE: A621 Effective date: 20200819 |
|
A977 | Report on retrieval |
Free format text: JAPANESE INTERMEDIATE CODE: A971007 Effective date: 20210909 |
|
TRDD | Decision of grant or rejection written | ||
A01 | Written decision to grant a patent or to grant a registration (utility model) |
Free format text: JAPANESE INTERMEDIATE CODE: A01 Effective date: 20210914 |
|
A61 | First payment of annual fees (during grant procedure) |
Free format text: JAPANESE INTERMEDIATE CODE: A61 Effective date: 20211012 |
|
R150 | Certificate of patent or registration of utility model |
Ref document number: 6961054 Country of ref document: JP Free format text: JAPANESE INTERMEDIATE CODE: R150 |