Copia rápida de la matriz Color32 [] a la matriz byte []

¿Cuál sería un método rápido paracopiar / convertir unarray deColor32[] valores a unbyte[] ¿buffer?Color32 es una estructura de Unity 3D que contiene4 bytes, R, G, B and A respectively. Lo que estoy tratando de lograr es enviar la imagen renderizada desde la unidad a través de una canalización a otra aplicación (Windows Forms). Actualmente estoy usando este código:

private static byte[] Color32ArrayToByteArray(Color32[] colors)
{
    int length = 4 * colors.Length;
    byte[] bytes = new byte[length];
    IntPtr ptr = Marshal.AllocHGlobal(length);
    Marshal.StructureToPtr(colors, ptr, true);
    Marshal.Copy(ptr, bytes, 0, length);
    Marshal.FreeHGlobal(ptr);
    return bytes;
}

Gracias y lo siento, soy nuevo en StackOverflow. Marinescu alexandru

Respuestas a la pregunta(1)

Su respuesta a la pregunta