DXShaderSetLayout

정점 셰이더의 정점 레이아웃을 설정.

bool  DXShaderSetLayout(
   int                    shader,       // 셰이더 핸들
   const DXVertexLayout&  layout[]      // 
   );

매개변수

셰이더

[in] DXShaderCreate()에서 생성된 정점 셰이더의 핸들.

layout[]

[in]  정점 필드 설명의 배열. 설명은 DXVertexLayout 구조로 설정됩니다:

struct DXVertexLayout
  {
   string         semantic_name;       // 셰이더 입력 서명에서 이 요소와 관련된 HLSL 의미.
   uint           semantic_index;      // 요소의 의미 인덱스. 의미 인덱스는 정수 인덱스 숫자로 의미 체계를 수정합니다. 의미 인덱스는 동일한 의미를 가진 두 개 이상의 요소가 있는 경우에만 필요합니다
   ENUM_DX_FORMAT format;              // 요소 데이터의 데이터 유형.
  };

값 반환

실행에 성공하면 true를, 그렇지 않으면 false를 반환합니다. 오류 코드를 수신하려면 GetLastError() 함수를 호출해야 합니다.

주의

레이아웃은 지정된 정점 버퍼의 정점 유형과 일치해야 합니다. 또한 정점 셰이더 코드의 진입 포인트에서 사용되는 정점의 입력 유형과 일치해야 합니다.

셰이더의 정점 버퍼는 DXBufferSet()에 설정되어 있습니다.

DXVertexLayout 구조는 D3D11_INPUT_ELEMENT_DESC MSDN 구조의 버전입니다.