To pass in a raw pointer use 'FSharedBuffer::...(Data, Size)' to create a valid FSharedBuffer. Use 'FSharedBuffer::MakeView' if you want to retain ownership on the data being passed in, and use 'FSharedBuffer::TakeOwnership' if you are okay with the bulkdata object taking over ownership of it. The bulkdata object must own its internal buffer, so if you pass in a non-owned FSharedBuffer (ie by using 'FSharedBuffer::MakeView') then a clone of the data will be created internally and assigned to the bulkdata object.