효과 시스템 인터페이스(Direct3D 10)
효과 시스템은 효과 상태를 관리하기 위한 여러 인터페이스를 정의합니다. 인터페이스에는 두 가지 유형이 있습니다. 즉, 런타임에서 효과 및 리플렉션 인터페이스를 렌더링하여 효과 변수를 가져오고 설정하는 데 사용하는 인터페이스입니다.
런타임 인터페이스를 사용하여 효과를 렌더링합니다.
런타임 인터페이스 | 설명 |
---|---|
ID3D10Effect 인터페이스 | 렌더링을 위한 하나 이상의 기술 컬렉션입니다. |
ID3D10Include 인터페이스 | 포함 파일을 읽을 때 사용자 지정 동작을 추가하기 위한 인터페이스입니다. |
ID3D10EffectPass 인터페이스 | 상태 할당의 컬렉션입니다. |
ID3D10EffectPool 인터페이스 | 효과 간에 공유할 변수에 대한 메모리 위치를 만듭니다. |
ID3D10EffectTechnique 인터페이스 | 하나 이상의 패스 컬렉션입니다. |
리플렉션은 효과 시스템에서 읽기(및 쓰기) 효과 상태를 지원하기 위해 구현됩니다. 효과 변수에 액세스하는 방법에는 여러 가지가 있습니다.
이러한 인터페이스를 사용하여 상태 그룹을 가져와서 설정합니다.
리플렉션 인터페이스 | 설명 |
---|---|
ID3D10EffectBlendVariable 인터페이스 | 혼합 상태를 가져와 설정합니다. |
ID3D10EffectDepthStencilVariable 인터페이스 | 깊이 스텐실 상태를 가져와 설정합니다. |
ID3D10EffectRasterizerVariable 인터페이스 | 래스터라이저 상태를 가져와 설정합니다. |
ID3D10EffectSamplerVariable 인터페이스 | 샘플러 상태를 가져와 설정합니다. |
이러한 인터페이스를 사용하여 리소스를 가져와서 설정합니다.
리플렉션 인터페이스 | Description |
---|---|
ID3D10EffectConstantBuffer 인터페이스 | 텍스처 버퍼 또는 상수 버퍼의 데이터에 액세스합니다. |
ID3D10EffectDepthStencilViewVariable 인터페이스 | 심층 스텐실 리소스의 데이터에 액세스합니다. |
ID3D10EffectRenderTargetViewVariable 인터페이스 | 렌더링 대상의 데이터에 액세스합니다. |
ID3D10EffectShaderResourceVariable 인터페이스 | 셰이더 리소스의 데이터에 액세스합니다. |
이러한 인터페이스를 사용하여 변수 형식별로 상태를 가져와서 설정합니다.
리플렉션 인터페이스 | Description |
---|---|
ID3D10EffectMatrixVariable 인터페이스 | 행렬을 가져와서 설정합니다. |
ID3D10EffectScalarVariable 인터페이스 | 스칼라를 가져와서 설정합니다. |
ID3D10EffectShaderVariable 인터페이스 | 셰이더 변수를 가져와서 설정합니다. |
ID3D10EffectStringVariable 인터페이스 | 문자열을 가져와서 설정합니다. |
ID3D10EffectType 인터페이스 | 변수 형식을 가져옵니다. |
ID3D10EffectVectorVariable 인터페이스 | 벡터를 가져와서 설정합니다. |
모든 리플렉션 인터페이스는 ID3D10EffectVariable 인터페이스에서 파생됩니다.