public TRIFile(FileStream stream) { BinaryReader reader = new BinaryReader(stream); this.header = new TRIHeader(reader); this.vertices = new List <VertexPosition>(); for (int i = 0; i < this.header.VertexCount; i++) { this.vertices.Add(new VertexPosition(reader)); } if (this.header.ModVertexCount > 0) { this.modVertices = new List <VertexPosition>(); for (int i = 0; i < this.header.ModVertexCount; i++) { this.modVertices.Add(new VertexPosition(reader)); } } this.triFaces = new List <TriangleFace>(); for (int i = 0; i < this.header.PolytriCount; i++) { this.triFaces.Add(new TriangleFace(reader)); } this.quadFaces = new List <QuadFace>(); for (int i = 0; i < this.header.PolyQuadCount; i++) { this.quadFaces.Add(new QuadFace(reader)); } this.uvVertices = new List <UvVertexPosition>(); for (int i = 0; i < this.header.UvVerticeCount; i++) { this.uvVertices.Add(new UvVertexPosition(reader)); } this.uvTriFaces = new List <UvTriangleFace>(); for (int i = 0; i < this.header.PolytriCount; i++) { this.uvTriFaces.Add(new UvTriangleFace(reader)); } this.morphs = new List <TRIMorphData>(); for (int i = 0; i < this.header.MorphCount; i++) { this.morphs.Add(new TRIMorphData(reader, this.header.VertexCount)); } if (this.header.ModifierCount > 0) { this.modifiers = new List <TRIModifierData>(); for (int i = 0; i < this.header.ModifierCount; i++) { this.modifiers.Add(new TRIModifierData(reader)); } } }
public TRIFile(TRIFile file) { this.header = new TRIHeader(file.header); this.vertices = new List <VertexPosition>(); foreach (VertexPosition data in file.vertices) { this.vertices.Add(data); } if (this.header.ModVertexCount > 0) { this.modVertices = new List <VertexPosition>(); foreach (VertexPosition data in file.modVertices) { this.modVertices.Add(data); } } this.triFaces = new List <TriangleFace>(); foreach (TriangleFace face in file.triFaces) { this.triFaces.Add(face); } this.quadFaces = new List <QuadFace>(); foreach (QuadFace face in file.quadFaces) { this.quadFaces.Add(face); } this.uvVertices = new List <UvVertexPosition>(); foreach (UvVertexPosition vert in file.uvVertices) { this.uvVertices.Add(vert); } this.uvTriFaces = new List <UvTriangleFace>(); foreach (UvTriangleFace uvFace in file.uvTriFaces) { this.uvTriFaces.Add(uvFace); } this.morphs = new List <TRIMorphData>(); foreach (TRIMorphData morph in file.morphs) { this.morphs.Add(new TRIMorphData(morph)); } if (file.header.ModifierCount > 0) { this.modifiers = new List <TRIModifierData>(); foreach (TRIModifierData mod in file.modifiers) { this.modifiers.Add(new TRIModifierData(mod)); } } }
public TRIFile() { this.header = new TRIHeader(); this.vertices = new List <VertexPosition>(); this.modVertices = new List <VertexPosition>(); this.triFaces = new List <TriangleFace>(); this.quadFaces = new List <QuadFace>(); this.uvVertices = new List <UvVertexPosition>(); this.uvTriFaces = new List <UvTriangleFace>(); this.morphs = new List <TRIMorphData>(); this.modifiers = new List <TRIModifierData>(); }
public TRIHeader(TRIHeader header) { this.version = header.version.Clone() as string; this.vertexCount = header.vertexCount; this.polytriCount = header.polytriCount; this.polyquadCount = header.polyquadCount; this.unknown3 = header.unknown3; this.unknown2 = header.unknown2; this.uvVertexCount = header.uvVertexCount; this.flags = header.flags; this.morphCount = header.morphCount; this.modifierCount = header.modifierCount; this.modVertexCount = header.modVertexCount; this.unknown7 = header.unknown7; this.unknown8 = header.unknown8; this.unknown9 = header.unknown9; this.unknown10 = header.unknown10; }