public BF2MeshSTMGeometryMaterial(Stream s, BF2MeshHeader header) { numMaterials = Helper.ReadU32(s); materials = new List <BF2MeshSTMMaterial>(); for (int i = 0; i < numMaterials; i++) { materials.Add(new BF2MeshSTMMaterial(s, header)); } }
public BF2MeshSTMLod(Stream s, BF2MeshHeader header) { u1 = new BF2MeshVector3(s); u2 = new BF2MeshVector3(s); if (header.version == 4) { u3 = new BF2MeshVector3(s); } numNodes = Helper.ReadU32(s); nodes = new List <BF2MeshMatrix>(); for (int i = 0; i < numNodes; i++) { nodes.Add(new BF2MeshMatrix(s)); } }
public BF2MeshSTMMaterial(Stream s, BF2MeshHeader header) { alphaMode = Helper.ReadU32(s); shaderFile = Helper.ReadCString(s); technique = Helper.ReadCString(s); numTextureMaps = Helper.ReadU32(s); textureMapFiles = new List <string>(); for (int i = 0; i < numTextureMaps; i++) { textureMapFiles.Add(Helper.ReadCString(s)); } vertexStartIndex = Helper.ReadU32(s); indiciesStartIndex = Helper.ReadU32(s); numIndicies = Helper.ReadU32(s); numVertices = Helper.ReadU32(s); u1 = Helper.ReadU32(s); u2 = Helper.ReadU16(s); u3 = Helper.ReadU16(s); if (header.version == 0xB) { u4 = new BF2MeshVector3(s); u5 = new BF2MeshVector3(s); } }
public BF2MeshBMLod(Stream s, BF2MeshHeader header) { if (header.version == 6) { u1 = new BF2MeshVector3(s); u2 = new BF2MeshVector3(s); u3 = new BF2MeshVector3(s); u4 = Helper.ReadU32(s); } if (header.version == 10) { u1 = new BF2MeshVector3(s); u2 = new BF2MeshVector3(s); u4 = Helper.ReadU32(s); if (header.u5 == 1) { u5 = new List <BoneEntry>(); for (int i = 0; i < u4; i++) { u5.Add(new BoneEntry(new BF2MeshMatrix(s), Helper.ReadCString(s))); } } } }