본문 바로가기

게임 개발/[D3D_Portfolio] DirectX3D 팀 포트폴리오 작업일지19

7. 충돌 구현 충돌 구현 - PhysX를 활용하여 충돌 통치 및 처리에 관한 내용을 구현했다. - 2D 포트폴리오 기간에 PhysX를 다루며 해봤던 내용들이었기에, 어렵지 않게 구현할 수 있었다. - 충돌 진입 시 CollisionCount를 증가, 충돌 해제 시 CollisionCount를 감소시키는 방식을 통해 현재 충돌여부를 Bounding Box의 색상으로 표현할 수 있게 했다. 내일 할 일 - 인스턴싱 적용 2023. 7. 25.
6. FBX 텍스쳐 매핑 & Toon Shading FBX 텍스쳐 매핑 - FBX 텍스쳐 매핑은 FBX를 로드할 때 불러온 UV값과 텍스쳐를 통해 매핑된다. - 이 작업을 할 때 특정 FBX 파일은 잘 읽어오는데 지금 사용해야하는 FBX는 제대로 읽어오지 못하는 버그가 있었다. - 확인한 사항 1. 텍스쳐는 제대로 지정되어있었나? (O) 2. 그렇다면 그래픽스 디버깅에서 픽셀 셰이더에 SRV가 잘 매핑되었는가? (O) 3. 그렇다면 UV값이 정상적으로 매핑되었는가? (X) - 이 헤딩하는 과정을 통해 현재 Deferred Rendering에 의해 저장되는 Position, Normal, Color가 제대로 들어가는지와 해당 구간에 BP를 거는 등의 디테일한 작업을 몸소 익힐 수 있었다. 때문에 컬러값이 아래와 같이 하나의 색상으로 찍히고 있었다. - 이런.. 2023. 7. 21.
5. FBX 로드 FBX 로드 - 구현은 FBX SDK를 통해 구현했다. - FBX는 내부적으로 많은 정점, 인덱스정보와 텍스쳐, 애니메이션 정보를 들고 있는데, FBX를 로드하는 과정은 이 많은 데이터들을 로드하여 적재적소에 저장하는 과정이라고 볼 수 있다. - FBX는 내부적으로 트리 구조로 되어 있어서 재귀함수를 이용하면 루트 노드부터 순서대로 전체를 탐색할 수 있는데, 이 부분은 DFS를 사용했다. - 셰이더에서 이미지를 입히는 작업과 애니메이션 정보를 불러오는 부분을 이어서 구현할 생각이다. 내일 할 일 - FBX에 텍스쳐 매핑 및 애니메이션 구현 2023. 7. 20.
4. Bloom 구현 Bloom 구현 - Bloom은 이미지에서 밝은 부분을 추출한 후 그 부분을 블러처리하여 부드럽게 만든 이미지를 원본 이미지와 합치는 이미지 후처리 기술이다. - 블러 처리에서 맞닥뜨린 문제점은 한 번의 처리만으로는 부드러워지지 않기 때문에 여러 번 블러처리를 해야 하는데, 이 처리가 화면 전체에 대한 처리이다보니 계산해야 하는 픽셀 수가 많아서 프레임이 확확 떨어지는것이 체감될 정도였다. - 아직 다른 기능들을 추가하지 않은 상태에서 프레임이 많이 떨어지는 것을 방어하기 위해 다운스케일을 하여 픽셀 크기를 키운 후에 블러 처리를 해서 1번의 블러 처리만으로 괜찮은 품질을 만들 수 있도록 개선했다. 내일 할 일 - FBX SDK를 이용한 FBX Loader 구현 2023. 7. 19.