次の方法で共有


glCopyTexImage1D 関数

glCopyTexImage1D 関数は、フレームバッファーから 1 次元テクスチャ イメージにピクセルをコピーします。

構文

void WINAPI glCopyTexImage1D(
   GLenum  target,
   GLint   level,
   GLenum  internalFormat,
   GLint   x,
   GLint   y,
   GLsizei width,
   GLint   border
);

パラメーター

target

イメージ データが変更されるターゲット。 値をGL_TEXTURE_1Dする必要があります。

level

詳細レベル番号。 レベル 0 は基本イメージです。 レベル nn番目のミップマップ縮小画像である。

internalFormat

テクスチャ データの内部形式と解像度。 このパラメーターは、次のいずれかのシンボリック値である必要があります。

定数 R ビット G ビット B ビット ビット L ビット I ビット
GL_ALPHA
GL_ALPHA4 4
GL_ALPHA8 8
GL_ALPHA12 12
GL_ALPHA16 16
GL_LUMINANCE
GL_LUMINANCE4 4
GL_LUMINANCE8 8
GL_LUMINANCE12 12
GL_LUMINANCE16 16
GL_LUMINANCE_ALPHA
GL_LUMINANCE4_ALPHA4 4 4
GL_LUMINANCE6_ALPHA2 2 6
GL_LUMINANCE8_ALPHA8 8 8
GL_LUMINANCE12_ALPHA4 4 12
GL_LUMINANCE12_ALPHA12 12 12
GL_LUMINANCE16_ALPHA16 16 16
GL_INTENSITY
GL_INTENSITY4 4
GL_INTENSITY8 8
GL_INTENSITY12 12
GL_INTENSITY16 16
GL_RGB
GL_R3_G3_B2 3 3 2
GL_RGB4 4 4 4
GL_RGB5 5 5 5
GL_RGB8 8 8 8
GL_RGB10 10 10 10
GL_RGB12 12 12 12
GL_RGB16 16 16 16
GL_RGBA
GL_RGBA2 2 2 2 2
GL_RGBA4 4 4 4 4
GL_RGB5_A1 5 5 5 1
GL_RGBA8 8 8 8 8
GL_RGB10_A2 10 10 10 2
GL_RGBA12 12 12 12 12
GL_RGBA16 16 16 16 16

x

コピーするピクセルの行の左下隅のウィンドウ x 平面座標。

y

コピーするピクセルの行の左下隅のウィンドウ y 平面座標。

width

テクスチャ イメージの幅。 整数 n の場合は、0 または 2n + 2(border) にする必要があります。 テクスチャ イメージの高さは 1 です。

国境

境界の幅。 0 または 1 である必要があります。

戻り値

この関数は値を返しません。

エラー コード

glGetError 関数では、次のエラー コードを取得できます。

名前 意味
GL_INVALID_ENUM
target が受け入れられた値ではありません。
GL_INVALID_VALUE
level が 0 より小さいか、log2 max より大きかった。 ここで、max はGL_MAX_TEXTURE_SIZEの戻り値です。
GL_INVALID_VALUE
border が 0 または 1 でなかった。
GL_INVALID_VALUE
width が 0 より小さいか、2 + GL_MAX_TEXTURE_SIZEより大きいか、整数 n の幅を 2n +(border) として表すことはできません。
GL_INVALID_OPERATION
この関数は、 glBegin の呼び出しと glEnd の対応する呼び出しの間で呼び出されました。

解説

glCopyTexImage1D 関数は、glTexImage1D の場合と同様に、メインメモリからではなく、現在のフレームバッファーのピクセルを使用して 1 次元テクスチャ イメージを定義します。

level で指定されたミップマップ レベルを使用すると、テクスチャ配列は、幅 + 2 * 線と等しい xy で指定された座標で、ウィンドウの左下隅に揃えたピクセル行として定義されます。 テクスチャ配列の内部形式は internalFormat パラメーターで指定されます。

glCopyTexImage1D 関数は、行内のピクセルを glCopyPixels と同じ方法で処理します。ただし、ピクセルの最終的な変換の前に、すべてのピクセル コンポーネント値が範囲 [0,1] にクランプされ、テクスチャ配列に格納されるテクスチャの内部形式に変換されます。 ピクセルの順序は、下位のテクスチャ座標に対応する下 の x 座標で決定されます。 現在のフレームバッファーの指定された行内のピクセルのいずれかが、現在のレンダリング コンテキストに関連付けられているウィンドウの外側にある場合、その値は未定義になります。

表示リストに glCopyTexImage1D の呼び出しを含めることはできません。

Note

glCopyTexImage1D 関数は、OpenGL バージョン 1.1 以降でのみ使用できます。

テクスチャリングは、カラー インデックス モードでは効果がありません。 glPixelStore 関数と glPixelTransfer 関数は、glDrawPixels に影響する正確な方法でテクスチャ イメージに影響します。

次の関数は、 glCopyTexImage1D に関連する情報を取得します。

glIsEnabled と引数 GL_TEXTURE_1D

必要条件

要件
サポートされている最小のクライアント
Windows 2000 Professional [デスクトップ アプリのみ]
サポートされている最小のサーバー
Windows 2000 Server [デスクトップ アプリのみ]
ヘッダー
Gl.h
ライブラリ
Opengl32.lib
[DLL]
Opengl32.dll

関連項目

glCopyPixels

glCopyTexImage2D

glDrawPixels

glFog

glPixelStore

glPixelTransfer

glTexEnv

glTexGen

glTexImage1D

glTexImage2D

glTexParameter