constant buffer 2

[DX11] Constant Buffer에 값 넘길 때 주의할 점(Shader로 Matarial값 넘길 때 주의할점)

1. 개요 Matarial에는 정말 다양한 값들이 있습니다. 기본적으로 아래와 같은 값들이 쉐이더로 넘어오도록 설계하고 있습니다. 텍스처의 다양한 상태를 조절하는 값들입니다.buffer MaterialCB : register(b4){ float3 Ambient; float Opacity; float3 Diffuse; float Transparency; float3 Specular; float RefractiveIndex; float3 Emissive; float SpecularExponent; int IlluminationModel;}; 그렇다면 이 값들을 constant buffer를 통해 shader에 넘겨줄 때 주의해야 할 점은 무엇이 있을까..

DirectX11 2025.03.26

[DX11] Shader에 Vertex넘길 때 주의 해야 할 점!! (Shader 디버깅 Tip)

1. 문제 상황 이렇게 정점은 위치/normal/색/uv좌표 순으로 Shader에 넘겨주고 있었고 Pixel Shader에서는 적절히 받아온 텍스처를 Sampling해주고 있었습니다. 그런데 여기서 발생한 문제점이 Texture의 색들이 전부 섞여서 나타나는 것이었습니다.  색이 섞이는 것을 알게 될때 까지도 상당한 시간이 소요 됐습니다. 우선 위의 사진처럼 큐브 텍스처를 넘겨주게 되면 전체가 회색으로 렌더링 되었습니다.     2. 원인 추론 문제를 바탕으로 추론한점은 다음과 같습니다.  2-1. UV좌표가 잘못 됐나?UV좌표가 잘못 넘어가서 큐브 텍스처 바깥에 있는 회색 공간에 Mapping이 되어있는 것인가? 그러나 이 추측은 잘못된 것으로 밝혀 졌는데  그 이유는 아래 처럼 텍스처를 변경한뒤 파이..

DirectX11 2025.03.25