영어로 읽기

다음을 통해 공유


glTexGend 함수

텍스처 좌표 생성을 제어합니다.

구문

void WINAPI glTexGend(
   GLenum   coord,
   GLenum   pname,
   GLdouble param
);

매개 변수

coord

텍스처 좌표입니다. GL_S, GL_T, GL_R 또는 GL_Q 중 하나여야 합니다.

pname

텍스처 좌표 생성 함수의 기호 이름입니다.

param

GL_OBJECT_LINEAR, GL_EYE_LINEAR 또는 GL_SPHERE_MAP 중 하나인 값이 있는 단일 텍스처 생성 매개 변수입니다.

반환 값

이 함수는 값을 반환하지 않습니다.

오류 코드

glGetError 함수에서 다음 오류 코드를 검색할 수 있습니다.

Name 의미
GL_INVALID_ENUM
coord 또는 pname 이 허용되는 정의된 값이 아니거나 pname 이 GL_TEXTURE_GEN_MODE 매개 변수 가 허용되는 정의된 값이 아니었습니다.
GL_INVALID_ENUM
pname 은 GL_TEXTURE_GEN_MODE, 매개 변수 는 GL_SPHERE_MAP, coord 는 GL_R 또는 GL_Q
GL_INVALID_OPERATION
함수는 glBegin 호출과 glEnd에 대한 해당 호출 간에 호출되었습니다.

설명

glTexGen 함수는 텍스처 좌표 생성 함수를 선택하거나 함수 중 하나에 대한 계수를 제공합니다. coord 매개 변수의 이름은 (s,t,r,q) 텍스처 좌표 중 하나이며 GL_S, GL_T, GL_R 또는 GL_Q 기호 중 하나여야 합니다. pname 매개 변수는 GL_TEXTURE_GEN_MODE, GL_OBJECT_PLANE 또는 GL_EYE_PLANE 세 가지 기호 상수 중 하나여야 합니다. pname이 GL_TEXTURE_GEN_MODE 경우 param은 GL_OBJECT_LINEAR, GL_EYE_LINEAR 또는 GL_SPHERE_MAP 중 하나인 모드를 지정합니다. pname이 GL_OBJECT_PLANE 또는 GL_EYE_PLANE 경우 매개 변수에는 해당 텍스처 생성 함수에 대한 계수가 포함됩니다.

텍스처 생성 함수가 GL_OBJECT_LINEAR 경우 함수

텍스처 생성 함수가 GL_OBJECT_LINEAR 때 glTexGen 함수를 보여 주는 수식입니다.

가 사용됩니다. 여기서 g는 coord에서 명명된 좌표에 대해 계산되는 값입니다. p1, p2, p3 및 p4는 매개 변수에 제공된 네 가지 값입니다. 및 x?, y?, z?, w? 는 꼭짓점의 개체 좌표입니다. 이 함수를 사용하여 해수면을 참조 평면(p1, p2, p3 및 p4로 정의됨)으로 사용하여 지형을 질감 매핑할 수 있습니다. GL_OBJECT_LINEAR 좌표 생성 함수는 지형 꼭짓점의 고도를 해수면과의 거리로 계산합니다. 예를 들어, 고도는 텍스처 이미지를 인덱싱하여 산기슭에 흰색 눈을 매핑하고 녹색 잔디를 산기슭에 매핑하는 데 사용됩니다.

텍스처 생성 함수가 GL_EYE_LINEAR 경우 함수

텍스처 생성 함수가 GL_EYE_LINEAR 때 glTexGen 함수를 보여 주는 수식입니다.

가 사용되는 위치

꼭짓점의 눈 좌표를 보여 주는 수식입니다.

및 x?, y?, z?, w? 는 꼭짓점의 눈 좌표이고, p1, p2, p3 및 p4는 매개 변수에 제공된 값이고, M은 glTexGen을 호출할 때 modelview 행렬입니다. M이 잘못된 조건 또는 단수인 경우 결과 함수에서 생성된 텍스처 좌표가 부정확하거나 정의되지 않을 수 있습니다.

매개 변수의 값은 눈 좌표로 참조 평면을 정의합니다. 다각형 꼭짓점이 변환될 때 적용되는 modelview 행렬은 유효하지 않습니다. 이 함수는 움직이는 개체에 동적 윤곽선을 생성할 수 있는 텍스처 좌표 필드를 설정합니다.

pname이 GL_SPHERE_MAP coord가 GL_S 또는 GL_T 경우 s 및 t 텍스처 좌표는 다음과 같이 생성됩니다. 원점에서 다각형 꼭짓점(눈 좌표)으로 가리키는 단위 벡터가 되도록 합니다. 눈 좌표로 변환한 후 n이 현재 정상이 되도록 합니다. Let f = (fx ( ) fy ( ) fz)T는 리플렉션 벡터입니다.

리플렉션 벡터를 단위 벡터 및 현재 표준의 함수로 보여 주는 수식입니다.

마지막으로

m을 리플렉션 벡터의 함수로 표시하는 수식입니다.

그런 다음 i 및 t 텍스처 좌표에 할당된 값은 다음과 같습니다.

i 및 t 텍스처 좌표에 할당된 값을 보여 주는 수식입니다.

기호화된 텍스처 좌표 이름(GL_TEXTURE_GEN_S, GL_TEXTURE_GEN_T, GL_TEXTURE_GEN_R 또는 GL_TEXTURE_GEN_Q) 중 하나를 인수로 사용하여 glEnable 또는 glDisable 을 사용하여 텍스처 좌표 생성 함수를 사용하거나 사용하지 않도록 설정할 수 있습니다. 이 함수를 사용하도록 설정하면 지정된 텍스처 좌표가 해당 좌표와 연결된 생성 함수에 따라 계산됩니다. 함수를 사용하지 않도록 설정하면 후속 꼭짓점은 현재 텍스처 좌표 집합에서 지정된 텍스처 좌표를 사용합니다. 처음에는 모든 텍스처 생성 함수가 GL_EYE_LINEAR 설정되고 사용하지 않도록 설정됩니다. 두 평면 수식은 모두 (1,0,0,0); 두 t 평면 수식은 모두 (0,1,0,0); 모든 r 및 q 평면 수식은 (0,0,0,0)입니다.

다음 함수는 glTexGen과 관련된 정보를 검색합니다.

glGetTexGen
인수 GL_TEXTURE_GEN_S glIsEnabled
인수 GL_TEXTURE_GEN_T glIsEnabled
인수 GL_TEXTURE_GEN_R glIsEnabled
인수 GL_TEXTURE_GEN_Q glIsEnabled

요구 사항

요구 사항
지원되는 최소 클라이언트
Windows 2000 Professional[데스크톱 앱만]
지원되는 최소 서버
Windows 2000 Server[데스크톱 앱만]
헤더
Gl.h
라이브러리
Opengl32.lib
DLL
Opengl32.dll

추가 정보

glBegin

glEnd

glCopyTexImage2D

glCopyTexSubImage2D

glGetTexGen

glIsEnabled

glTexEnv

glTexImage1D

glTexParameter

glTexSubImage1D

glTexSubImage2D