ABP_LPSP_TP_PCH

Introduction

The ABP_TP_PCH (Animation Blueprint for Third Person Character) is a critical asset that defines the animation-related logic for full-body character in the asset. This blueprint serves as a central hub for all animation-related functions, including movement locomotion, jumping, crouching, and weapon handling.

The ABP_TP_PCH is built on the AnimBP framework, which provides a visual scripting system for creating complex animation logic. Within the blueprint, there are various animation nodes that represent different aspects of the character's movement and behavior. These nodes are arranged and connected to create complex graphs that define how the character should animate in different situations.

One of the key strengths of the ABP_TP_PCH blueprint is its ability to facilitate the seamless integration of animations with other systems in the asset. For instance, the blueprint is used to define how a character should animate when firing a weapon. It is also used to create blends between different animations to create a smooth transition between the two.

Additionally, the ABP_TP_PCH blueprint allows for the playing of complex animation blends and montages, which can be used to create realistic and immersive gameplay experiences. These montages can be used to define character behaviors such as attacks, dodges, and parries.

If you're looking to access the ABP_LPSP_TP_PCH, you can find it at this path: LowPolyShooterPack/Core/Characters/ABP_LPSP_TP_PCH. Convenient, right?

Functionality

The ABP_TP_PCH (Animation Blueprint for Third Person Character) in Unreal Engine offers a wide range of functionality that enables the creation of compelling and realistic character animations. Some of the key features of the blueprint include:

Procedural Spine Rotation: This functionality allows the character to look at a specific point procedurally, which enhances the character's ability to interact with the game world and other characters in a more realistic way.

Wiggles For Transitions: This feature plays additive transitions over the actual transitional blends, making them look better and more polished. This helps to create a seamless and immersive gameplay experience for players.

Jumping/Falling/Landing: The blueprint also includes advanced animation logic for jumping, falling, and landing, which makes these movements look more realistic and responsive.

Crouching/Uncrouching: The ABP_TP_PCH also provides functionality for crouching and uncrouching, which enables the character to move through smaller spaces and avoid enemy fire. The crouching/uncrouching animations are seamlessly integrated into the overall animation system to create a smooth and responsive experience for players.

Locomotion for Standing and Crouching: The blueprint includes animation logic for both standing and crouching locomotion, which ensures that the character moves smoothly and realistically in both modes.

Breathing over Weapons: The ABP_TP_PCH also applies breathing animations over weapons with just one idle breathing, which is not specifically made for weapons. This feature adds a layer of realism to the animations and makes the character feel more alive and dynamic.

Functions

Update Recoil Values:

This function updates the recoil values of the player's weapon, taking into account the player's input, the weapon's properties, and any other relevant factors. This is an essential function for creating a realistic and engaging shooting experience in the game. By simulating the recoil of the weapon, the game can create a more immersive and challenging gameplay experience for the player.

Get Joy Play Rate:

This function returns the play rate of the "Jog" animation for the player's character. The "Jog" animation plays when the player is moving. By setting the play rate of this animation, the game can adjust the speed of the player's character.

Get Sprint Play Rate:

This function returns the play rate of the sprint animation for the player's character. By adjusting the play rate of the sprint animation, the game can adjust the speed at which the player's character moves while sprinting, creating a more engaging and dynamic gameplay experience for the player.

Calculate Lag Values:

The function Calculate Lag Values is used to calculate the lag values used for the weapon position and rotation, taking into account the player's movement and other relevant factors. This is an important function for creating a smooth and natural movement of the weapon in the game, which is essential for creating a more immersive and engaging gameplay experience for the player.

Get Sprint Impulse Play Rate:

This function returns the play rate of the sprint impulse animation for the player's character. The sprint impulse animation is an animation that plays when the player starts sprinting. By setting the play rate of this animation, the game can adjust the speed at which the player's character starts to sprint, creating a more dynamic and engaging gameplay experience for the player.

Get Gun Bone Lag Alpha:

This function returns the alpha value used for lagging the player's weapon. By adjusting the alpha value, the game can adjust the amount of lag on the player's weapon, creating a more realistic and immersive gameplay experience for the player.

Get Grip Idle Pose:

This function returns the idle grip pose for the player's weapon. The idle grip pose is the pose that the player's weapon takes when the player is not aiming or shooting. By defining and using an idle grip pose, the game can create a more immersive and realistic gameplay experience for the player.

Get Grip Aim Pose:

This function returns the aim grip pose for the player's weapon. The aim grip pose is the pose that the player's weapon takes when the player is aiming and shooting. By defining and using an aim grip pose, the game can create a more immersive and realistic shooting experience for the player.

Update Basics:

This function updates the basic movement and rotation values for the player's character. This is an essential function for maintaining the position and orientation of the player's character, which is necessary for creating a smooth and natural movement in the game.

Update Look:

This function updates the player's look direction based on input and other relevant factors. By updating the player's look direction, the game can create a more natural and responsive movement experience for the player.

Update Turning:

This function updates the player's turning direction based on input and other relevant factors. By updating the player's turning direction, the game can create a more natural and responsive turning experience for the player.

Is Grip Aim Pose Valid:

This function returns a boolean value indicating whether the aim grip pose for the player's weapon is valid. By checking the validity of the aim grip pose, the game can ensure that the player's weapon is properly positioned and oriented when the player is aiming and shooting.

Is Grip Idle Pose Valid:

This function returns a boolean value indicating whether the idle grip pose for the player's weapon is valid. By checking the validity of the idle grip pose, the game can ensure that the player's weapon is properly positioned and oriented when the player is not aiming or shooting.

Get Grip Holstered Pose:

This function returns the holstered grip pose for the player's weapon. The holstered grip pose is the pose that the player's weapon takes when it is not in use. By defining and using a holstered grip pose, the game can create a more immersive and realistic experience for the player.

Is Grip Holstered Pose Valid:

This function returns a boolean value indicating whether the holstered grip pose for the player's weapon is valid. By checking the validity of the holstered grip pose, the game can ensure that the player's weapon is properly positioned and oriented when it is not in use.

Get Standing Rotation Lag Look Offset:

This function returns the standing rotation lag look offset for the player's character. The standing rotation lag look offset is an offset used to create a lag effect on the player's character's rotation when standing. By using this offset, the game can create a more natural and realistic movement experience for the player.

Get Falling Location:

This function returns the location of the character's weapon when they are falling. By doing so, the game can create more realistic and immersive falling and landing animations.

Get Falling Rotation:

This function returns the rotation of the character ‘s weapon when falling.

Get Current Recoil Rotation:

This function returns the current recoil rotation of the player's weapon. By returning the current recoil rotation, the game can create a more realistic and immersive shooting experience for the player.

Get Landing Location:

This function returns the location of the player character's weapon upon landing. This information is important as it allows us to apply a special animation effect.

Get Landing Rotation:

This function returns the rotation of the player character's weapon upon landing. This information is important as it allows us to apply a special animation effect.

Get Jumping Location:

This function returns the location of the player character's weapon upon jumping. This information is important as it allows us to apply a special animation effect.

Get Jumping Rotation:

This function returns the location of the player character's weapon upon jumping. This information is important as it allows us to apply a special animation effect.

Get Turning Start Position:

This function returns the starting position for the player's turning animation. By returning the turning start position, the game can create a more natural and engaging turning animation for the player.

Can Enter Transition Crouching Start Moving:

This function returns a boolean value indicating whether the player's character can enter a transition into a crouching state while moving. By checking whether the player's character can enter a crouching state while moving, the game can create more realistic and natural crouching and movement animations.

Can Enter Transition Standing:

This function returns a boolean value indicating whether the player's character can enter a transition into a standing state. By checking whether the player's character can enter a standing state, the game can create more natural and immersive standing and movement animations.

Get Forward Vector:

This function returns the forward vector of the player's character. By returning the forward vector, the game can create more natural and immersive movement animations for the player.

Get Right Vector:

This function returns the right vector of the player's character. By returning the right vector, the game can create more natural and immersive movement animations for the player.

Is Spine Look Blocked:

This function checks whether the character's spine should rotate to face the looking direction, based on certain parameters.

Update Transition Values:

The Update Transition Values function is used to update the animation transition values for the player's character, taking into account the player's input, the character's position, and other relevant factors. This function is critical for creating smooth and responsive animation transitions in the game, which is essential for creating an immersive and engaging gameplay experience for the player.

Private Variables

Running:

This boolean variable determines whether the player's character is engaged in a state of running or not. When the value is true, the character will move at a greater velocity and animate with a running motion. When the value is false, the character's movement speed and animation will correspond to a slower pace.

Holstered:

The holstered variable is a boolean value that defines whether the character's weapon is currently stowed or not. When the value is true, the character's weapon is secured and unavailable for use until drawn. Conversely, when the value is false, the character's weapon is in a readily-accessible state.

Horizontal Movement:

The horizontal movement variable is a numerical value that determines the distance and direction the character is capable of moving along the horizontal plane.

Vertical Movement:

This numerical variable sets the range and direction in which the character is able to move on the vertical axis.

Sequence Pose Standing Aimed:

The sequence pose standing aimed variable is responsible for defining the animation sequence of a player's character model when the character is in a standing position and their weapon is aimed. This variable is critical in ensuring seamless and immersive gameplay mechanics.

Sequence Pose Standing Holstered:

This boolean variable defines the animation sequence of the player's character model when the character is in a standing position and their weapon is in a holstered state. This value influences the visual presentation of the game world and the player's immersion in it.

Sequence Loop Weapon Jog:

The sequence loop weapon jog variable controls the animation sequence of a player's character model when the character is in motion and their weapon is drawn. This variable can be used to create a more fluid and dynamic gameplay experience.

Sequence Loop Character Sprint:

This variable dictates the animation sequence of a player's character model when the character is in a sprinting state. By altering the sequence loop, game designers can optimize the player's gameplay experience for maximum immersion and enjoyment.

Sequence Loop Character Sprint Impulse:

The sequence loop character sprint impulse variable is responsible for defining the animation sequence of a player's character model when the character is in a sprinting state and has just begun accelerating. This variable is critical to ensuring that the gameplay mechanics are fluid and seamless.

Sequence Loop Weapon Sprint:

The sequence loop weapon sprint variable defines the animation sequence of a player's character model when the character is in a sprinting state and their weapon is drawn. This value influences the visual presentation of the game world and the player's immersion in it.

Sequence Loop Weapon Sprint Impulse:

This variable controls the animation sequence of a player's character model when the character is in a sprinting state and has just begun accelerating with their weapon drawn. By modifying this sequence loop, game designers can optimize the player's gameplay experience and immersion.

Movement Angle:

This numerical value is responsible for defining the angle at which the player's character is currently moving. It is commonly used to direct the player's movements and interactions within the game world, adding depth and complexity to the gameplay experience.

Movement Right:

This numerical value defines the character's ability to move to the right along the horizontal plane. It affects the character's motion and can be used to limit their movement in certain directions.

Movement Left:

This numerical value defines the character's ability to move to the left along the horizontal plane. It affects the character's motion and can be used to limit their movement in certain directions.

Movement Forward:

This numerical value is responsible for defining the character's ability to move forward along the vertical plane. It affects the character's motion and can be used to limit their movement in certain directions.

Movement Backward:

This numerical value defines the character's ability to move backwards along the vertical plane. It affects the character's motion and can be used to limit their movement in certain directions.

Aiming:

This boolean value determines whether the character is currently aiming their weapon or not. When the value is true, the character's weapon is aimed and the aim assist feature may be enabled. When the value is false, the character's weapon is not aimed.

Crouching:

This boolean value determines whether the character is currently in a crouching state or not. When the value is true, the character is crouching and their movement speed is reduced. When the value is false, the character is not crouching.

Is Moving:

This boolean value is responsible for defining whether the character is currently in motion or not. When the value is true, the character is moving. When the value is false, the character is stationary.

Jumping:

This boolean value determines whether the character is currently in a jumping state or not. When the value is true, the character is jumping. When the value is false, the character is not jumping.

Sequence Pose Crouching Holstered:

This variable controls the animation sequence of a player's character model when the character is in a crouching position and their weapon is holstered.

Sequence Pose Crouching Aimed:

This variable defines the animation sequence of a player's character model when the character is crouching and their weapon is aimed.

Owner:

This variable determines the owning player of a given actor or component.

Actor Weapon:

This variable represents the weapon that is currently equipped by the player's character.

Horizontal Movement Smoothed:

This numerical variable controls the amount of smoothing applied to the character's horizontal movement.

Vertical Movement Smoothed:

This numerical variable controls the amount of smoothing applied to the character's vertical movement.

Angle:

This numerical value determines the angle at which the player's character is currently facing.

Data Table Animation Poses:

This variable represents a table of animation poses that may be used to create a more dynamic and immersive gameplay experience.

Angle Smooth:

This numerical value is responsible for defining the smoothed angle at which the player's character is currently facing.

Settings Animation:

This variable stores the settings for the game's animation system, including various configuration options for animation effects.

Data Table Sequences:

This variable represents a table of animation sequences that may be used to create a more dynamic and immersive gameplay experience.

Angle Smooth Interp Speed:

This numerical value is responsible for defining the interpolation speed applied to the character's smoothed angle.

Lowered:

This boolean variable defines whether the character's weapon is currently lowered or not. When the value is true, the character's weapon is lowered.

Holster State:

This boolean value determines whether the character's weapon is currently in a holstered state or not. When the value is true, the character's weapon is holstered.

Standing Ready:

This boolean variable determines whether the character is in a standing position and is ready to use their weapon or not. When the value is true, the character is in a standing position and is ready to use their weapon.

Lean Alpha:

This numerical value defines the amount of lean the player's character is currently engaged in. It can be used to create a more dynamic and immersive gameplay experience.

Current Recoil Rotation:

This variable represents the current rotation of the character's weapon due to recoil.

Current Recoil Location:

This variable represents the current location of the character's weapon due to recoil.

Target Recoil Rotation:

This variable represents the target rotation of the character's weapon due to recoil.

Target Recoil Location:

This variable represents the target location of the character's weapon due to recoil.

Recoil State Weapon:

This structure represents all of the data we have acquired related to the recoil of the weapon based on the player's current state.

Shot Count:

This numerical value tracks the number of shots fired by the player's character.

Spring State Recoil Rotation:

This variable represents the spring state of the character's weapon due to recoil in terms of rotation.

Spring State Recoil Location:

This variable represents the spring state of the character's weapon due to recoil in terms of location.

Sequence Pose Crouching Ready:

This variable defines the animation sequence of a player's character model when the character is in a crouching position and is ready to use their weapon.

Turning Amount:

This numerical value defines the amount of turning the player's character is currently engaged in.

Turn Target:

This variable represents the target turn location of the player's character.

Viewmodel Animated Offsets:

This variable represents the offsets applied to the player's view model for the purposes of animation.

Standing Location Lag:

This variable defines the lag time between the player's character model and the player's camera position in a standing state.

Current Look Offset Location:

This variable represents the current location of the player's look offset.

Standing Rotation Lag Rotator:

This variable defines the lag time between the player's character model and the player's camera position in a standing state.

Aiming Rotation Lag Rotator:

This variable defines the lag time between the player's character model and the player's camera position in an aiming state.

Standing Movement Rotation Lag Rotator:

This variable defines the lag time between the player's character model and the player's camera position when the player's character is moving in a standing state.

Aiming Rotation Lag:

This variable defines the amount of lag applied to the rotation of the player's character model when the player is in an aiming state.

Spring State Aiming Lag Rotation:

This variable represents the spring state of the lag applied to the rotation of the player's character model when the player is in an aiming state.

Camera Pitch Acceleration:

This numerical value defines the rate at which the player's camera pitch accelerates.

Settings Scope:

This variable stores the settings for the game's scope system, including various configuration options for scope effects.

Aiming Movement Location Lag:

This variable defines the lag time between the player's character model and the player's camera position when the player is moving in an aiming state.

Spring State Aiming Movement Lag Location:

This variable represents the spring state of the lag applied to the location of the player's character model when the player is moving in an aiming state.

Aiming Movement Rotation Lag Rotator:

This variable defines the lag time between the player's character model and the player's camera position when the player is moving in an aiming state.

Aiming Movement Rotation Lag:

This variable defines the amount of lag applied to the rotation of the player's character model when the player is moving in an aiming state.

Spring State Aiming Movement Lag Rotation:

This variable represents the spring state of the lag applied to the rotation of the player's character model when the player is moving in an aiming state.

Spring State Standing Movement Lag Location:

This variable represents the spring state of the lag applied to the location of the player's character model when the player is moving in a standing state.

Spring State Standing Movement Lag Rotation:

This variable represents the spring state of the lag applied to the rotation of the player's character model when the player is moving in a standing state.

Standing Movement Rotation Lag:

This variable defines the lag time between the player's character model and the player's camera position when the player is moving in a standing state.

Standing Rotation Lag:

This variable defines the lag time between the player's character model and the player's camera position in a standing state.

Spring State Standing Lag Rotation:

This variable represents the spring state of the lag applied to the rotation of the player's character model in a standing state.

Spring Data Look Offset Rotation:

This variable represents the spring data of the player's look offset rotation.

Spring State Lag Look Offset:

This variable represents the spring state of the player's look offset.

Character Input Movement Smooth:

This variable defines the amount of smoothing applied to the character's movement.

Character Input Look:

This variable represents the player's look input.

Aiming Location Lag:

This variable defines the lag time between the player's character model and the player's camera position when the player is in an aiming state.

Spring State Aiming Lag Location:

This variable represents the spring state of the lag applied to the location of the player's character model when the player is in an aiming state.

Clamped Yaw Input:

This numerical value defines the clamped yaw input of the player's character.

Using Gamepad:

This boolean value determines whether the player is currently using a gamepad or not. When the value is true, the player is using a gamepad.

Spring Data Look Offset Location:

This variable represents the spring data of the player's look offset location.

Spring State Look Offset Location:

This variable represents the spring state of the player's look offset location.

Pitch:

This numerical value defines the pitch of the player's character.

Spring State Standing Lag Location:

This variable represents the spring state of the lag applied to the location of the player's character model in a standing state.

Turn Rate:

This numerical value defines the rate at which the player's character turns.

Mapped Speed:

This numerical value represents the mapped speed of the player's character.

Character Input Movement:

This variable represents the movement input of the player's character.

Previous Pitch:

This numerical value represents the previous pitch of the player's character.

Settings Grip:

This variable stores the settings for the game's grip system, including various configuration options for grip effects.

Look Moving:

This value tells us the looking rotation of this character.

Root Yaw Moving Smooth:

This numerical value defines the smoothed root yaw of the player's character when they are moving.

Third Person:

This boolean value represents whether the player is currently in a third-person view or not. When the value is true, the player is in a third-person view.

Turning Rotation:

This variable represents the turning rotation of the player's character.

Leaning Rotation:

This variable represents the leaning rotation of the player's character.

Fully Holstered:

This boolean is true whenever the character's items are fully holstered, meaning that their holster animation has played up to the correct point.

Look Offset:

This variable stores the Blendspace that represents the aim offset for the currently equipped item.

Holster In:

This boolean variable determines whether the player's character is engaged in a state of running or not. When the value is true, the character will move at a greater velocity and animate with a running motion. When the value is false, the character's movement speed and animation will correspond to a slower pace.

Holster Out:

This boolean variable determines whether the player's character is engaged in a state of running or not. When the value is true, the character will move at a greater velocity and animate with a running motion. When the value is false, the character's movement speed and animation will correspond to a slower pace.

Jog Playrate:

This variable is set to the playrate needed for jogging, which we get from the “Get Jog Play Rate” function.

Sprint Playrate:

This variable is set to the playrate needed for sprinting, which we get from the “Get Sprint Play Rate” function.

Tactical Sprinting:

This variable is true when the player character is tactical sprinting.


Last updated

Was this helpful?