By default, the importer assumes columns to be in XYZ RGB Intensity order, and if you use Create Point Cloud From File node or UPointCloud::CreateFromFile, this is how it will attempt to import the data.
However, you can override the default behavior by using Create Point Cloud From File (ASCII) node or, if using C++, setting up *ImportSettings *parameter for *UPointCloud::CreateFromFile *(look at how UPointCloudFileIO_ASCII::CreatePointCloudFromFile does it for reference).
In there, you can modify the default mapping by providing the desired order of data to use.
So if your data contains XYZ Normals RGB, you would have to specify the following:
LocationX = 0
LocationY = 1
LocationZ = 2
Red = 6
Green = 7
Blue = 8
Intensity = -1
Note the -1 for Intensity - this would instruct the Intensity to be skipped.
Also, if the index is larger than the number of available columns, it will be skipped. For example, if the cloud is only XYZ, but you use the default mapping (XYZ RGB I), it would still apply the XYZ data correctly, then skip RGB and Intensity sources (as their specified Indices will be unavailable).
I hope I understood the question correctly and this answers it ![]()