Как использовать UnsafeMutableRawPointer для заполнения массива?
У меня есть металлическая текстура, я хочу получить доступ к ее данным из Swift, сделав ее массивом float4 (чтобы я мог получить доступ к каждому пикселю 4 цветовых компонента).
Я обнаружил этот методMTLTexture
:
getBytes(UnsafeMutableRawPointer, bytesPerRow: Int, bytesPerImage: Int, from: MTLRegion, mipmapLevel: Int, slice: Int)
Я совсем не знаю, как использовать UnsafeMutableRawPointer, как он работает и как вернуть данные в простой массив Swift.
Моя первая попытка состояла в том, чтобы создать указатель и выделить достаточно места для этого, но я даже не знаю, должен ли я это делать:
var pointer = UnsafeMutableRawPointer.allocate(bytes: myTextureSizeInBytes, alignedTo: 0)
Тогда я понятия не имею, как вернуть эти данные в стандартный массив Swift ...
Спасибо.