I have been noticing that a lot of people seem to be going about building Shooters in different ways. Some people prefer to have the first person arms be part of the player character body, with the same animations and whatnot. Others opt for having the arms be their own separate mesh only seen by the player when in First-Person view.
My question is; which is considered better for multiplayer shooters and why? Is the consensus that the arms should be a separate mesh or to go with the “true” first person version of the arms you see in first person being the same as those of your player model.
I like the idea of the latter because it sounds easier to develop, but I’d like to hear what you guys think, I’d particularly like to know if going with one will have an effect on performance.
Purely depends on what you want to achieve. The arms vs. body approach probably originated from SP games that only needed arms for the player.
There’s a few pros and cons to either approach:
First person arms:
potentially higher resolution for texture and higher detail for the arms, since you see them all the time
Highly detailed animations, which would be wasted on a third person mesh
Some animations are possible in first person that would clip into the third person mesh and look funny
Saves bones in the third person mesh; having 3-4 fingers of your hand skinned to one set of bones instead of individual finger bones is sufficient for many use cases. Same goes for a complex weapon that can be nicely rigged in first person, yet in third person you would neither see the detail and also suffer slight performance hits for additional bones to be animated.
The camera can be moved along with the arms, independently from where the actual arms are on the third person mesh. HL2 for example had the arms and weapons at belly level and funny architectural dimensions to fix a problem that most FPS have. It’s the perception of funny sized dimensions, when they are built towards real life specs, due to FOV and other factors.
Yet:
More assets to maintain
Larger download (granted, marginally larger)
For a third person only approach:
Just one set of assets to maintain and animate
Synchronized first and third person actions
Creating nice blend spaces for aiming can be more difficult
Iron sight animations that basically shove the sights in your face in first person can make the rifle go right through your characters head
For having full body perception, you still need to chop off the head and parts of the torso, depending on how much freedom your camera movement allows - so worst case you end up with two different assets anyway.
Either too few detail on the arms or too much detail which is wasted from a third person standpoint and sometimes difficult to balance (moiree effects on cloth for example)
Animations can potentially lack fidelity, or - if you want to go around that, you put a large amount of bones into your third person character with the issues mentioned above
Your pick really, there’s no perfect way, but using these points you can probably identify which one you want to go.
In my opinion, its the only way to do it properly.
Eliminates a lot of issues you see in game like CS:GO, BF & COD, as their is no disconnect between what you see and what everyone else sees.