public static bool SetCharacterTransforms(
             uint characterID,
            Matrix[] boneTransforms
        )
        {
            var message = MessagePool.Get<MyRenderMessageSetCharacterTransforms>(MyRenderMessageEnum.SetCharacterTransforms);

            message.CharacterID = characterID;

            if (message.RelativeBoneTransforms == null || message.RelativeBoneTransforms.Length < boneTransforms.Length)
            {
                message.RelativeBoneTransforms = (Matrix[])boneTransforms.Clone();
            }
            else
            {
                for (int i = 0; i < boneTransforms.Length; i++)
                {
                    message.RelativeBoneTransforms[i] = boneTransforms[i];
                }
            }

            EnqueueMessage(message);

            return false;
        }