관련 색인이 없습니다.
texkill (픽셀 셰이더)
 
Microsoft DirectX 9.0

texkill (픽셀 셰이더)


텍스처 좌표의 최초의 3 성분 (UVW)중 한쪽이 0 보다 작은 경우에, 현재의 픽셀의 렌더링을 취소한다.

구문

texkill  src

레지스터

src
입력 레지스터.

주의

픽셀 셰이더의 버전1_11_21_31_42_02_x2_sw3_03_sw
texkillxxx

texkill (픽셀 셰이더) 는 텍스처를 샘플링 하지 않는다. 입력 레지스터 번호로 지정된 텍스처 좌표의 최초의 3 성분을 처리한다. ps_1_4 의 경우,texkill (픽셀 셰이더) 는 입력 레지스터의 최초의 3 성분의 데이터를 처리한다.

이 명령을 사용해, 래스터라이저로 임의의 클립면을 처리 할 수 있다.

정점 셰이더를 사용하는 경우, 애플리케이션은 퍼스펙티브 변환을 적용할 필요가 있다. 부등형의 스케일링 계수가 포함되어 있는 경우, 클립면도 변환 할 필요가 있으므로, 임의의 클립면에서는 문제가 발생하는 일이 있다. 따라서, 임의 클립면에서 사용하려면 ,texkill (픽셀 셰이더) 연산자로 식별되는 텍스처 좌표 세트인 비투영 정점 위치를 제공하는 것이 최적이다.

이 명령은 다음과 같이 사용한다.

texkill tn

// The pixel masking is accomplished as follows:
if ( the x, y, z components of TextureCoordinates(stage n)UVWQ < 0 )
		
  cancel pixel render

픽셀 셰이더 1_1,1_2,1_3 의 경우,texkill (픽셀 셰이더) 는, 입력 레지스터 번호로 지정된 텍스처 좌표 세트를 처리한다. 다만, 버전 1_4 의 경우,texkill (픽셀 셰이더) 는, 입력으로서 지정된 텍스처 좌표 반복자 레지스터 (tn) 또는 임시 레지스터 (rn)에 저장 된 데이터를 처리한다.

멀티 샘플링이 유효한 경우, 멀티 샘플링에 의해 다각형의 엣지에 실현된 anti-aliasing 이펙트는,texkill 에 의해 생성된 엣지에는 실현되지 않게 된다. 픽셀 셰이더는, 픽셀 마다 1 회 실행한다.

이 예는 설명만을 목적으로 한 것이다.

이 예에서는, 텍스처 좌표가 부의 경우, 픽셀을 마스크 아웃 한다. 픽셀색은, 정점 데이터로 제공되는 정점색으로부터 보간 된다.

// The shader is shown below.
ps_1_1       // Version instruction
texkill t0   // Mask out pixel using texture coordinates from stage 0.
mov r0, v0   // Move the diffuse color in v0 to r0.

// The rendered output from the pixel shader is shown below.  
					

텍스처 좌표는, u 에서는 -0. 5 ~ 0.5 의 범위에서, v 에서는 0.0 ~ 1.0 의 범위이다. 이 명령에 의해, 부의 u 값은 마스크 아웃 된다. 최초의 화면은, 사각형에 적용된 정점색을 나타내고 있다. texkill (픽셀 셰이더) 명령은 적용되지 않았다. 2 번째의 화면은, texkill 명령의 결과를 나타내고 있다. 텍스처 좌표의 픽셀색이 0 미만 (x 가 -0. 5 ~ 0.0)의 경우, 그 픽셀색은 마스크 아웃 된다. 픽셀색이 마스크 된 장소에는, 백그라운드 컬러 (흰색)가 사용된다.

texkill 명령을 실행하지 않고 , 사각형에 적용된 정점색 texkill 명령이 적용된 출력

다음의 예에서는, 정점 데이터 선언에 텍스처 좌표 데이터가 선언되고 있다.

struct CUSTOMVERTEX
{
    FLOAT x, y, z;
    DWORD color;
    FLOAT tu1, tv1;
};

#define D3DFVF_CUSTOMVERTEX (D3DFVF_XYZ|D3DFVF_DIFFUSE|D3DFVF_TEX1|D3DTEXCOORD2(0))

static CUSTOMVERTEX g_Vertices[]=
{
    //  x      y     z    color         u1,    v1  
    { -1. 0f, -1. 0f, 0.0f, 0xffff0000, -0. 5f,  1.0f, },
    {  1.0f, -1. 0f, 0.0f, 0xff00ff00,  0.5f,  1.0f, },
    {  1.0f,  1.0f, 0.0f, 0xff0000ff,  0.5f,  0.0f, },
    { -1. 0f,  1.0f, 0.0f, 0xffffffff, -0. 5f,  0.0f, },

};
				

시스템 요건

최저한의 operating system Windows 98


© 2002 Microsoft Corporation. All rights reserved.
↑TOP