View models just suck, what's the deal? Is it really necessary to have a 3d model for the just the hand and the gun that exists in its own 3d space and completely warps and changes size with respect to the rest of the environment? You can walk right up close to an NPC and your gun shrinks to the size of a dime. Is it somehow not feasible to just 3d model your whole character within the environment, collisions and all, and put the camera where their head would be? If you absolutely must get the camera right up to a wall, can't your character just hold the gun to their side whenever you're within a certain proximity?
it's performance optimization techinque that didn't change since inception of game engine and it's earlier iterations, also if you want to make one global model that looks the same in first and third person camera it needs to be adapted adequately
1st person animations look like shit in 3rd person and vice versa. that's the main reason using separate model for 1st person is a good idea