public void UnParse(Stream s) { BinaryWriter bw = new BinaryWriter(s); mModelLodIndex.UnParse(s); bw.Write((UInt32)mFlags); bw.Write((UInt32)mId); bw.Write(mMinZValue); bw.Write(mMaxZValue); }
public override Stream UnParse() { MemoryStream s = new MemoryStream(); BinaryWriter bw = new BinaryWriter(s); bw.Write((UInt32)FOURCC(Tag)); bw.Write(mVersion); bw.Write((UInt32)mFlags); if (mSwizzleInfo == null) { mSwizzleInfo = new GenericRCOLResource.ChunkReference(0, handler, 0); } mSwizzleInfo.UnParse(s); if (mBuffer == null) { mBuffer = new byte[0]; } bw.Write(mBuffer); return(s); }
public void UnParse(Stream s) { BinaryWriter bw = new BinaryWriter(s); long sizeOffset = s.Position; bw.Write(0); long start = s.Position; bw.Write(mName); mMaterialIndex.UnParse(s); mVertexFormatIndex.UnParse(s); mVertexBufferIndex.UnParse(s); mIndexBufferIndex.UnParse(s); bw.Write((UInt32)mPrimitiveType | ((UInt32)mFlags << 8)); bw.Write(mStreamOffset); bw.Write(mStartVertex); bw.Write(mStartIndex); bw.Write(mMinVertexIndex); bw.Write(mVertexCount); bw.Write(mPrimitiveCount); mBounds.UnParse(s); mSkinControllerIndex.UnParse(s); mJointReferences.UnParse(s); mScaleOffsetIndex.UnParse(s); mGeometryStates.UnParse(s); if (mOwner.Version > 0x00000201) { bw.Write(mParentName); mMirrorPlane.UnParse(s); } if (mOwner.Version > 0x00000203) { bw.Write(mUnknown1); } long end = s.Position; long size = end - start; s.Seek(sizeOffset, SeekOrigin.Begin); bw.Write((uint)size); s.Seek(end, SeekOrigin.Begin); }