private static short SerializeAsteroidDesc(StreamBuffer outStream, object customobject)
        {
            AsteroidDesc o = (AsteroidDesc)customobject;

            lock (memAsteroidDesc)
            {
                byte[] bytes = memAsteroidDesc;
                int    index = 0;
                Protocol.Serialize(o.Id, bytes, ref index);         //4
                Protocol.Serialize(o.Index, bytes, ref index);      //4
                Protocol.Serialize(o.Position.x, bytes, ref index); //4
                Protocol.Serialize(o.Position.y, bytes, ref index); //4
                Protocol.Serialize(o.Position.z, bytes, ref index); //4
                Protocol.Serialize(o.Rotation.x, bytes, ref index); //4
                Protocol.Serialize(o.Rotation.y, bytes, ref index); //4
                Protocol.Serialize(o.Rotation.z, bytes, ref index); //4
                Protocol.Serialize(o.Rotation.w, bytes, ref index); //4
                Protocol.Serialize(o.Speed, bytes, ref index);      //4
                outStream.Write(bytes, 0, 4 * 10);
            }

            return(4 * 10);
        }