Unused Textures do not trigger Garbage Collector

Hi, I am leaving this post here both as a request for clarification, and in case someone may be having a similar issue, My game was crashing due to memory leak (partial logs below). In my game was constantly creating a temp Textures2D assuming that the GC would collect them, it wouldn’t, which wound up crashing due to lack of memory.

I solved it by simply storing a Texture and resizing it as necessary. My question here is why does the GC not collect it?

Textures also allocate memory outside of the managed Mono heap, and to free that memory you need to call one of the destroy functions (e.g. Object.Destroy(myTexture) or Object.DestroyImmediate(myTexture)) or call Resources.UnloadUnusedAssets() (this is slow though).

is this still true?

Yes by design. See @samizzo s response.