I don’t know if it fits your use case but recently I’ve started using a temp allocator for such results, reset every frame. If you want to hold to the data for longer, you copy it wherever you need. 95% of the time you don’t need to, and it makes for a simple api