Download

Proper/Optimal way to do TPP/FPP...?

Seen a few ways of doing it from tutorials, but they seem a bit hacky and come with their own issues.
So, just wondering what are some comon ways of handling this in industry? Just 2 seperate skeletals and anim BPs? Any ways of making the job easier in unreal?

Greatexample from SCUM

Just use the UE4 Third Person example and replace the mesh and AnimBP. If you want to make a shooter make aim offsets and add the gun from first person shooter.
https://docs.unrealengine.com/en-US/Engine/Animation/AnimHowTo/AimOffset (Aim Offsets for shooters)
https://www.youtube.com/watch?v=pLkojfv65Ig (How to replace TPS UE4)
And it is TPS and FPS not TPP and FPP.

I think what I’d like to know is how to swap out skeletal meshes at run-time, and if there is a way to retain 1 set of animations.

i.e 1 Full body char mesh for TPP and 1 without a head for FPP, but having just 1 set of animations for them both, maybe being able to turn the head bone off as well during run-time.
2 seperate anims could get costly, so maybe an opportunity to cheap out xD

why would you need to turn the head off?.. if you leave the original camera on the third person character where it is, you can add a second camera attached to the mesh and parented to the head socket… you can then move that camera into the head so the front of it is just in front of the face, check off “use pawn control rotation” and in the class defaults “use controller rotation” and you have a very easy to use true first person shooter with a head, body, shadows, all of it… then you can set a key to swap between the two cameras… then youre using all the same meshes and animations too

Because you get clipped inside of the mesh and at certain angles can see within the mesh

not when its attached to the head socket you dont

You’re right, making a duplicate of the original mesh that’s missing its head would solve this. Where are you getting/making your character meshes? When you go to import them, you can assign them to the same skeleton, as long as they share it already. That way the two meshes will share the same animBPs and animations. And when you want to change them at runtime, all you have to do is get the player’s skeletal mesh component and swap out the mesh it’s using.

Kind of depends if you want see own legs in FPP or not.

Easiest way to do it (from bp code perspective) is to split mesh (make arms separate mesh). And then set invisibility for rest of mesh when in FPP.
If you plan making any customization options, those separate arms need to be done anyway.

Figured it would be pretty simple, thanks, makes a lot of sense!