Similar to UnsafeUtility.MemCpy but can skip bytes via desinationStride and sourceStride.
// Functional equivalent to this (But with various optimizations)
byte* destinationBytes = (byte*)destination;
byte* sourceBytes = (byte*)source;
for (int i = 0; i != count; i++)
{
UnsafeUtility.MemCpy(destinationBytes, sourceBytes, elementSize);
destinationBytes += destinationStride;
sourceBytes += sourceStride;
}