Fix a crash when transition when crouching moving to jog
This commit is contained in:
parent
1669d9b7ea
commit
acc9e789f0
@ -1,7 +1,7 @@
|
||||
/Engine=C:/Program Files/Epic Games/UE_5.5/Engine/Shaders
|
||||
/ShaderAutogen=H:/Projects/OLS/Intermediate/ShaderAutogen
|
||||
/NFORDenoise=C:/Program Files/Epic Games/UE_5.5/Engine/Plugins/Experimental/NFORDenoise/Shaders
|
||||
/NNEDenoiserShaders=C:/Program Files/Epic Games/UE_5.5/Engine/Plugins/NNE/NNEDenoiser/Shaders
|
||||
/NFORDenoise=C:/Program Files/Epic Games/UE_5.5/Engine/Plugins/Experimental/NFORDenoise/Shaders
|
||||
/Plugin/GLTFExporter=C:/Program Files/Epic Games/UE_5.5/Engine/Plugins/Enterprise/GLTFExporter/Shaders
|
||||
/Plugin/FX/Niagara=C:/Program Files/Epic Games/UE_5.5/Engine/Plugins/FX/Niagara/Shaders
|
||||
/Plugin/ExrReaderShaders=C:/Program Files/Epic Games/UE_5.5/Engine/Plugins/Media/ImgMedia/Shaders
|
||||
|
Binary file not shown.
Before Width: | Height: | Size: 52 KiB After Width: | Height: | Size: 49 KiB |
@ -93,8 +93,26 @@ FOLSStanceAnimSets UOLSBaseLinkedLayerAnimInstance::GetStanceAnimSets(const bool
|
||||
const FOLSGaitAnimSets& UOLSBaseLinkedLayerAnimInstance::GetGaitAnimSets(
|
||||
const bool isCrouching, const EOLSGait& locomotionState) const
|
||||
{
|
||||
//@TODO: add nullptr log.
|
||||
return *GetStanceAnimSets(isCrouching).SelectGaitAnimSetByGait(locomotionState);
|
||||
const FOLSStanceAnimSets& stanceAnimSets = GetStanceAnimSets(isCrouching);
|
||||
const FOLSGaitAnimSets* result = nullptr;
|
||||
|
||||
// Attempt to select the appropriate gait anim set.
|
||||
result = (isCrouching)
|
||||
? stanceAnimSets.SelectGaitAnimSetByGait(EOLSGait::EWalk)
|
||||
: stanceAnimSets.SelectGaitAnimSetByGait(locomotionState);
|
||||
|
||||
// Log an error if the pointer is null to help debugging.
|
||||
if (!result)
|
||||
{
|
||||
// UE_LOG(LogTemp, Warning, TEXT("UOLSBaseLinkedLayerAnimInstance::GetGaitAnimSets - Failed to find GaitAnimSet for Gait: %d"), static_cast<int32>(locomotionState));
|
||||
// ensureMsgf(false, TEXT("GetGaitAnimSets returned nullptr! Check locomotionState and isCrouching."));
|
||||
|
||||
// Return a fallback or handle the error based on your requirements.
|
||||
return FOLSGaitAnimSets::EmptyAnimSet;
|
||||
}
|
||||
|
||||
// Safely dereference the pointer.
|
||||
return *result;
|
||||
}
|
||||
|
||||
UAnimSequence* UOLSBaseLinkedLayerAnimInstance::SelectIdleAnimation(const bool isCrouching) const
|
||||
|
@ -180,6 +180,8 @@ const FOLSGaitAnimSets* FOLSStanceAnimSets::SelectGaitAnimSetByGait(const EOLSGa
|
||||
return GaitAnimSets.Find(gait);
|
||||
}
|
||||
|
||||
FOLSGaitAnimSets FOLSGaitAnimSets::EmptyAnimSet = FOLSGaitAnimSets();
|
||||
|
||||
const FVector2D& FOLSRootYawOffsetClamp::GetRootYawOffsetClamp(const EOLSStance stance) const
|
||||
{
|
||||
return (stance == EOLSStance::EStanding ? RootYawOffsetClamp_Standing : RootYawOffsetClamp_Crouching);
|
||||
|
@ -250,6 +250,10 @@ public:
|
||||
|
||||
UPROPERTY(EditAnywhere, BlueprintReadOnly, Category = "Gait Anim Sets")
|
||||
FOLSGaitAnimSet_CameraFacing GaitAnimSet_CameraFacing;
|
||||
|
||||
public:
|
||||
|
||||
static FOLSGaitAnimSets EmptyAnimSet;
|
||||
};
|
||||
|
||||
USTRUCT(BlueprintType)
|
||||
|
Loading…
Reference in New Issue
Block a user