Define Macro

    [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..

    [C++] Define Macro

    Define Macro Function VS Macro - 단순 반복 작업일 경우 Macro는 치환 방식이므로 Macro를 통해 연산하는 방식이 빠르다. Macro 함수의 장점 - Macro 함수는 단순 치환만을 해주므로, 인수의 타입을 신경쓰지 않고 처리한다. - 여러 개의 명령문을 동시에 포함할 수 있다.- 함수 호출 비용이 줄어드므로 속도 향상에 도움이된다. Macro 함수의 단점 - 디버깅의 어려움.. 정말 까다롭긴하다.. - Macro 함수가 길어지면 길어질수록 괄호를 쓰게 되어 가독성이 매우 떨어지게된다. Macro 함수 사용시 주의점 - token 단위의 연산에서 사용되는 연산자로는 #과 ##이 있다. -> # : Macro를 통해 들어온 token을 문자열로 변환시켜준다. -> ## : M..