Point Cloud Plugin

Ah thanks, increasing the point budget has definitely helped but still less points than in the main viewport.

For some reason, increasing the point budget to anything over 9M instantly crashes the editor for me. Btw I’m on macOS if that makes any difference, will test on Windows later.

What are the default values for those 3 czars?

While higher point budgets will require more VRAM (~45 bytes / point), 9M should still be relatively inexpensive - total cost < 400 MB.

Default values are:


r.LidarPointBudget 1000000


r.LidarScreenCenterImportance 0.0


r.LidarBaseLODImportance 0.1

1 Like

Hello, can someone help me with my point cloud? It should look like this (screen is from a viewer called “Displaz”):

https://media.discordapp.net/attachments/619126602088972300/719577475499163728/unknown.png?width=1064

But in UE it looks like this (Color Source: Data):

Where is the problem?

Hey , it could be a number of issues…

In terms of colour - its possible your data does not have colour values in the file? So when you choose the colour setting it is showing white because there is no colour value for each point. I have not used Displaz, but it looks like it is in grayscale/shaded mode in the image above.

In terms of the sparseness, you may find it helpful to see some of the comments above…point cloud in 4.2.5 isnt quite working yet properly…but @ and the team are working on it!

Can you give more information on the data i.e. What format is the data? What did you export it out of? What steps you took to bring it into Unreal. Only if we have more information can we help.

Hi

Further to what @Jay_Dizzla said, the grayscale shading could be coming from Intensity - when you select the point cloud actor, you should be able to adjust the Intensity Influence under section Appearance.

Regarding density, it is generally best to leave the Point Size property at 1 - this should help the LOD system to automatically fill gaps between points. In addition, try increasing the point budget to get better quality. You can do so using a console variable


r.LidarPointBudget xxxxxx

Where xxxxxx is the new budget. The default value is 1000000 (1M), but you should easily be able to push 3-5M on mid-high range GPUs.

Let me know if that helps the issue :slight_smile:

Is there an easy way to hide specific classes?

If you mean classifications, then not yet. We want to add an option to select points by classification for 4.26

Yes, for example not rendering points classified as noise, or only showing points of one classification for inspection would be useful too.

@Jay_Dizzla, @: Increasing the intensity helped, but it still looks far from the “Displaz” screenshot:

The scan is in .las format and does have only grayscale colors (that is ok). You can check the scan file there. Density is ok, that can be adjusted, just that missing contrast (?) is the problem.

Hi @
Is there any way to get a plugin fot the older relase of engine, let’s say 4.23?

First off, very nice plugin!

I’m doing a LiDAR scan of the terrain around my game object in realtime and render the scan results with your plugin.
I followed your workaround, setting the Bucket Size to 1 billion and the bounds extent to 1 million to avoid the LoD bottleneck, but I’ve encountered a problem while rendering my results.

  1. The point size in this image is set to 0.0005f. Otherwise, the points would be HUGE. For comparison, the vehicle is 96x90x66 cm. What’s going on there? Shouldn’t a point size of 1.0f be a 1 cm radius (or diameter)?

  2. In this image, points are inserted using ELidarPointCloudDuplicateHandling::SelectFirst with a " Distance for Duplicate" of 20. This doesn’t seem to work. However, I’m getting this triangle artifact. With ELidarPointCloudDuplicateHandling::Ignore, there are no artifacts, but I’d like to space out my points a little, as you see they are quite dense around the center.

  3. The color is set to ELidarPointCloudColorationMode::Elevation. Is there a parameter to scale the color value? On my terrain, I can’t spot any visual differences in the color of the points, possibly because the height difference is too small.

  4. Is there a workaround for disabling the LoD system without these large bounds? I’d like to use the bounds and set them to the actual size of the point cloud.

Hi there!

  1. The Point Size property is a multiplier applied to the auto-calculated sprite size. The algorithm responsible for calculation uses an estimated local density of the cloud to find the best value to fill the gaps. However, since you set the workaround effectively disables the LOD system, the algorithm cannot do its job correctly - this results in incorrect sizes.

  2. The duplicate handling is only relevant when LODs are generated (it essentially prevents multiple LODs storing points in the same spot), but as with 1. you have disabled the LOD, hence the settings should have no impact on the process. The missing sections, you mentioned, could be a result of the base LOD fighting with itself for the points.

  3. Elevation applies a linear interpolation of colors based on the point’s Z coordinate relative to the Z component of your point cloud’s bounds. If you set those super high, the Z differences between points will be too small to notice

  4. No “correct” solution at this time. Most of the algorithms used are heavily optimized to handle huge, static datasets. We have had some discussion regarding the implementation of something like a dynamic point cloud asset, however, there is no specific timeline for this yet.

If you can estimate your cloud bounds tighter, you should get much better results overall.

@ do you have any idea where can be problem with my “low contrast” point cloud?

Hey, sorry I didn’t get back to you. I’ll hopefully get to it early next week :slight_smile:

Hi There !

I encounter some problems with the rendering of a point cloud, the closer the camera is to the point cloud, the more patch it creates and the density of the cloud is low. is there a parameter to have the same density everywhere?

I tried to play with the values r.LidarScreenCenterIminence and r.LidarBaseLODIminence but no results

I have the min screen size has 0 in performance

as you can see on the last image there is no problem because i am far from the points.

thank you in advance

Fabio


https://forums.unrealengine.com/core/image/gif;base64


https://forums.unrealengine.com/core/image/gif;base64

Hi there :slight_smile:

The LOD dropping closer to the camera is definitely not intended behavior.

What are your Point Size (property on the component) and Point Budget (r.LidarPointBudget) settings?

Would it be possible to get a copy of the project, which suffers from this issue? Ar at least the Point Cloud asset?

Hi ! the point size is ~ 0.5 - 0.6 and lidarbudget 40M Unfortunately i can’t send this file but i have same problem with another personal project, on the viewport the pointcloud look dense and ok but when rendering in create some tile and low the density in some area, the budget was 4,5M the density ( the point cloud is 4,5 M ) :

here is the link for download the files :
https://www.swisstransfer.com/d/ee72…f-d295d15be5d7

Oh, are the issues only present when trying to render the video of a point cloud?
If so, I have already fixed the bug and it will hopefully make it to 4.25.2 :slight_smile:

Yes the issue appears only in the renderer video, in the viewport its ok. ah its a bug ? ok so i will wait for the next update… when will it be approximately ?

Thanks for your support !

No problem!

Yes, it was a bug related to using cine cameras. Don’t have a date for you, but it should be soon :slight_smile: