Esempio n. 1
0
        public override Stream UnParse()
        {
            MemoryStream s  = new MemoryStream();
            BinaryWriter bw = new BinaryWriter(s);

            bw.Write((UInt32)FOURCC(Tag));
            if (mExtraBounds == null)
            {
                mExtraBounds = new BoundingBoxList(handler);
            }
            if (mEntries == null)
            {
                mEntries = new LODEntryList(handler);
            }
            if (mBounds == null)
            {
                mBounds = new BoundingBox(0, handler);
            }
            if (mVersion < 258 && mExtraBounds.Count > 0)
            {
                mVersion = 258;
            }
            bw.Write(mVersion);
            bw.Write(mEntries.Count);
            mBounds.UnParse(s);
            if (mVersion >= 258)
            {
                mExtraBounds.UnParse(s);
                bw.Write(mFadeType);
                bw.Write(mCustomFadeDistance);
            }
            mEntries.UnParse(s);
            return(s);
        }