Hey everyone, I’m working on a new project where the player controls an animal at the first person camera (it’s a non realistic animal but close to a feline).
So, my main objective right now is to create a game feel close to a 'beast controller’. I want to feel that I control an anomal and not a human being.
What I’ve tried so far for the simple forward character movement is to se a camera shake that I only activate on the pitch to try . The problem is, the offset random mode makes crazy bad things. And the zero offset allows the camera shake to be visible only when I start to move or stop to move. So I can’t have this a proper camera movement for my running animal.
So, would you have any idea of how I can accomplish that?
Do you want the camera to bob up and down excessively while the animal is running, that kind of effect? I have an idea that may be interesting to try:
In your component hierarchy, put your Camera component under a SpringArm. If you haven’t played with these before, spring arms are like virtual flexible sticks perfect for achieving things the camera swinging around a character with a delay.
Position the spring arm on the back of your character and set the TargetArmLength and Rotate the spring arm as you see fit. In the blueprint viewport you see a red line which indicates the end points of your spring arm.
During gameplay, oscillate the pitch of the spring arm while walking/running
Play with the lag settings on the spring arm, so that the camera is lagging behind creating a smooth but fast bobbing effect when combined with the previous step
Hope that makes sense. You could imagine it like this, you’re sitting backwards on a horse with a camera attached to a fishing rod. The spring arm is the fishing rod.
But it doesn’t work neither and I can’t add my Firsperson camera as a trget to several function i’ve used.
I know I need a timeline to manage the camera movement I want (will be easier to tweak), a multiplier to manage the rotation amplitude depending on the player’ speed and a function to add the rotation to the pitch. But knowing all of this, I still haven’t found how to put it all together to get the result I want
Hi, I finally succeeded in creating this camera. As said Iwata-san, nothing is impossible, you just have the think about it the right way!
I created camera animations to use curves as I wanted to tweak the camera movement. I put a reference to it in a camera shake blueprint. You could use the only camera animation to create this but adding it in a camera shake allows to add the camera shake effects on top of that to create a really cool feeling easily.
I put the whole thing into a function that is used when the player is moving. I have three different camera shake depending on the player’ state: if he’s walking, sprinting or in stealth position.
Then I get the stick axis value to scale the camera shake depending on the preassure you put on the gamepad left thumbstick.