Example #1
0
    public List <B45ChunkDataHeader> ReadAllChunkHeader(out int out_svn_key, int read_ref_svnkey)
    {
        int highest_svn_key           = -1;
        List <B45ChunkDataHeader> ret = new List <B45ChunkDataHeader>();

        fileBA.ReadHeader();
        fileUV.ReadHeader();

        int chunkCount = fileBA.GetChunkCount();

        for (int i = 0; i < chunkCount; i++)
        {
            B45ChunkDataHeader cd = new B45ChunkDataHeader();
            cd._chunkPos  = fileBA.chunkCoords[i];
            cd.svn_key_ba = fileBA.svn_keys_ba[i];
            cd.svn_key    = fileUV.svn_keys_uv[i];

            if (cd.svn_key_ba <= read_ref_svnkey)
            {
                continue;
            }

//			fileUV.AttachUVData(i, cd);

            ret.Add(cd);
            if (highest_svn_key < cd.svn_key_ba)
            {
                highest_svn_key = cd.svn_key_ba;
            }
        }
        out_svn_key = highest_svn_key;
        return(ret);
    }
Example #2
0
    public static B45ChunkDataHeader ReadChunkHeader(uLink.BitStream stream, params object[] codecOptions)
    {
        B45ChunkDataHeader header = new B45ChunkDataHeader();

        stream.TryRead <IntVector3>(out header._chunkPos);
        stream.TryRead <int>(out header.svn_key);
        stream.TryRead <int>(out header.svn_key_ba);
        return(header);
    }
Example #3
0
    public static void WriteChunkHeader(uLink.BitStream stream, object obj, params object[] codecOptions)
    {
        B45ChunkDataHeader header = obj as B45ChunkDataHeader;

        if (null != header)
        {
            stream.Write(header._chunkPos);
            stream.Write(header.svn_key);
            stream.Write(header.svn_key_ba);
        }
    }