ASE파일을 openGL로 읽을때

2D, 3D, 다각형, 픽셀 등 게임의 그래픽 프로그래밍에 관한 포럼입니다.

Moderator: 류광

Locked
비회원

ASE파일을 openGL로 읽을때

Post by 비회원 »

1) 버텍스 개수 만큼 읽고 Z와 Y값을 바꾸어 줍니다. (좌표계를 맞추기 위해서)
2) Z값에 -1을 곱해줍니다.(좌표계를 맞추기 위해서)

*MESH_VERTEX 0 -35.6322 0.0000 -40.6130
*MESH_VERTEX 1 100.7663 0.0000 -40.6130
*MESH_VERTEX 2 -35.6322 -0.0000 39.0805


1) 인덱스를 A , B ,C값만을 읽고 B와 C의 값을 바꾸어 줍니다. (CCW로 변환)
*MESH_FACE 0: A: 12 B: 19 C: 20 AB: 1 BC: 1 CA: 0 *MESH_SMOOTHING 2 *MESH_MTLID 1

*MESH_FACE 1: A: 20 B: 11 C: 12 AB: 1 BC: 1 CA: 0 *MESH_SMOOTHING 2 *MESH_MTLID 1

일단 버텍스와 인덱스 리스트 만 읽습니다.(초기 프로토타입 버전이라)

glPushMatrix();
glColorPointer(4,GL_FIXED,0,Bar_Color);
glVertexPointer(3, GL_FIXED, 0, m_pAse->m_pMesh->m_pVertexBuffer);
glDrawElements(GL_TRIANGLES, m_pAse->m_pMesh->m_nIndexCnt, GL_UNSIGNED_SHORT, m_pAse->m_pMesh->m_pIndexBuffer);

glPopMatrix();
이렇게 해서 화면에 렌더링 했더니 결과가 대부분이 화면에 렌더링이 되지 않고 극히 일부만 화면에 나옵니다
어떻게 해야 하나요..
메쉬는 단일메쉬이고 일단 버텍스와 인데스만 가지고 화면에 출력 하려 합니다.
고수님들의 조언 부탁드립니다.
Locked