효과 상태 그룹(Direct3D 10)

효과 상태는 식 형식의 이름-값 쌍입니다.

혼합 상태

효과 상태 그룹
ALPHATOCOVERAGEENABLE, BLENDENABLE, SRCBLEND, DESTBLEND, BLENDOP, SRCBLENDALPHA, DESTBLENDALPHA, BLENDOPALPHA, RENDERTARGETWRITEMASK D3D10_BLEND_DESC 멤버

깊이 및 스텐실 상태

효과 상태 그룹
DEPTHENABLE, DEPTHWRITEMASK, DEPTHFUNC, STENCILENABLE, STENCILREADMASK, STENCILWRITEMASK D3D10_DEPTH_STENCIL_DESC 멤버
FRONTFACESTENCILFAIL, FRONTFACESTENCILZFAIL, FRONTFACESTENCILPASS, FRONTFACESTENCILFUNC, BACKFACESTENCILFAIL, BACKFACESTENCILZFAIL, BACKFACESTENCILPASS, BACKFACESTENCILFUNC D3D10_DEPTH_STENCILOP_DESC 멤버

래스터라이저 상태

효과 상태 그룹
FILLMODE D3D10_FILL_MODE
CULLMODE D3D10_CULL_MODE
FRONTCOUNTERCLOCKWISE, DEPTHBIAS, DEPTHBIASCLAMP, SLOPESCALEDDEPTHBIAS, ZCLIPENABLE, SCISSORENABLE, MULTISAMPLEENABLE, ANTIALIASEDLINEENABLE D3D10_RASTERIZER_DESC 멤버

샘플러 상태

효과 상태 그룹
Filter, AddressU, AddressV, AddressW, MipLODBias, MaxAnisotropy, ComparisonFunc, BorderColor, MinLOD, MaxLOD D3D10_SAMPLER_DESC 멤버

예제 는 샘플러 형식(DirectX HLSL) 을 참조하세요.

효과 개체 상태

이 효과 개체 매핑 대상
RASTERIZERSTATE 래스터라이저 상태 개체입니다.
DEPTHSTENCILSTATE 깊이 및 스텐실 상태 개체입니다.
BLENDSTATE Blend State 상태 개체입니다.
꼭짓점 셰이더 컴파일된 꼭짓점 셰이더 개체입니다.
Pixelshader 컴파일된 픽셀 셰이더 개체입니다.
GEOMETRYSHADER 컴파일된 기하 도형 셰이더 개체입니다.
DS_STENCILREF AB_BLENDFACTOR AB_SAMPLEMASK D3D10_PASS_DESC 멤버입니다.

상태 개체 정의 및 사용

상태 개체는 FX 파일에서 다음 형식으로 선언됩니다. StateObjectType 은 위에 나열된 상태 중 하나이며 MemberName 은 기본값이 아닌 멤버의 이름입니다.

StateObjectType ObjectName {
 MemberName = value;
 ...
 MemberName = value;
};

예를 들어 AlphaToCoverageEnable 및 BlendEnable[0]이 FALSE로 설정된 혼합 상태 개체를 설정하려면 다음 코드가 사용됩니다.

BlendState NoBlend {
 AlphaToCoverageEnable = FALSE;
 BlendEnable[0] = FALSE;
};

상태 개체는 효과 기술 구문(Direct3D 10)에 설명된 SetStateGroup 함수 중 하나를 사용하여 기술 패스에 적용됩니다. 예를 들어 위에 설명된 BlendState 개체를 적용하려면 다음 코드가 사용됩니다.

SetBlendState( NoBlend, float4( 0.0f, 0.0f, 0.0f, 0.0f ), 0xFFFFFFFF );

상태 사용을 설명하는 자습서는 상태 관리를 참조하세요.