Ваша переменная matrices
является локальным динамическим массивом. В конце функции счетчик ссылок массива уменьшается до нуля, а массив уничтожается. Указатель, который вы сохранили в ValueP
, недействителен независимо от размера массива. Тот факт, что он работает для меньших значений, просто означает, что вам не повезло. (Если бы вам повезло, код каждый раз падал бы, что является большим признаком того, что ваш код неправильный, чем когда он иногда падает.)
Вам нужно найти другой способ управления временем жизни этого массива. Это должно будет принадлежать чему-то большему, чем просто эта функция. Возможно, вы можете вернуть сам массив из этой функции, или вы можете сделать переменную matrices
полем класса вместо локальной переменной. Или вы можете просто вернуть @FTransformManager.ModelMatrix[0]
.