Data Flow



How it all works

It is not necessary to know those details to work with the Point Cloud Kit, but it gives you better understanding how the data internally is processed. There are two slightly different data flows, depending on if the PCD was set to generating the data by Material or not.


PCD by Blueprint, Cube data, File or Mesh

The imported data will be loaded to the PointLocations and PointColors arrays on the PointCloudSystemComponent. Then the data will be copied to two Texture2D objects (CPU), which will be used for the InitLocations and InitColors TextureParameters inside the PCA Material. After that the Texture2D will be copied into RenderTargets (GPU) to used them for the animation. The RenderTargets are also passed into the Material, which was set on the Required module of the Particle System.



PCD by Material

Because a PCD by Material will directly render into a RenderTarget, the data needs to be read back to the PointLocations and PointColors arrays and copied to the Texture2D objects afterwards.



Independent of the Particle System

Note that the framework for calculating the locations and colors is separated from the actual Particle System, it will just be used to render the Points based on the passed in RenderTargets.