gluLoadSamplingMatrices(3) NURBS のサンプリング行列およびカリング行列をロードする

書式

void gluLoadSamplingMatrices( GLUnurbs* nurb,


const GLfloat *model,
const GLfloat *perspective,
const GLint *view )

delim $$

PARAMETERS

nurb
NURBS オブジェクト(gluNewNurbsRenderer を使って作る)を指定する。
model
モデルビュー行列を指定する(glGetFloatv 関数で得られる)。
perspective
射影行列を指定する(glGetFloatv 関数で得られる)。
view
ビューポートを指定する(glGetFloatv 関数で得られる)。

説明

gluLoadSamplingMatricesmodel, perspective, view を使い、nurb に格納されている サンプリング行列と カリング行列を再計算する。 サンプリング行列は、 サンプリングの許容誤差(GLU_SAMPLING_TOLERANCE 属性で決まる)を 満たすためにどれだけ高精度で NURBS 曲線・曲面をテセレーション処理する のかを決める。 カリング行列は、(GLU_CULLING 属性が有効の時に) レンダリング前に NURBS 曲線・曲面をカリング処理するかどうかを 決めるために使われる。

gluLoadSamplingMatrices が必要となるのは、 GLU_AUTO_LOAD_MATRIX 属性が無効の場合だけである (gluNurbsProperty を参照)。 GLU_AUTO_LOAD_MATRIX 属性を有効のままにしておくと便利ではある が、その反面、性能的には不利になる場合がある。 (モデルビュー行列、射影行列、ビューポートを取得するには、GL サーバとの やりとりが必要である。)