- Timestamp:
- 02/19/07 09:16:59 (17 years ago)
- File:
-
- 1 edited
Legend:
- Unmodified
- Added
- Removed
-
GTP/trunk/Lib/Geom/shared/GTGeometry/src/GeoMeshLoader.cpp
r1526 r2127 1 /*======================================================================== ==1 /*======================================================================== 2 2 * (C) 2005 Universitat Jaume I 3 *======================================================================== ==3 *======================================================================== 4 4 * PROYECT: GAME TOOLS 5 *======================================================================== ==*/5 *========================================================================*/ 6 6 /* CONTENT: 7 7 * 8 8 * 9 9 * @file GeoMeshLoader.cpp 10 *======================================================================== ==*/10 *========================================================================*/ 11 11 12 12 #include "GeoMeshLoader.h" … … 18 18 using namespace std; 19 19 20 //------------------------------------------------------------------------- --20 //------------------------------------------------------------------------- 21 21 // Jump a chunk. 22 //------------------------------------------------------------------------- --22 //------------------------------------------------------------------------- 23 23 void GeoMeshLoader::jumpChunk(FILE *f) 24 24 { … … 29 29 } 30 30 31 //------------------------------------------------------------------------- --31 //------------------------------------------------------------------------- 32 32 // Read a chunk. 33 //------------------------------------------------------------------------- --33 //------------------------------------------------------------------------- 34 34 unsigned short GeoMeshLoader::readChunk(FILE *f) 35 35 { … … 42 42 } 43 43 44 //------------------------------------------------------------------------- --44 //------------------------------------------------------------------------- 45 45 // Read geometry vertex element. 46 //------------------------------------------------------------------------- --46 //------------------------------------------------------------------------- 47 47 void GeoMeshLoader::readGeometryVertexElement(FILE *f, Mesh *geoMesh) 48 48 { … … 112 112 } 113 113 114 //------------------------------------------------------------------------- --114 //------------------------------------------------------------------------- 115 115 // Read geometry vertex declaration. 116 //------------------------------------------------------------------------- --116 //------------------------------------------------------------------------- 117 117 void GeoMeshLoader::readGeometryVertexDeclaration(FILE *f, Mesh *geoMesh) 118 118 { … … 154 154 }// End readGeometryVertexDeclaration. 155 155 156 //------------------------------------------------------------------------- --156 //------------------------------------------------------------------------- 157 157 // Read geometry vertex buffer. 158 //--------------------------------------------------------------------------- 159 void GeoMeshLoader::readGeometryVertexBuffer(FILE *f, Mesh *geoMesh, int option) 158 //------------------------------------------------------------------------- 159 void GeoMeshLoader::readGeometryVertexBuffer( FILE *f, 160 Mesh *geoMesh, 161 int option) 160 162 { 161 163 unsigned short bindIndex; … … 287 289 mError = true; 288 290 } 289 290 } 291 292 //--------------------------------------------------------------------------- 291 } 292 293 //------------------------------------------------------------------------- 293 294 // Read Geometry. 294 //------------------------------------------------------------------------- --295 //------------------------------------------------------------------------- 295 296 void GeoMeshLoader::readGeometry(FILE *f, Mesh *geoMesh, int option) 296 297 { … … 379 380 } 380 381 381 //------------------------------------------------------------------------- --382 //------------------------------------------------------------------------- 382 383 // Read a submesh operation. 383 //------------------------------------------------------------------------- --384 //------------------------------------------------------------------------- 384 385 void GeoMeshLoader::readSubMeshOperation( FILE *f, 385 386 Mesh *geoMesh, … … 403 404 } 404 405 405 //------------------------------------------------------------------------- --406 //------------------------------------------------------------------------- 406 407 // Read a submesh. 407 //------------------------------------------------------------------------- --408 //------------------------------------------------------------------------- 408 409 void GeoMeshLoader::readSubMesh(FILE *f, Mesh *geoMesh, int option) 409 410 { … … 563 564 } 564 565 565 //------------------------------------------------------------------------- --566 //------------------------------------------------------------------------- 566 567 // Read a mesh lod information. 567 //------------------------------------------------------------------------- --568 //------------------------------------------------------------------------- 568 569 void GeoMeshLoader::readMeshLodInfo(FILE *f, Mesh *geoMesh) 569 570 { … … 600 601 } 601 602 602 //------------------------------------------------------------------------- --603 //------------------------------------------------------------------------- 603 604 // Read a submesh name table. 604 //------------------------------------------------------------------------- --605 //------------------------------------------------------------------------- 605 606 void GeoMeshLoader::readSubMeshNameTable(FILE *f, Mesh *geoMesh) 606 607 { … … 639 640 } 640 641 641 //------------------------------------------------------------------------- --642 //------------------------------------------------------------------------- 642 643 // Read a mesh file. 643 //------------------------------------------------------------------------- --644 //------------------------------------------------------------------------- 644 645 645 646 #include "GeoLodStripsLibrary.h" … … 869 870 870 871 871 //------------------------------------------------------------------------- --872 //------------------------------------------------------------------------- 872 873 // Allocate memory to the array of strips 873 //------------------------------------------------------------------------- --874 //------------------------------------------------------------------------- 874 875 SubMesh* GeoMeshLoader::BuildStripsGeoSubMesh(SubMesh* geoSubMesh) 875 876 { … … 969 970 } 970 971 971 //------------------------------------------------------------------------- --972 //------------------------------------------------------------------------- 972 973 // Remove degenerate triangles of a submesh given. 973 //------------------------------------------------------------------------- --974 //------------------------------------------------------------------------- 974 975 SubMesh * GeoMeshLoader::removeDegenerateTriangles(SubMesh *geoSubMesh) 975 976 { … … 1074 1075 } 1075 1076 1076 //------------------------------------------------------------------------- --1077 //------------------------------------------------------------------------- 1077 1078 // Loads a mesh. 1078 //------------------------------------------------------------------------- --1079 //------------------------------------------------------------------------- 1079 1080 Mesh* GeoMeshLoader::load(char *nameFileMesh) 1080 1081 { … … 1083 1084 char version[255]; 1084 1085 FILE *pFile; 1085 SubMesh 1086 SubMesh *geosubmesh; 1086 1087 1087 1088 // Debug. … … 1106 1107 1107 1108 geoMesh = NULL; 1109 1108 1110 if (lodstripsdata) 1111 { 1109 1112 delete lodstripsdata; 1110 lodstripsdata=NULL; 1113 } 1114 1115 lodstripsdata = NULL; 1111 1116 1112 1117 if (treesimpseq) 1118 { 1113 1119 delete treesimpseq; 1114 treesimpseq=NULL; 1120 } 1121 1122 treesimpseq = NULL; 1115 1123 1116 1124 // Open the mesh file. … … 1125 1133 geoMesh = new Mesh(); 1126 1134 1127 if (fileExt ==std::string("OBJ"))1135 if (fileExt == std::string("OBJ")) 1128 1136 { 1129 1137 mError = false; … … 1155 1163 1156 1164 cout << version << endl; 1157 1158 /*if (strcmp(version,"[MeshSerializer_v1.30]\n"))1159 {1160 // Debug.1161 cout << "Error: Wrong mesh version."1162 << endl1163 << "Only version 1.3 or older allowed."1164 << endl;1165 1166 // Error.1167 mError = true;1168 }*/1169 1165 1170 1166 while(!feof(pFile)) … … 1240 1236 } 1241 1237 1242 //------------------------------------------------------------------------- --1238 //------------------------------------------------------------------------- 1243 1239 // Sets coords between -1 and 1. 1244 //------------------------------------------------------------------------- --1240 //------------------------------------------------------------------------- 1245 1241 void GeoMeshLoader::normalizeModel(Mesh *geoMesh) 1246 1242 { … … 1390 1386 } 1391 1387 1392 //------------------------------------------------------------------------- --1388 //------------------------------------------------------------------------- 1393 1389 // Get the size in bytes of the file. 1394 //------------------------------------------------------------------------- --1390 //------------------------------------------------------------------------- 1395 1391 size_t GeoMeshLoader::getFileSize() 1396 1392 { … … 1398 1394 } 1399 1395 1400 //------------------------------------------------------------------------- --1396 //------------------------------------------------------------------------- 1401 1397 // Constructor 1402 //------------------------------------------------------------------------- --1398 //------------------------------------------------------------------------- 1403 1399 GeoMeshLoader::GeoMeshLoader() 1404 1400 { … … 1409 1405 } 1410 1406 1411 //------------------------------------------------------------------------- --1407 //------------------------------------------------------------------------- 1412 1408 // Destroyer. 1413 //------------------------------------------------------------------------- --1409 //------------------------------------------------------------------------- 1414 1410 GeoMeshLoader::~GeoMeshLoader() 1415 1411 { … … 1430 1426 } 1431 1427 1432 //------------------------------------------------------------------------- --1428 //------------------------------------------------------------------------- 1433 1429 // Read bones of the submesh. 1434 //------------------------------------------------------------------------- --1430 //------------------------------------------------------------------------- 1435 1431 void GeoMeshLoader::readSubMeshBoneAssignment(FILE *f, 1436 1432 SubMesh *geoSubMesh, … … 1452 1448 } 1453 1449 1454 //------------------------------------------------------------------------- --1450 //------------------------------------------------------------------------- 1455 1451 // Read bones of the main mesh. 1456 //------------------------------------------------------------------------- --1452 //------------------------------------------------------------------------- 1457 1453 void GeoMeshLoader::readMeshBoneAssignment(FILE *f, Mesh *geoMesh, int option) 1458 1454 { … … 1472 1468 } 1473 1469 1474 //------------------------------------------------------------------------- --1470 //------------------------------------------------------------------------- 1475 1471 // Read skeleton link. 1476 //------------------------------------------------------------------------- --1472 //------------------------------------------------------------------------- 1477 1473 void GeoMeshLoader::readSkeletonLink(FILE *f, Mesh *geoMesh, int option) 1478 1474 { … … 1490 1486 } 1491 1487 1492 //------------------------------------------------------------------------- --1488 //------------------------------------------------------------------------- 1493 1489 // Read bounding box settings. 1494 //------------------------------------------------------------------------- --1490 //------------------------------------------------------------------------- 1495 1491 void GeoMeshLoader::readMeshBounds(FILE *f, Mesh *geoMesh, int option) 1496 1492 {
Note: See TracChangeset
for help on using the changeset viewer.