Direct11

    [Direct11] 9. Direct3D API Interface & Function #2

    1. Direct3D API Interface & Function 1.1 Vertex Shader 1.1.1 Vertex Shader HLSL Code - 정점을 생성할 때 위치와 색상으로 생성하여 정점 셰이더의 매개변수가 4개 - 처음 두가지의 값은 입력 매개변수, 나머지 둘은 출력 매개변수 - HLSL에서는 참조나 포인터가 없으므로 구조체를 이용하거나 out이 지정된 출력 매개변수를 사용 struct Vertex { XMFLOAT3 Pos; XMFLOAT4 Color;}; void VS(float3 iPosL : POSITION, float4 iColor : COLOR, out float4 oPosH : SV_POSITION, out float4 oColor : COLOR); - 처음 두 입력 매개변..

    [Direct11] 8. Direct3D API Interface & Function #1

    1. Direct3D API Interface & Function 1.1 Vertex & Input Layout 1.1.1 Direct3D Vertex - 공간적 위치 이외에 추가적인 자료를 가질 수 있고 원하는 자료를 사용하려면 원하는 구조체 정의 - 하나는 위치와 색상, 하나는 위치, 법선, Texture 좌표로 구성 struct Vertexl { XMFLOAT3 Pos; XMFLOAT4 Color; }; struct Vertex2 { XMFLOAT3 Pos; XMFLOAT3 Normal; XMFL0AT2 TexO; XMFLOAT2 Texl; }; - 정점 구조체의 각 성분이 어떤 용도인지 Direct3D에게 알려 주어야 함 1.1.2 Input Layout - 위의 방식을 알려주는 수단으로 구조체들..

    [Direct11] 6. Rendering Pipeline - Tessellation & Rasterizer (TS & RS)

    1. Rendering Pipeline 1.1 Tessellation - 한 메시의 삼각형들을 더 잘게 쪼개서 새로운 삼각형들으 만드는 과정 - 새 삼각형들을 새로운 위치로 이동함으로써 좀 더 세밀한 메시를 만들어 낼 수 있음 1.1.1 Advantage - 카메라의 가까운 삼각형들에게 테셀레이션을 적용하여 세부도를 높임 - 먼 삼각형들인 경우 테셀레이션을 적용하지 않는 방식의 LOD(level-of-detail) 메커니즘을 구현 - 위 메커니즘을 적용한다면 여분의 세부도가 실제로 눈에 띄는 부분에서만 삼각형들을 더 투여 가능 - 메모리에는 적은 수의 삼각형들로 이루어진 메시를 담아두고 즉석에서 삼각형들을 추가함으로써 메모리를 적용 - 애니메이션이나 물리 처리 같은 연산들은 단순한 저다각형 메시에 대해 ..