Blender로 간단한 모델(큐브)을 만들어서 Fbx로 추출한뒤 Fbx Sdk로 불러오는 작업을 해보고 있었는데
제대로 파악을 잘 못해서 그런지 렌더링이 잘 되지 않았다.
정육면체에 대해 디버깅을 해보면 Polygon의 개수가 6개로 표시된다.
해당 메쉬에서 사각형 6개를 읽어온다는 뜻이다.
Primitive Mesh로 익숙한 삼각형으로 두는 방법은 없을까 해서 찾아보니
다음과 같은 코드로 구조적으로 보기 편하게 만들 수 있었다.
FbxMesh* mesh = (FbxMesh*)attribute;
FbxGeometryConverter gc{ m_fbxManager };
mesh = (FbxMesh*)gc.Triangulate(mesh, true);
auto newMesh = ProcessMesh(mesh, scene);
내가 생각하는 폴리곤인 삼각형 12개로 표시된다.
+
(*FbxMesh)->GetPolygonSize(PolygonIndex);
이 함수의 리턴값을 통해 해당 polygon이 사각형인지 삼각형인지 알 수 있다.
쉽게 모델을 로드해올 수 있었다.
++
normal값을 제대로 불러오는 방법을 모르겠어서 찾아보다가 Fbx Sdk는 포기하고 assimp를 사용하는 쪽으로 방향을 변경했다.
'Graphics > Directx11' 카테고리의 다른 글
그래픽스 새싹코스 파트1 - 가우시안 블러와 블룸 효과 (0) | 2023.03.27 |
---|---|
그래픽스 새싹코스 파트 1 - 이미지 처리 기초 (2) | 2023.03.24 |