DirectX Graphics 레퍼런스 Direct3D C/C++ 레퍼런스 열거형 D3DTEXTURESTAGESTATETYPE [목차열람] [주소복사] [슬롯비우기] |
Microsoft DirectX 9.0 |
텍스처 스테이지 스테이트를 정의한다.
구문
typedef enum _D3DTEXTURESTAGESTATETYPE { D3DTSS_COLOROP = 1, D3DTSS_COLORARG1 = 2, D3DTSS_COLORARG2 = 3, D3DTSS_ALPHAOP = 4, D3DTSS_ALPHAARG1 = 5, D3DTSS_ALPHAARG2 = 6, D3DTSS_BUMPENVMAT00 = 7, D3DTSS_BUMPENVMAT01 = 8, D3DTSS_BUMPENVMAT10 = 9, D3DTSS_BUMPENVMAT11 = 10, D3DTSS_TEXCOORDINDEX = 11, D3DTSS_BUMPENVLSCALE = 22, D3DTSS_BUMPENVLOFFSET = 23, D3DTSS_TEXTURETRANSFORMFLAGS = 24, D3DTSS_COLORARG0 = 26, D3DTSS_ALPHAARG0 = 27, D3DTSS_RESULTARG = 28, D3DTSS_CONSTANT = 32, D3DTSS_FORCE_DWORD = 0x7fffffff } D3DTEXTURESTAGESTATETYPE;
정수
- D3DTSS_COLOROP
텍스처 스테이지 스테이트는 텍스처 컬러 혼합 처리이며,D3DTEXTUREOP 열거형의 멤버에 의해 식별된다. 최초의 텍스처 스테이지 (스테이지 0)의 디폴트값은 D3DTOP_MODULATE 이며, 그 이외의 모든 스테이지의 디폴트값은 D3DTOP_DISABLE 이다.
- D3DTSS_COLORARG1
텍스처 스테이지 스테이트는, 그 스테이지에 대한 최초의 색인수이며,D3DTA 의 어느 쪽인가에보다 나타난다. 디폴트의 인수는 D3DTA_TEXTURE 이다.
읽고 쓰기용의 임시 레지스터의 색을 선택하려면 , D3DTA_TEMP 를 지정한다. D3DTA_TEMP 는, D3DPMISCCAPS_TSSARGTEMP 장치 능력이 존재하는 경우에 지원 된다. 이 레지스터의 디폴트값은, (0.0, 0.0, 0.0, 0.0)이다.
- D3DTSS_COLORARG2
텍스처 스테이지 스테이트는, 그 스테이지에 대한 2 번째의 색인수이며,D3DTA 에 의해 식별된다. 디폴트의 인수는 D3DTA_CURRENT 이다. 읽고 쓰기용의 임시 레지스터의 색을 선택하려면 , D3DTA_TEMP 를 지정한다. D3DTA_TEMP 는, D3DPMISCCAPS_TSSARGTEMP 장치 능력이 존재하는 경우에 지원 된다. 이 레지스터의 디폴트값은, (0.0, 0.0, 0.0, 0.0)이다.
- D3DTSS_ALPHAOP
텍스처 스테이지 스테이트는, 텍스처 알파 혼합 처리이며,D3DTEXTUREOP 열거형의 멤버에 의해 식별된다. 최초의 텍스처 스테이지 (스테이지 0)의 디폴트값은 D3DTOP_SELECTARG1 이며, 그 이외의 모든 스테이지의 디폴트값은 D3DTOP_DISABLE 이다.
- D3DTSS_ALPHAARG1
텍스처 스테이지 스테이트는, 그 스테이지에 대한 최초의 알파 인수이며,D3DTA 에 의해 식별된다. 디폴트의 인수는 D3DTA_TEXTURE 이다. 그 스테이지에 텍스처가 설정되지 않은 경우는, D3DTA_DIFFUSE 가 디폴트의 인수가 된다. 읽고 쓰기용의 임시 레지스터의 색을 선택하려면 , D3DTA_TEMP 를 지정한다. D3DTA_TEMP 는, D3DPMISCCAPS_TSSARGTEMP 장치 능력이 존재하는 경우에 지원 된다. 이 레지스터의 디폴트값은, (0.0, 0.0, 0.0, 0.0)이다.
- D3DTSS_ALPHAARG2
텍스처 스테이지 스테이트는, 스테이지의 2 번째의 알파 인수이며,D3DTA 에 의해 식별된다. 디폴트의 인수는 D3DTA_CURRENT 이다. 읽고 쓰기용의 임시 레지스터의 색을 선택하려면 , D3DTA_TEMP 를 지정한다. D3DTA_TEMP 는, D3DPMISCCAPS_TSSARGTEMP 장치 능력이 존재하는 경우에 지원 된다. 이 레지스터의 디폴트값은, (0.0, 0.0, 0.0, 0.0)이다.
- D3DTSS_BUMPENVMAT00
텍스처 스테이지 스테이트는, 범프 맵핑 행렬의 [0][0] 계수에 대한 부동 소수점값이다. 디폴트값은 0.0 이다.
- D3DTSS_BUMPENVMAT01
텍스처 스테이지 스테이트는, 범프 맵핑 행렬의 [0][1] 계수에 대한 부동 소수점값이다. 디폴트값은 0.0 이다.
- D3DTSS_BUMPENVMAT10
텍스처 스테이지 스테이트는, 범프 맵핑 행렬의 [1][0] 계수에 대한 부동 소수점값이다. 디폴트값은 0.0 이다.
- D3DTSS_BUMPENVMAT11
텍스처 스테이지 스테이트는, 범프 맵핑 행렬의 [1][1] 계수에 대한 부동 소수점값이다. 디폴트값은 0.0 이다.
- D3DTSS_TEXCOORDINDEX
이 텍스처 스테이지에서 사용하기 위해서(때문에) 설정된 텍스처 좌표의 인덱스. 정점 1 개에 대해서 최대 8 세트까지의 텍스처 좌표를 설정할 수 있다. 정점이, 지정된 인덱스의 텍스처 좌표 세트를 포함하지 않은 경우는, u 및 v 좌표 (0,0)가 디폴트로 사용된다.
이 플래그는, 고정 기능 정점 처리에서만 사용한다. 예를 들어, 정점 셰이더에서는 사용하지 않는다. 정점 셰이더를 사용해 렌더링 할 때는, 각 스테이지의 텍스처 인덱스를 디폴트값으로 설정할 필요가 있다. 각 스테이지의 디폴트의 인덱스는, 스테이지 인덱스와 같다. 이 스테이트에는, 이 텍스처 스테이지에서 사용하는 각 정점에 대한 좌표 세트의 제로로부터 시작되는 인덱스를 설정한다.
또, 애플리케이션에서는, 설정하는 인덱스와의 논리화로서 몇개의 정수를 설정해, 텍스처 변환용의 입력 텍스처 좌표를 자동적으로 생성하도록(듯이) Microsoft® Direct3D® 에 요구할 수 있다. 모든 정수의 일람에 대해서는, 「D3DTSS_TCI 」를 참조할것.
제로에 해결되는 D3DTSS_TCI_PASSTHRU 를 제외해, 설정되는 인덱스와 이하의 플래그의 어느쪽이든을 사용하면 텍스처 랩핑 모드의 결정에 인덱스가 엄밀하게 사용된다. 이 플래그는 환경 맵핑을 실시하는 경우는 특히 유효하다.
- D3DTSS_BUMPENVLSCALE
범프 맵 휘도(Luminance)에 사용하는 부동 소수점수(실수)의 스케일값. 디폴트값은 0.0 이다.
- D3DTSS_BUMPENVLOFFSET
범프 맵 휘도(Luminance)에 사용하는 부동 소수점수(실수)의 오프셋(offset). 디폴트값은 0.0 이다.
- D3DTSS_TEXTURETRANSFORMFLAGS
D3DTEXTURETRANSFORMFLAGS 열거형의 멤버. 이 텍스처 스테이지의 텍스처 좌표의 변환을 제어한다. 디폴트값은, D3DTTFF_DISABLE 이다.
- D3DTSS_COLORARG0
3항연산 (적화와 선형 보간)의 3 번째의 색오퍼랜드의 설정. D3DTA 에 의해 식별된다. 이 설정은, D3DTEXOPCAPS_MULTIPLYADD 또는 D3DTEXOPCAPS_LERP 장치 능력이 존재하는 경우에 지원 된다. 디폴트의 인수는 D3DTA_CURRENT 이다. 읽고 쓰기용의 임시 레지스터의 색을 선택하려면 , D3DTA_TEMP 를 지정한다. D3DTA_TEMP 는, D3DPMISCCAPS_TSSARGTEMP 장치 능력이 존재하는 경우에 지원 된다. 이 레지스터의 디폴트값은, (0.0, 0.0, 0.0, 0.0)이다.
- D3DTSS_ALPHAARG0
3항연산 (적화와 선형 보간)의 알파 채널 실렉터 오퍼랜드의 설정. D3DTA 에 의해 식별된다. 이 설정은, D3DTEXOPCAPS_MULTIPLYADD 또는 D3DTEXOPCAPS_LERP 장치 능력이 존재하는 경우에 지원 된다. 디폴트의 인수는 D3DTA_CURRENT 이다. 읽고 쓰기용의 임시 레지스터의 색을 선택하려면 , D3DTA_TEMP 를 지정한다. D3DTA_TEMP 는, D3DPMISCCAPS_TSSARGTEMP 장치 능력이 존재하는 경우에 지원 된다. 디폴트의 인수는, (0.0, 0.0, 0.0, 0.0)이다.
- D3DTSS_RESULTARG
이 스테이지의 결과의 출력 레지스터를 선택하기 위한 설정. D3DTA 에 의해 식별된다. 이 값은, D3DTA_CURRENT (디폴트값) 또는 D3DTA_TEMP 로 설정할 수 있다. D3DTA_TEMP 는, 입력 인수로서 이후의 스테이지에 읽어들일 수가 있는 단일의 임시 레지스터이다. 포그(안개:fog) 블렌더 및 frame buffer에게 건네지는 최종적인 색은 D3DTA_CURRENT 로부터 얻어온다의 것으로, 마지막에 액티브한 텍스처 스테이지 스테이트는 현재에의 쓰기로 설정해야 한다. 이 설정은, D3DPMISCCAPS_TSSARGTEMP 장치 능력이 존재하는 경우에 지원 된다.
- D3DTSS_CONSTANT
스테이지마다 정수 컬러. 장치가 스테이지마다 정수 컬러를 지원 할지 어떨지를 확인하려면 ,D3DPMISCCAPS 의 D3DPMISCCAPS_PERSTAGECONSTANT 정수를 조사한다. D3DTSS_CONSTANT 는 D3DTA_CONSTANT 로 사용한다. 「D3DTA 」를 참조할것.
- D3DTSS_FORCE_DWORD
이 열거형을 강제적으로 32 비트 사이즈에 컴파일 한다. 이 값은 사용되지 않았다.
주의
이 열거형의 멤버는, 텍스처 스테이트값을 취득 및 설정하기 위해서 IDirect3DDevice9::GetTextureStageState 메서드 및 IDirect3DDevice9::SetTextureStageState 메서드로 사용한다.
D3DTSS_BUMPENVMAT00, D3DTSS_BUMPENVMAT01, D3DTSS_BUMPENVMAT10, 및 D3DTSS_BUMPENVMAT11 의 각 범프 맵핑 행렬 계수의 유효 범위는,-8. 0 이상 8.0 미만이다. 이 범위는, 수학적으로는 [-8. 0,8.0)과 표기한다.
열거형의 정보
헤더 d3d9types.h 최저한의 operating system Windows 98
참조
IDirect3DDevice9::GetTextureStageState ,IDirect3DDevice9::SetTextureStageState