Table of Contents

Class PathFollow2D

Namespace
Godot
Assembly
GodotSharp.dll

This node takes its parent Path2D, and returns the coordinates of a point within it, given a distance from the first vertex.

It is useful for making other nodes follow a path, without coding the movement pattern. For that, the nodes must be children of this node. The descendant nodes will then move accordingly when setting the Progress in this node.

public class PathFollow2D : Node2D, IDisposable
Inheritance
PathFollow2D
Implements
Inherited Members

Constructors

PathFollow2D()

public PathFollow2D()

Properties

CubicInterp

If true, the position between two cached points is interpolated cubically, and linearly otherwise.

The points along the Curve2D of the Path2D are precomputed before use, for faster calculations. The point at the requested offset is then calculated interpolating between two adjacent cached points. This may present a problem if the curve makes sharp turns, as the cached points may not follow the curve closely enough.

There are two answers to this problem: either increase the number of cached points and increase memory consumption, or make a cubic interpolation between two points at the cost of (slightly) slower calculations.

public bool CubicInterp { get; set; }

Property Value

bool

HOffset

The node's offset along the curve.

public float HOffset { get; set; }

Property Value

float

Loop

If true, any offset outside the path's length will wrap around, instead of stopping at the ends. Use it for cyclic paths.

public bool Loop { get; set; }

Property Value

bool

Progress

The distance along the path, in pixels. Changing this value sets this node's position to a point within the path.

public float Progress { get; set; }

Property Value

float

ProgressRatio

The distance along the path as a number in the range 0.0 (for the first vertex) to 1.0 (for the last). This is just another way of expressing the progress within the path, as the offset supplied is multiplied internally by the path's length.

public float ProgressRatio { get; set; }

Property Value

float

Rotates

If true, this node rotates to follow the path, with the +X direction facing forward on the path.

public bool Rotates { get; set; }

Property Value

bool

VOffset

The node's offset perpendicular to the curve.

public float VOffset { get; set; }

Property Value

float

Methods

HasGodotClassMethod(in godot_string_name)

Check if the type contains a method with the given name. This method is used by Godot to check if a method exists before invoking it. Do not call or override this method.

protected override bool HasGodotClassMethod(in godot_string_name method)

Parameters

method godot_string_name

Name of the method to check for.

Returns

bool

HasGodotClassSignal(in godot_string_name)

Check if the type contains a signal with the given name. This method is used by Godot to check if a signal exists before raising it. Do not call or override this method.

protected override bool HasGodotClassSignal(in godot_string_name signal)

Parameters

signal godot_string_name

Name of the signal to check for.

Returns

bool

InvokeGodotClassMethod(in godot_string_name, NativeVariantPtrArgs, out godot_variant)

Invokes the method with the given name, using the given arguments. This method is used by Godot to invoke methods from the engine side. Do not call or override this method.

protected override bool InvokeGodotClassMethod(in godot_string_name method, NativeVariantPtrArgs args, out godot_variant ret)

Parameters

method godot_string_name

Name of the method to invoke.

args NativeVariantPtrArgs

Arguments to use with the invoked method.

ret godot_variant

Value returned by the invoked method.

Returns

bool