Point Cloud Plugin

Due to how the data is stored internally, unfortunately, no. But you could get the next best thing doing the following:

  • Get the first frame of data
  • Generate the initial cloud from it
  • Get pointers to all points
  • Update locations of those pointers with the new data

Overall, something like this:



// You would only do it once after the cloud has been initially created
// Get an array of pointers to all points in the cloud
TArray<FPointCloudPoint*> Points = MyCloud->GetPoints();


// Below you would do per frame
{
    // Grab the pointer to the data - to speed up iteration
    FPointCloudPoint** DataPtr = Points.GetData();

    for(int32 x = 0; x < 640; ++x)
    {
        for(int32 y = 0; y < 480; ++y)
        {
            // Here, you would update the location data
            (*DataPtr)->Location = GetNewLocation(x, y);

            // Iterate to the next point;
            ++DataPtr;
        }
    }
}