GLCOPYTEXIMAGE1D
Section: Misc. Reference Manual Pages (3G)
索引
xjman
名前
glCopyTexImage1D
- ピクセルを 1 次元のテクスチャイメージにコピーする
書式
void glCopyTexImage1D(
GLenum target,
GLint level,
GLenum internalformat,
GLint x,
GLint y,
GLsizei width,
GLint border )
delim $$
引き数
- target
-
対象となるテクスチャを指定する。
GL_TEXTURE_1D でなければならない。
- level
-
詳細度(LOD)の数を指定する。
レベル 0 が 0 基本イメージレベルである。
レベル n は、n 番目のミップマップ削減イメージである。
-
-
テクスチャの内部フォーマットを指定する。
次のシンボル定数のいずれかでなければならない:
GL_ALPHA,
GL_ALPHA4,
GL_ALPHA8,
GL_ALPHA12,
GL_ALPHA16,
GL_LUMINANCE,
GL_LUMINANCE4,
GL_LUMINANCE8,
GL_LUMINANCE12,
GL_LUMINANCE16,
GL_LUMINANCE_ALPHA,
GL_LUMINANCE4_ALPHA4,
GL_LUMINANCE6_ALPHA2,
GL_LUMINANCE8_ALPHA8,
GL_LUMINANCE12_ALPHA4,
GL_LUMINANCE12_ALPHA12,
GL_LUMINANCE16_ALPHA16,
GL_INTENSITY,
GL_INTENSITY4,
GL_INTENSITY8,
GL_INTENSITY12,
GL_INTENSITY16,
GL_RGB,
GL_R3_G3_B2,
GL_RGB4,
GL_RGB5,
GL_RGB8,
GL_RGB10,
GL_RGB12,
GL_RGB16,
GL_RGBA,
GL_RGBA2,
GL_RGBA4,
GL_RGB5_A1,
GL_RGBA8,
GL_RGB10_A2,
GL_RGBA12,
GL_RGBA16。
- x, y
-
コピーされるピクセル行の左端のウィンドウ座標を指定する。
- width
-
テクスチャイメージの幅を指定する。
0 または $2 sup n ~+~ 2*$ border ($n$ は整数)で
なければならない。
テクスチャイメージの高さは 1 である。
- border
-
境界の幅を指定する。
0 または 1 でなければならない。
説明
glCopyTexImage1D は、現在の GL_READ_BUFFER から
取り出したピクセルを使って 1 次元のテクスチャイメージを定義する。
スクリーン並びのピクセル(
行の左端が $("x", "y")$ であり、
行の幅が $"width"~+~2~*~"border"$ である)はテクスチャの配列を
定義する。このテクスチャ配列は、level で指定された
ミップマップレベルを持つ。
internalformat はテクスチャ配列の内部フォーマットを指定する。
行に含まれるピクセルは glCopyPixels が呼ばれた場合と
まったく同じように処理されるが、処理は最後の変換の直前で終わる。
この時点ではピクセルの全ての要素値は [0, 1] の範囲に収まるように
調整されている。
次に要素値は、テクセル配列に格納するための
テクスチャの内部フォーマットに変換される。
ピクセルの並び順は、スクリーン座標 $x$ が小さい方が
テクスチャ座標も小さくなる順である。
現在の GL_READ_BUFFER において、
指定された行に含まれるピクセルが
現在のレンダリングコンテクストに関連づけされたウィンドウの外にある
場合、そのピクセルについて得られる値は未定義である。
注意
glCopyTexImage1D は GL の 1.1 以降でしか利用できない。
テクスチャ処理は色インデックスモードでは効果がない。
internalformat の値にとして 0, 1, 2, 3, 4 を
指定することはできない。
幅が 0 のイメージは NULL テクスチャを示す。
GL_ARB_imaging 機能拡張に対応していれば、
フレームバッファからコピーされた RGBA 要素は
イメージ処理パイプラインによって処理される場合がある。
詳しい説明については glTexImage1D を参照すること。
エラー
GL_INVALID_ENUM:
target が指定可能な値のいずれでもない場合に起こる。
GL_INVALID_VALUE:
level が 0 より小さい場合に起こる。
GL_INVALID_VALUE:
level が $log sub 2 max$ より大きい場合に起こることがある。
ここで $max$ は GL_MAX_TEXTURE_SIZE が返す値である。
GL_INVALID_VALUE:
internalformat が指定可能な値でない場合に起こる。
GL_INVALID_VALUE:
width が 0 より小さいか、
2 + GL_MAX_TEXTURE_SIZE より大きいか、
$2 sup n ~+~ 2~*~("border")$ として表現できない場合に起こる。
ここで n は整数値である。
GL_INVALID_VALUE:
border が 0 と 1 のいずれでもない場合に起こる。
GL_INVALID_OPERATION:
glBegin と、その対になる glEnd の間で
glCopyTexImage1D が実行された場合に起こる。
関連する取得値
glGetTexImage
引き数 GL_TEXTURE_1D を指定した glIsEnabled。
関連項目
glCopyPixels(3G),
glCopyTexImage2D(3G),
glCopyTexSubImage1D(3G),
glCopyTexSubImage2D(3G),
glPixelStore(3G),
glPixelTransfer(3G),
glTexEnv(3G),
glTexGen(3G),
glTexImage1D(3G),
glTexImage2D(3G),
glTexSubImage1D(3G),
glTexSubImage2D(3G),
glTexParameter(3G)
Index
- 名前
-
- 書式
-
- 引き数
-
- 説明
-
- 注意
-
- エラー
-
- 関連する取得値
-
- 関連項目
-
Time: 07:01:06 GMT, January 12, 2009