UDataTableFunctionLibrary::EvaluateCurveTableRow
#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
} Tags
Version History
Introduced in: unknown
| Version | Status | Notes |
|---|---|---|
| 5.6 | stable | — |
Feedback
Was this helpful?