내가 3D MAX까지 하게될줄은 꿈에도 생각 못했다.



럭셔리한집이네요


그래서 이걸 ASE파일로 저장했다


왜 ASE로 하냐면, 텍스트형태로 저장된 3D 파일이다.

그래서 이걸 가지구 OpenGL ES에서 읽어서 사용할 예정입니다.







*3DSMAX_ASCIIEXPORT 200

*COMMENT "AsciiExport 버전  2.00 - Sun Sep 11 15:42:21 2011"

*SCENE {

*SCENE_FILENAME "house.max"

*SCENE_FIRSTFRAME 0

*SCENE_LASTFRAME 100

*SCENE_FRAMESPEED 30

*SCENE_TICKSPERFRAME 160

*SCENE_BACKGROUND_STATIC 0.0000 0.0000 0.0000

*SCENE_AMBIENT_STATIC 0.0000 0.0000 0.0000

}

*MATERIAL_LIST {

*MATERIAL_COUNT 0

}

*GEOMOBJECT {                         // 여기부터 메시 시작

*NODE_NAME "Box001"

*NODE_TM {

*NODE_NAME "Box001"

*INHERIT_POS 0 0 0

*INHERIT_ROT 0 0 0

*INHERIT_SCL 0 0 0

*TM_ROW0 1.0000 0.0000 0.0000

*TM_ROW1 0.0000 1.0000 0.0000

*TM_ROW2 0.0000 0.0000 1.0000

*TM_ROW3 -0.2022 -0.1892 0.0000

*TM_POS -0.2022 -0.1892 0.0000

*TM_ROTAXIS 0.0000 0.0000 0.0000

*TM_ROTANGLE 0.0000

*TM_SCALE 1.0000 1.0000 1.0000

*TM_SCALEAXIS 0.0000 0.0000 0.0000

*TM_SCALEAXISANG 0.0000

}

*MESH {

*TIMEVALUE 0

*MESH_NUMVERTEX 50           // 메시의 점의 개수

*MESH_NUMFACES 96             // 메시의 면의 개수 (인덱스)

*MESH_VERTEX_LIST {            // 메시 버텍스 리스트

*MESH_VERTEX    0 -10.0181 -10.0052 0.0000

*MESH_VERTEX    1 -0.2022 -10.0052 0.0000

                                          .........

                                          .........

                        // 버텍스들이 다 나온다

                        // DX는 왼손좌표계이기 때문에 Y, Z의 위치를 바꿔야한다.

                        // 그런데 지금은 OpenGL이니까 오른손좌표계 고로 그냥 한다.

}

*MESH_FACE_LIST {             // 메시의 면 리스트 (인덱스)

*MESH_FACE    0:    A:    0 B:    3 C:    4 AB:    1 BC:    1 CA:    0 *MESH_SMOOTHING 2 *MESH_MTLID 1

                        // A, B, C까지 면의 삼각점, 나머지는 스무딩에 필요하다

                        // 일단 걍 A, B, C만 따는거야.

*MESH_FACE    1:    A:    4 B:    1 C:    0 AB:    1 BC:    1 CA:    0 *MESH_SMOOTHING 2 *MESH_MTLID 1

                     ....................

                                             ....................

}

*MESH_NUMTVERTEX 70     // 텍스쳐 버텍스 개수

*MESH_TVERTLIST {

*MESH_TVERT 0  1.0000 0.0000 0.0000

*MESH_TVERT 1  0.5000 0.0000 0.0000

                                          ............

                                          ............

                          // 텍스쳐 좌표, UV좌표다.

}

*MESH_NUMTVFACES 96     // 텍스쳐 면 개수(인덱스)

*MESH_TFACELIST {

*MESH_TFACE 0 0 3 4

*MESH_TFACE 1 4 1 0

*MESH_TFACE 2 1 4 5

                                        ..............

                                        ..............

                         // 텍스쳐 인덱스

}

*MESH_NORMALS {

*MESH_FACENORMAL 0 0.0000 0.0000 -1.0000

*MESH_VERTEXNORMAL 0 0.0000 0.0000 -1.0000

*MESH_VERTEXNORMAL 3 0.0000 0.0000 -1.0000

*MESH_VERTEXNORMAL 4 0.0000 0.0000 -1.0000

*MESH_FACENORMAL 1 0.0000 0.0000 -1.0000

*MESH_VERTEXNORMAL 4 0.0000 0.0000 -1.0000

*MESH_VERTEXNORMAL 1 0.0000 0.0000 -1.0000

*MESH_VERTEXNORMAL 0 0.0000 0.0000 -1.0000

                                         ................

                                         ................

                           // 메시의 법선정보, 아직 광원을 안쓰니까 냅둬보자

}

}

*PROP_MOTIONBLUR 0

*PROP_CASTSHADOW 1

*PROP_RECVSHADOW 1

*WIREFRAME_COLOR 0.8392 0.8980 0.6510

}



뿌릴때, 인덱스의 전체를 지정하지 못해서 제대로 출력해내지 못했던 거였다. (2011.9.11)


'Graphics > 3D MAX' 카테고리의 다른 글

3D 무료 모델 사이트  (0) 2014.06.09
ASE Vertex 추가  (0) 2014.06.09
Posted by 긍정왕오킹