Inventory System - Best practices

first i’d ask if you’re actually having performance problems because if not you could be over thinking it.

that said

this is what i do, if you use childwidgets or a widgetswitcher it wont turn into spaghetti, as all relevant code will still be inside its own widget, ie inventory/stats etc.

PC make sense to me but you could of course use the HUD class.

i guess its doable via the main HUD widget or HUD class but i dont think its worth it.

yeah this is only RemoveFromParent, you can force a GC but I dont think its worth it.

Really the only optimization i can suggest is ObjectPooling but it can be tricky since you’ll have to reset data/disable when inactive etc. ultimately i wouldnt worry unless profiling suggests a bottleneck.