は、「他の言葉で」一般的な定義については、あなたは...ウェブ上のいくつかを見つけることができる:
あなたは限られた量のデータを持っているときは、補間を使用します
補間のためには、常に2ヒントが必要です(ヒントは "線です")。補間のためには常にヒントが必要です。 )は、それらがベクトルAとBであると言うことができます。今度は、実数 's'が両方向に無限の線を得るための解はT(s) = A + s*(B-A)
です。 AとBの間の線を得るには、T(0)=A
とT(1)=B
とこれが線形補間であるように、間隔[0、1]で 's'を定義する必要があります。私がここに書くことについての思い何その後、
注GLで使用されるアルゴリズムとあなたのGPUははるかに複雑であり、最適化されたことが、一般的に持っている:あなたは、OpenGLに少しを見ることができますもう少し複雑な補間については
同じ結果。
シェイプの場合は、通常、3つのベクトル(頂点)で定義された三角形を使用し、それが三角形(三角形であると言う)を描画メソッドで使用します。それらのベクトルにいくつかの行列を適用すると、描画バッファ上に2次元投影が得られます(頂点シェーダで起こる可能性があります)。今度は、バッファ内のすべてのポイントに色、テクスチャ、または色の補間を行う必要があります。まず、描画された点(バッファ上の実際の位置)は線形補間機構の結果です(GLではその点を制御することはできません)。二番目にどの色が塗りつぶされるかは、通常は線形補間です。
カラーポインタを設定することで、異なる色の頂点を持つ三角形を描きます。位置の補間に応じて色を線形補間した結果、表面全体に素敵な滑らかな色の幽霊が得られます(描画する必要があるピクセルごとにフラグメントシェーダの位置補間結果が得られます)。手動でこのように、この色補間結果を達成できる:
入力:
Vector a, b, c; //original triangle positions
Vector interpolationABC; //current fragment interpolation between a, b and c
Color colorA, colorB, colorC; //colors for vectors a, b and c
出力(この断片の色):
Color output = (
(a - interpolationABC).length() * colorA +
(b - interpolationABC).length() * colorB +
(c - interpolationABC).length() * colorC)
/(
(a - interpolationABC).length() +
(b - interpolationABC).length() +
(c - interpolationABC).length());
この機構は、再び線形補間(非常に低速を表します実際には1つしかありませんが、それはすごく便利です)
非線形補間の例として、少し想像力が必要です:球を描いていると言いましょう。それを維持する目的のために、中心が(0,0,0)であり、その半径が1であるとしよう。球はN個の三角形で作成され、Nが十分に大きくない(ほとんどの場合)。ビット "ぎこちない"と私たちは少し滑らかにしたいと思います。だから私たちはいくつかのライトをオンにしなければなりません(それはとにかくライトを持たない単なるサークルです)、法線を設定する方法を理解してください。一方では、3点で定義されたサーフェスの法線を計算することができ、各三角形は固有の法線を持ちますが、「ディスコボール」エフェクトが生成されますが、球の任意の点「P」の法線はnormalized(P-center)
またはこの場合はポイント自体。したがって、各頂点の法線は頂点の位置そのものです(それぞれの三角形は3つの異なる法線を持ちます)。各フラグメントの法線はそれらの法線の補間です。
色と同じ補間メカニズムを使用すると、法線の「不変」は「不変」ではなく、違うメカニズム(非線形)を使用するようになります。この特定のケースでは、単純に線形フラグメント結果を正規化して必要な結果を得ることができますが、この特定のケースでは、フラグメント位置から法線を計算することもできます(数学的に表現可能な任意の形状に対して行うことができます)。しかし、実際には、滑らかな部分とエッジを持ち、いくつかの素晴らしい効果を表す異なるサイズの法線を持つかもしれない奇妙な形状を得ることになるので、形状に異なるパラメータを補間するための大きなメカニズムがあります。
また、補間機構は、限られた数のデータ(これらのメカニズムの1つを「線形補間」と呼ぶ)を知ることによって無限の数の結果を生成できるメカニズムです。換言すれば、あなたは、もう少し具体的な例に転記とおり
から各フラグメントに対する変化値を生成するために使用される機構のプリミティブの各頂点に割り当てられた変化値は 補間と呼ばれています。
一般的な補間は基本的な操作であり、実際にはあなたが説明を求めているのであれば、まずは一般的な数学的知識を深めてから、3Dコンピュータグラフィックスのような複雑なものを掘り下げて調べる必要があります。 –