Shader Resource 관리

    [Shader / HLSL] Shader Reflection & Define Macro를 이용한 Resource 관리 (3)

    Shader Resource 등록 방식 및 사용 - 이어서 실질적으로 Resource가 등록되고 사용하는 방식에 대해 정리해보려 한다. 이전에 설명해둔 방식을 토대로 HashCode를 Key값으로 두고 구현을 하였다. /// ConstantBuffer Reflection // Shader ConstantBuffer.. for (unsigned int cbindex = 0; cbindex GetConstantBufferByIndex(cbindex); D3D11_SHADER_BUFFER_DESC bufferDesc; if (S..

    [Shader / HLSL] Shader Reflection & Define Macro를 이용한 Resource 관리 (1)

    [Shader / HLSL] Shader Reflection & Define Macro를 이용한 Resource 관리 (1)

    Shader Resource 관리 방식 현재 사용하고 있는 Shader Reflection을 이용하여 Constant Buffer와 1:1 대응하는 Struct의 Hash_Code를 이용하여 List를 생성한다. Shader Resource Update 동작 과정 - Shader에 선언되어 있는 Constant Buffer와 같은 이름을 갖는 Struct 생성. - Define Marcro를 이용하여 해당 Class의 Hash_Code를 Hash List에 등록. - Shader Load 후 Shader Reflection을 통해 해당 Constant Buffer의 이름을 Hash Table에서 검색 후 Buffer List의 Key 값으로 사용 - 해당 Constant Buffer Update시 1:1..