전체 글

전체 글

    [Direct11] 37. 3D Direct Application - Normal Mapping

    1. 3D Direct Application 1.1 Normal Mapping 1.1.1 Normal Mapping System 1.1.1.1 Normal Mapping - 보통의 Texture Mapping에서 법선 벡터들이 여전히 덜 조밀한 정점 수준에 정의되어 삼각형을 따라 보간 - 표면 법선들을 좀 더 높은 해상도에서 지정 - 조명의 세부도가 높아지지만 메시 기하구조 자체의 세부도까지는 높아지지 않음 - 테셀레이션과 결합된 Normal Mapping을 사용하면 메시의 세부도를 높일 수 있음 - 벽돌 Texture를 사용할 때 올록볼록한 요철 형태에 비해 너무 매끄러워 부자연스럽게 보이는 경우 발생 - 메시 기하구조가 매끄럽기 때문에 이러한 현상 발생, 조명 계산은 메시 기하구조에 근거하여 수행하므..

    [Direct11] 36. 3D Direct Application - Dynamic Cube Mapping System

    1. 3D Direct Application 1.1 Dynamic Cube Mapping System 1.1.1 Dynamic Cube Mapping - 장면에 움직이는 물체들이 많은 경우, 미리 생성된 입방체 맵은 그러한 움직임을 포착하지 못함 - 입방체 맵을 실생시점에서 생성, 매 프레임마다 입방체 맵의 중심에 카메라를 두고 여섯 가지 축 방향마다 각각 장면을 렌더링해서 입방체 맵의 여섯 면을 생성 - 입방체 맵을 매 프레임마다 생성하면 장면 안에서 움직이는 물체들이 고스란히 입방체 맵에 포착 - 결과적으로 반사 물체 주변의 움직이는 물체들이 제대로 반사 1.1.1.1 Render Target View & Shader Resoure View - 입방체 맵 Texture Resource를 생성하려면 원..

    [Direct11] 35. 3D Direct Application - Cube Mapping System

    1. 3D Direct Application 1.1 Cube Mapping System 1.1.1 Cube Mapping - 여섯 장의 Texture를 어떤 좌표계의 좌표축들에 정렬된 입방체의 여섯 면으로 사용 - 입방체 Texture가 축에 정렬, 각 면은 좌표계의 각 주축 방향에 대응, 입방체의 특정 면을 지칭하는 구조체 사용 typedef enum D3D11_TEXTURECUBE_FACE; - 2차원 Texture와 달리 입방체 맵에서는 한 텍셀을 2차원 Texture 좌표로 지칭X, 3차원 Texture 좌표가 필요 - 원점에서 시작하는 하나의 3D Lookup Vector를 정의 - Lookup Vector의 3차원 좌표가 지칭하는 텍셀은 Lookup Vector가 입방체 맵과 교차하는 곳의 텍..