Over the past few years, our project has evolved a particularly complicated solution to a set of problems that arise of AAA first person games that desire a lot of camera animation, including synced interactions with other actors in the world(glory kills, etc) I hope that I can get some insight on some alternatives for some of these solutions, because they are unwieldy and complicated, though not without purpose. I am hoping I am overlooking some simpler options.
Starting from a common reference, the first person template sets up the pawn like so.
[Image Removed]
The FirstPersonCamera importantly uses UsePawnControlRotation=true so that the control rotation is applied top the camera itself as an override
Because we are a game that utilizes a lot of sync melee, and even the desire to have camera animation reflected in the first person camera, quick time events, etc, we went an entirely different direction. This would also have been several years ago, where this first person camera setup was even simpler IIRC the camera rig(SKM) was attached at an offset on the capsule, and the control rotation pivoted it in place. There was no body awareness like there is now. At least now the camera is attached to the head of the mesh, so positionally, it will reflect the animation, however, rotationally, the control rotation fully overrides the camera rotation.
So the question is. What options are available to allow some of the animated camera rotation to be felt on the camera, rather than the control rotation completely overriding the animated camera rotation? Ideally with an element of controllability, like a scalar for how much to apply.
Also, the first person template now doesn’t appear to implement a weapon, so it now doesn’t show the added complexity of accounting for procedural control rotation while maintaining a camera space arm rig. It’s like it deliberately avoids the entire meat of the issue of mixing a body aware, first person camera perspective, with an on screen arm rig.
This is why our solution has become the beast it has, because I use a control rig to distribute the control rotation across a set of bones(spine3, neck, head, camera), and some post fixup to put the spine3 bone back in the right spot relative to the camera as it was when we started. I suppose that same piece of the logic could be applied to the first person template arm rig, but still I ask, why is the first person template missing the most important element of first person gameplay? (a camera space weapon)
Hopefully that’s clear enough for some pointers.
TLDR: How do you preserve camera animation(rotation specifically) in a first person setup, while still being able to include procedural control rotation. And why is there no first person weapon in the first person template?