There may be some confusion about Span<T> still. Everyone talking about "span" from the C# side is of course talking about Span<T>, which is just a way to represent a contiguous memory segment that doesn't need to be managed. It's not 100% clear to me what reduz means that Spans can't happen, but then Span interfaces can happen. I wonder if there is some conflation with C++ span and C# Span<T>: C# <i>does not</i> need GDExtension to expose spans on its end for C# use Span<T>.<p>The definition of PackedVector2Array is:<p><pre><code> typedef Vector<Vector2> PackedVector2Array;
</code></pre>
So, it's just a Vector? Internally there is PackedArrayRef<T> which wraps Vector<T> and adds a ref count to the struct.<p>Right, so in C# as an implementation detail on its end Span<T> can be used to operate over the Vector<T>. These are all just details though, I think everyone will end up with what they want more or less.