public void Load(BinaryReader reader) { if (globalVersion == 0) { index = MBUtil.LoadInt32(reader); col = MBUtil.LoadUInt32(reader); // color x vert! as 4 bytes AABBGGRR __norm = MBUtil.LoadPoint3F(reader); ta = MBUtil.LoadPoint2F(reader); ta.Y = 1 - ta.Y; tb = MBUtil.LoadPoint2F(reader); tb.Y = 1 - tb.Y; } else if (globalVersion == 1) { index = MBUtil.LoadInt32(reader); col = MBUtil.LoadUInt32(reader); // color x vert! as 4 bytes AABBGGRR __norm = MBUtil.LoadPoint3F(reader); tang = MBUtil.LoadPoint3F(reader); tangi = MBUtil.LoadByte(reader); ta = MBUtil.LoadPoint2F(reader); ta.Y = 1 - ta.Y; tb = ta; } else if (globalVersion == 2) { index = MBUtil.LoadInt32(reader); col = MBUtil.LoadUInt32(reader); // color x vert! as 4 bytes AABBGGRR __norm = MBUtil.LoadPoint3F(reader); ta = MBUtil.LoadPoint2F(reader); ta.Y = 1 - ta.Y; tb = ta; } }
public void Load(BinaryReader reader) { name = MBUtil.LoadString(reader); flags = MBUtil.LoadUInt32(reader); requires = MBUtil.LoadUInt32(reader); technique = MBUtil.LoadString(reader); uint k = MBUtil.LoadUInt32(reader); if (k <= 1) { if (k == 1) { fallback = MBUtil.LoadString(reader); } else { fallback = null; } } k = MBUtil.LoadUInt32(reader); opt = new List <MBBrfShaderOpt>(); for (int i = 0; i < k; i++) { MBBrfShaderOpt o = new MBBrfShaderOpt(); o.Load(reader); opt.Add(o); } }
public void Load(BinaryReader reader) { name = MBUtil.LoadString(reader); List <TmpBone4> tmpBone4v = new List <TmpBone4>(); uint k = MBUtil.LoadUInt32(reader); for (int i = 0; i < k; i++) { TmpBone4 tmpBone = new TmpBone4(); tmpBone.Load(reader); tmpBone4v.Add(tmpBone); } nbones = (int)k; List <TmpCas3F> tmpCas3f = new List <TmpCas3F>(); k = MBUtil.LoadUInt32(reader); for (int i = 0; i < k; i++) { TmpCas3F tmpcas3 = new TmpCas3F(); tmpcas3.Load(reader); tmpCas3f.Add(tmpcas3); } MBUtil.TmpBone2BrfFrame(tmpBone4v, tmpCas3f, out frames); }
public bool Load(BinaryReader reader) { index[0] = MBUtil.LoadInt32(reader); index[1] = MBUtil.LoadInt32(reader); index[2] = MBUtil.LoadInt32(reader); return(true); }
public void Load(BinaryReader reader) { map = MBUtil.LoadInt32(reader); colorOp = MBUtil.LoadUInt32(reader); alphaOp = MBUtil.LoadUInt32(reader); flags = MBUtil.LoadUInt32(reader); }
public void Load(BinaryReader reader) { uint k = MBUtil.LoadUInt32(reader); casList = new List <TmpCas4F>(); for (int i = 0; i < k; i++) { TmpCas4F cas = new TmpCas4F(); cas.Load(reader); casList.Add(cas); } }
//private List<int> next; public void Load(BinaryReader reader) { attach = MBUtil.LoadInt32(reader); if (!string.IsNullOrEmpty(MBUtil.LoadStringMaybe(reader, "bone"))) { b = MBUtil.LoadInt32(reader); } x = MBUtil.LoadPoint3F(reader); y = MBUtil.LoadPoint3F(reader); z = MBUtil.LoadPoint3F(reader); t = MBUtil.LoadPoint3F(reader); }
public void Load(BinaryReader reader) { bindex = MBUtil.LoadInt32(reader); uint k = MBUtil.LoadUInt32(reader); pairs = new List <TmpRiggingPair>(); for (uint i = 0; i < k; i++) { TmpRiggingPair pair = new TmpRiggingPair(); pair.Load(reader); pairs.Add(pair); } }
public void Load(BinaryReader reader) { name = MBUtil.LoadString(reader); uint k; k = MBUtil.LoadUInt32(reader); bones = new List <MBBrfBone>(); for (int i = 0; i < k; i++) { MBBrfBone bone = new MBBrfBone(); bone.Load(reader); } }
public void Load(BinaryReader reader) { name = MBUtil.LoadString(reader); flags = MBUtil.LoadUInt32(reader); shader = MBUtil.LoadString(reader); diffuseA = MBUtil.LoadString(reader); diffuseB = MBUtil.LoadString(reader); bump = MBUtil.LoadString(reader); enviro = MBUtil.LoadString(reader); spec = MBUtil.LoadStringMaybe(reader, "none"); specular = MBUtil.LoadFloat(reader); r = MBUtil.LoadFloat(reader); g = MBUtil.LoadFloat(reader); b = MBUtil.LoadFloat(reader); }
public void Load(BinaryReader reader) { name = MBUtil.LoadString(reader); string str = MBUtil.LoadString(reader); if (str == "composite") { uint k = MBUtil.LoadUInt32(reader); parts = new List <MBBrfBodyPart>(); for (int i = 0; i < k; i++) { MBBrfBodyPart part = new MBBrfBodyPart(); part.Load(reader); parts.Add(part); } } else { MBBrfBodyPart part = new MBBrfBodyPart(); part.Load(reader, str); parts.Add(part); } }
public void Load(BinaryReader reader) { vindex = MBUtil.LoadInt32(reader); weight = MBUtil.LoadFloat(reader); }
public void Load(BinaryReader reader) { time = MBUtil.LoadInt32(reader); MBUtil.LoadVector(reader, ref pos); MBUtil.LoadVector(reader, ref norm); }
public void Load(DataStreamPtr reader) { meshName = MBOgreUtil.LoadString(reader); uint flags = MBOgreUtil.LoadUInt32(reader); materialName = MBOgreUtil.LoadString(reader); MBBrfFrame oneFrame = new MBBrfFrame(); frames = new List <MBBrfFrame>(1) { oneFrame }; if (globalVersion != 0) { int offset = 1 << 16; uint ret = (uint)(flags & offset); if (ret == offset) { globalVersion = 1; } else { globalVersion = 2; } } MBOgreUtil.LoadVector(reader, ref frames[0].pos); uint v = MBOgreUtil.LoadUInt32(reader); List <TmpSkinning> tmpRig = new List <TmpSkinning>(); for (int i = 0; i < v; i++) { TmpSkinning tmpR = new TmpSkinning(); tmpR.Load(reader); tmpRig.Add(tmpR); } int k; k = MBOgreUtil.LoadInt32(reader); for (int i = 0; i < k; i++) { if (i == 0) { frames[0].Load(reader); } else { MBBrfFrame frame = new MBBrfFrame(); frame.Load(reader); frames.Add(frame); } } v = MBOgreUtil.LoadUInt32(reader); vertex = new List <MBBrfVert>(); for (uint i = 0; i < v; i++) { MBBrfVert vert = new MBBrfVert() { globalVersion = globalVersion }; vert.Load(reader); vertex.Add(vert); } v = MBOgreUtil.LoadUInt32(reader); faces = new List <MBBrfFace>(); for (uint i = 0; i < v; i++) { MBBrfFace face = new MBBrfFace() { globalVersion = globalVersion }; face.Load(reader); faces.Add(face); } skinning = new List <MBBrfSkinning>(); for (int i = 0; i < oneFrame.pos.Count; i++) { skinning.Add(new MBBrfSkinning()); } if (tmpRig.Count > 0) { MBUtil.TmpRigging2Rigging(ref tmpRig, ref skinning); } else { skinning.Clear(); } }
public void Load(BinaryReader reader) { findex = MBUtil.LoadInt32(reader); rot = MBUtil.LoadPoint4F(reader); }
public void Load() { using (BinaryReader reader = new BinaryReader(new FileStream(path, FileMode.Open, FileAccess.Read))) { globalVersion = 0; while (true) { string str = MBUtil.LoadString(reader); if (str == "end" || reader.BaseStream.Length == reader.BaseStream.Position) { break; } else if (str == "rfver ") { version = (int)reader.ReadUInt32(); globalVersion = version; } else if (str == "mesh") { meshNum = reader.ReadUInt32(); for (int i = 0; i < meshNum; i++) { MBBrfMesh brfMesh = new MBBrfMesh(); brfMesh.globalVersion = globalVersion; brfMesh.Load(reader); meshes.Add(brfMesh); } } else if (str == "texture") { textureNum = reader.ReadUInt32(); for (int i = 0; i < textureNum; i++) { MBBrfTexture texture = new MBBrfTexture(); texture.Load(reader); textures.Add(texture); } } else if (str == "shader") { shaderNum = reader.ReadUInt32(); for (int i = 0; i < shaderNum; i++) { MBBrfShader shader = new MBBrfShader(); shader.Load(reader); shaders.Add(shader); } } else if (str == "material") { materialNum = reader.ReadUInt32(); for (int i = 0; i < materialNum; i++) { MBBrfMaterial material = new MBBrfMaterial(); material.Load(reader); materials.Add(material); } } else if (str == "skeleton") { skeletonNum = reader.ReadUInt32(); for (int i = 0; i < skeletonNum; i++) { MBBrfSkeleton skeleton = new MBBrfSkeleton(); skeleton.Load(reader); skeletons.Add(skeleton); } } else if (str == "skeleton_anim") { skeletonAnimNum = reader.ReadUInt32(); for (int i = 0; i < skeletonAnimNum; i++) { MBBrfAnimation skeletonAnim = new MBBrfAnimation(); skeletonAnim.Load(reader); skeletonAnims.Add(skeletonAnim); } } else if (str == "body") { bodyNum = reader.ReadUInt32(); for (int i = 0; i < bodyNum; i++) { MBBrfBody body = new MBBrfBody(); body.Load(reader); bodies.Add(body); } } } } }
public void Load(BinaryReader reader) { name = MBUtil.LoadString(reader); flags = MBUtil.LoadUInt32(reader); }
public void Load(BinaryReader reader, string str = null) { string firstWord = null; if (string.IsNullOrEmpty(str)) { firstWord = MBUtil.LoadString(reader); } else { faces = new List <List <int> >(); firstWord = str; if (firstWord == "manifold") { type = Type.MANIFOLD; MBUtil.LoadVector(reader, ref pos); int k = MBUtil.LoadInt32(reader); for (int i = 0; i < k; i++) { ori = MBUtil.LoadInt32(reader); int h = MBUtil.LoadInt32(reader); List <int> v = new List <int>(); for (int j = 0; j < h; j++) { int pp = MBUtil.LoadInt32(reader); v.Add(pp); } faces.Add(v); } } else if (firstWord == "capsule") { type = Type.CAPSULE; radius = MBUtil.LoadFloat(reader); center = MBUtil.LoadPoint3F(reader); dir = MBUtil.LoadPoint3F(reader); flags = MBUtil.LoadUInt32(reader); } else if (firstWord == "sphere") { type = Type.SPHERE; radius = MBUtil.LoadFloat(reader); center = MBUtil.LoadPoint3F(reader); flags = MBUtil.LoadUInt32(reader); } else if (firstWord == "face") { type = Type.FACE; MBUtil.LoadVector(reader, ref pos); int k = pos.Count; List <int> aface = new List <int>(); for (int i = 0; i < k; i++) { aface.Add(i); } faces.Add(aface); flags = MBUtil.LoadUInt32(reader); } else { Console.WriteLine(string.Format("Unknown body (collision mesh) type `{0}`\n", firstWord)); } } }