Best way to change and store weapon by character

Well, need your advise guys, point is that, my character should have a few weapons, and I am thinking how to store the weapons and equip character with it. I see 2 ways now:

  1. Store all kinds of weapon linked in character model as children and not renderable, required one. When I need to switch weapon, the script makes the new weapon reanderable and hide old one.

Disadvantages are all weapon models are in memory per one character.
Advantages - Setting every weapon for the right position in character hands is easy

  1. Instantiate() weapon every time when I need to switch to a new one and
    Destroy() previous one.

Disadvantages - Setting weapon to the right position in character hands is not convenient during character configuration.
Advantages - I think that it is not too heavy from a memory perspective.

So may be, there are other ways for such task

I thinks its more of a personal preference, I Instantiate when making Games with large inventories (200 weapons). I get around the positioning using a empty reference point for where the weapon meets the hands. Anything for more than 10 weapons in an inventory I’d use this.

with FPS where you can only ever carry like 3 weapons, you could get away with the hiding method. if its only three weapon’s you should be able to get like 16 players in with optimum ping speeds without having to worry about performance.