다음을 통해 공유


효과 시스템 인터페이스(Direct3D 10)

효과 시스템은 효과 상태를 관리하기 위한 여러 인터페이스를 정의합니다. 인터페이스에는 두 가지 유형이 있습니다. 즉, 런타임에서 효과 및 리플렉션 인터페이스를 렌더링하여 효과 변수를 가져오고 설정하는 데 사용하는 인터페이스입니다.

효과 런타임 인터페이스

런타임 인터페이스를 사용하여 효과를 렌더링합니다.

런타임 인터페이스 설명
ID3D10Effect 인터페이스 렌더링을 위한 하나 이상의 기술 컬렉션입니다.
ID3D10Include 인터페이스 포함 파일을 읽을 때 사용자 지정 동작을 추가하기 위한 인터페이스입니다.
ID3D10EffectPass 인터페이스 상태 할당의 컬렉션입니다.
ID3D10EffectPool 인터페이스 효과 간에 공유할 변수에 대한 메모리 위치를 만듭니다.
ID3D10EffectTechnique 인터페이스 하나 이상의 패스 컬렉션입니다.

 

효과 리플렉션 인터페이스

리플렉션은 효과 시스템에서 읽기(및 쓰기) 효과 상태를 지원하기 위해 구현됩니다. 효과 변수에 액세스하는 방법에는 여러 가지가 있습니다.

효과 상태 그룹 설정

이러한 인터페이스를 사용하여 상태 그룹을 가져와서 설정합니다.

리플렉션 인터페이스 설명
ID3D10EffectBlendVariable 인터페이스 혼합 상태를 가져와 설정합니다.
ID3D10EffectDepthStencilVariable 인터페이스 깊이 스텐실 상태를 가져와 설정합니다.
ID3D10EffectRasterizerVariable 인터페이스 래스터라이저 상태를 가져와 설정합니다.
ID3D10EffectSamplerVariable 인터페이스 샘플러 상태를 가져와 설정합니다.

 

효과 리소스 설정

이러한 인터페이스를 사용하여 리소스를 가져와서 설정합니다.

리플렉션 인터페이스 Description
ID3D10EffectConstantBuffer 인터페이스 텍스처 버퍼 또는 상수 버퍼의 데이터에 액세스합니다.
ID3D10EffectDepthStencilViewVariable 인터페이스 심층 스텐실 리소스의 데이터에 액세스합니다.
ID3D10EffectRenderTargetViewVariable 인터페이스 렌더링 대상의 데이터에 액세스합니다.
ID3D10EffectShaderResourceVariable 인터페이스 셰이더 리소스의 데이터에 액세스합니다.

 

기타 효과 변수 설정

이러한 인터페이스를 사용하여 변수 형식별로 상태를 가져와서 설정합니다.

리플렉션 인터페이스 Description
ID3D10EffectMatrixVariable 인터페이스 행렬을 가져와서 설정합니다.
ID3D10EffectScalarVariable 인터페이스 스칼라를 가져와서 설정합니다.
ID3D10EffectShaderVariable 인터페이스 셰이더 변수를 가져와서 설정합니다.
ID3D10EffectStringVariable 인터페이스 문자열을 가져와서 설정합니다.
ID3D10EffectType 인터페이스 변수 형식을 가져옵니다.
ID3D10EffectVectorVariable 인터페이스 벡터를 가져와서 설정합니다.

 

모든 리플렉션 인터페이스는 ID3D10EffectVariable 인터페이스에서 파생됩니다.

효과

Direct3D 10 프로그래밍 가이드