RealDocs

UDataTableFunctionLibrary::EvaluateCurveTableRow

function Engine Blueprint Since unknown
#include "Kismet/DataTableFunctionLibrary.h"
Access: public Specifiers: staticBlueprintCallable

Description

Evaluates the curve stored in RowName of CurveTable at InXY and returns the interpolated Y value, branching based on whether the row was found.

Caveats & Gotchas

  • OutResult is marked ExpandEnumAsExecs, so in the Blueprint graph it becomes two exec pins ("Row Found" / "Row Not Found") instead of a data output.
  • ContextString only affects log output on failure — pass something identifying the calling context (e.g. the function or asset name) to make errors easy to trace.

Signature

static void EvaluateCurveTableRow(UCurveTable* CurveTable, FName RowName, float InXY, TEnumAsByte<EEvaluateCurveTableResult::Type>& OutResult, float& OutXY, const FString& ContextString);

Parameters

Name Type Description Default
CurveTable UCurveTable* The curve table to evaluate.
RowName FName Name of the row (curve) within CurveTable to evaluate.
InXY float The X value at which to evaluate the row's curve.
OutResult TEnumAsByte<EEvaluateCurveTableResult::Type>& Whether the row was found; drives the node's exec output pins via ExpandEnumAsExecs.
OutXY float& The interpolated Y value at InXY if the row was found.
ContextString const FString& Descriptive string included in warning/error log messages if the lookup or evaluation fails.

Return Type

void

Example

Evaluate a curve row C++
TEnumAsByte<EEvaluateCurveTableResult::Type> Result;
float OutY = 0.f;
UDataTableFunctionLibrary::EvaluateCurveTableRow(MyCurveTable, TEXT("DamageFalloff"), DistanceToTarget, Result, OutY, TEXT("AWeapon::ComputeDamage"));
if (Result == EEvaluateCurveTableResult::RowFound)
{
	// use OutY
}

Version History

Introduced in: unknown

Version Status Notes
5.6 stable

Feedback

Was this helpful?

Suggest an edit

Select a field above to begin editing.