/// <summary> /// Reads a <see cref="StaticMesh"/> /// </summary> /// <param name="br">The <see cref="BinaryReader"/> used to read the <see cref="StaticMesh"/></param> /// <returns>A <see cref="StaticMesh"/></returns> public static StaticMesh Read(BinaryReader br) { var ret = new StaticMesh(); ret.ObjectID = br.ReadUInt32(); ret.Mesh = br.ReadUInt16(); ret.VisibilityBox = new Vertex[2]; ret.VisibilityBox[0].X = br.ReadInt16(); ret.VisibilityBox[1].X = br.ReadInt16(); ret.VisibilityBox[0].Y = -br.ReadInt16(); ret.VisibilityBox[1].Y = -br.ReadInt16(); ret.VisibilityBox[0].Z = -br.ReadInt16(); ret.VisibilityBox[1].Z = -br.ReadInt16(); ret.CollisionBox = new Vertex[2]; ret.CollisionBox[0].X = br.ReadInt16(); ret.CollisionBox[1].X = br.ReadInt16(); ret.CollisionBox[0].Y = -br.ReadInt16(); ret.CollisionBox[1].Y = -br.ReadInt16(); ret.CollisionBox[0].Z = -br.ReadInt16(); ret.CollisionBox[1].Z = -br.ReadInt16(); ret.Flags = br.ReadUInt16(); return ret; }
/// <summary> /// Reads a <see cref="StaticMesh"/> /// </summary> /// <param name="br">The <see cref="BinaryReader"/> used to read the <see cref="StaticMesh"/></param> /// <returns>A <see cref="StaticMesh"/></returns> public static StaticMesh Read(BinaryReader br) { var ret = new StaticMesh(); ret.ObjectID = br.ReadUInt32(); ret.Mesh = br.ReadUInt16(); ret.VisibilityBox = new[] { new Vertex(br.ReadInt16(), br.ReadInt16(), -br.ReadInt16()), new Vertex(-br.ReadInt16(), -br.ReadInt16(), -br.ReadInt16()) }; ret.CollisionBox = new[] { new Vertex(br.ReadInt16(), br.ReadInt16(), -br.ReadInt16()), new Vertex(-br.ReadInt16(), -br.ReadInt16(), -br.ReadInt16()) }; ret.Flags = br.ReadUInt16(); return ret; }