RealDocs

UImportanceSamplingLibrary::NextSobolCell3D

function Engine Blueprint Since 5.0
#include "Kismet/ImportanceSamplingLibrary.h"
Access: public Specifiers: staticUFUNCTIONBlueprintPure

Description

Advances a 3D Sobol cell sequence to the next point using the previous sample, avoiding recomputation from index 0.

Caveats & Gotchas

  • PreviousValue must be the actual result returned for Index-1 in the same cell; arbitrary values break the incremental math.
  • NumCells must match the value used to produce PreviousValue.
  • Only valid for consecutive indices within a single cell.

Signature

static FVector NextSobolCell3D(int32 Index, int32 NumCells = 1, FVector PreviousValue = FVector(0,0,0))

Parameters

Name Type Description Default
Index int32 Which sequential point in the cell (the point being advanced to).
NumCells int32 Size of the cell grid, 1 to 1024. Rounded up to the next power of two. 1
PreviousValue FVector The Sobol value returned for Index-1 in the same cell. FVector(0,0,0)

Return Type

FVector

Example

Step through samples in a 3D cell C++
FVector Point = UImportanceSamplingLibrary::RandomSobolCell3D(0, 4, FVector(0,0,1));
for (int32 i = 1; i < 16; ++i)
{
    Point = UImportanceSamplingLibrary::NextSobolCell3D(i, 4, Point);
}

Tags

Version History

Introduced in: 5.0

Version Status Notes
5.6 stable

Feedback

Was this helpful?

Suggest an edit

Select a field above to begin editing.