Skip to main content

Box

Base:
UBlueprintFunctionLibrary
Type:
UNBoxPickerLibrary / FNBoxPicker
Header File:
NexusActorPools/Public/NBoxPickerLibrary.h

Box: Next Density

Provides various functions for generating points inside or on the surface of the FBox (axis-aligned) using different random generation strategies (deterministic, non-deterministic, seeded).

The UNBoxPickerLibrary wraps the native FNBoxPicker functionality in a Blueprint friendly manner. Should you be wanting to utilize a picker in native code it is best to directly reference FNBoxPicker directly to avoid the abstraction layer as it has a similar API.

Methods​

Next Point​

Box: Next Box: Next Projected

Gets the next deterministic point inside or on an FBox.

info

Uses FNRandom::Deterministic to ensure reproducible results.

Random Point​

Box: Random Box: Random Projected

Gets a random point inside or on an FBox.

info

Uses FNRandom::NonDeterministic to produce pseudo-random results.

One-Shot Point​

Box: One-Shot Box: One-Shot Projected

Gets a random point inside or on an FBox using a one-shot seed.

Tracked Point​

Box: Tracked Box: Tracked Projected

Gets a random point inside or on an FBox using a tracked seed. The seed altered for each Count.

FNBoxPickerParams​

warning

It is important to be aware of the performance penalty when using MinimumBox. It is only included for special use cases where absolutely necessary. It can also create biased results when selecting points as it has to create a series of FBox first which can be used; their shapes and sizes are directly related to the inner dimensions.

Base​

ParameterTypeDescriptionDefault
CountintThe number of points to generate in a single pass.1
CachedWorldTObjectPtr<UWorld>The world for line tracing and drawing.
ProjectionModeENPickerProjectionModeShould the point be projected somewhere?ENPickerProjectionMode::None
ProjectionFVectorDirection and distance for the line trace.FVector(0,0,-500.f)
CollisionChannelTEnumAsByte<ECollisionChannel>The collision channel to use for tracing.ECC_WorldStatic

Box​

ParameterTypeDescriptionDefault
OriginFVectorThe center point when attempting to generate new points.FVector::ZeroVector
MinimumBoxFBoxThe minimum dimensions to use when generating a point.FBox(ForceInit)
MaximumBoxFBoxThe maximum dimensions to use when generating a point.FBox(ForceInit)