Freeing Unity Textures and Meshes After Transfer to RealityKit

Basically, no, although I think this is something we would like to add. I would suggest submitting it to our road map, though I will also create an internal ticket to track the request. We’re planning to make some changes to transfer meshes and textures via GPU blit through LowLevelMesh/LowLevelTexture, and I think that adding a way to indicate that the Unity objects won’t be needed after transfer would be a good add-on to that.

You could try calling Mesh.UploadMeshData(true)/Texture2D.Apply(false, true) to remove the CPU copy at some point after transferring it (that is, waiting at least one frame so that the data is actually transferred to RealityKit first), but that would only remove the CPU copy (and potentially create a new, unnecessary GPU copy), and it wouldn’t work if the data needs to be retransmitted (e.g., the model is removed and then readded later), so I think it would be difficult to make it work correctly.