Latest improvements in runtime operations allow for blueprint-driven, dynamic generation, injection, modification and removal of points.
Highly experimental - performance still very much sub-optimal at this point. 980Ti and 5960x@4.0 animate these 6000 points at ~55FPS
Cool plugin, works quite well so far and the results in VR are good as well. When I try to import a bigger (12gb) pointcloud, the engine crashes without error message. (except for: You do not have any debugging symbols required to display the callstack for this crash)
It’s a .PTS export from Register360, renamed to .TXT. Two other pointclouds work fine, so I’ll fiddle around some more. Any tips are appreciated though. Perhaps the 0.5 release with 4.20 will resolve this.
I’m hoping this plugin will become better and better and give us smooth results in VR with large pointclouds. We’ve got some great surveying laserscanner data that we’d like to work with.
It should load correctly, assuming the source file is not corrupted. The largest I’ve loaded was nearly 30GB. Keep in mind you may need a LOT of system RAM to keep that much data in.
That message means you haven’t installed the debugging components for this version of the engine.
Could you send me first several lines from the file, including header (if any)? This may help me identify if there are any formatting issues.
That’s definitely the idea!
I have attached the first few lines as shown through Cyclone importer. Not sure what other editor you’d recommend for opening a large .txt file, they all say the file is too large. It’s a 11.2GB file and I’ve also got a 2.5GB reduced version (80m points), which imports fine. It was probably the point count limit that was reached and crashed it?
Also sometimes when I switch over to sprites, parts of the cloud gets cut off. I’m assuming this is because of current limitations:
CURRENT LIMITATION: For the time being, the maximum sizes per point cloud object are: Sprites: 33,554,430 Sprites LP: 67,108,860 Points: 134,217,720 Points LP: 268,435,440
We will keep a close eye on this!
Thanks, I’ll have a look
This limitation only applies to v0.5, in 0.4 the limit is dictated by the VRAM of your GPU.
Oh right! Sorry about that, I was reading 0.5 notes while I’m using version 0.4.2 of the plugin with a GTX 1080.
@Janitorus To calculate how much of the point cloud you can pack in your GPU, use the breakdown below:
As Points
Full Precision: 20 bytes
Half Precision: 12 bytes
As Sprites
Full Precision: 88 bytes
Half Precision: 56 bytes
Values are per point. Current visibility of the point does not impact this, as 0.4 kept the rendering resources pre-allocated in the VRAM.
@ Excellent, thanks!
One pointcloud today wouldn’t import, first try it crashed. After that it ran out of VRAM but that’s alright. Maybe the log is useful for you:
Access violation - code c0000005 (first/second chance not available)
UE4Editor_Engine
UE4Editor_Engine
UE4Editor_Engine
UE4Editor_PointCloudRuntime!FPointCloudSceneProxy::FPointCloudSceneProxy() [c:\users\downloads\pointcloudplugin\hostproject\plugins\pointcloudplugin\source\pointcloudruntime\private\pointcloudcomponent.cpp:21]
UE4Editor_PointCloudRuntime!UPointCloudComponent::CreateSceneProxy() [c:\users\downloads\pointcloudplugin\hostproject\plugins\pointcloudplugin\source\pointcloudruntime\private\pointcloudcomponent.cpp:130]
UE4Editor_Renderer
UE4Editor_Engine
UE4Editor_Engine
UE4Editor_Engine
UE4Editor_Engine
UE4Editor_Engine
UE4Editor_Engine
UE4Editor_PointCloudRuntime!APointCloudActor::PostEditChangeProperty() [c:\users\downloads\pointcloudplugin\hostproject\plugins\pointcloudplugin\source\pointcloudruntime\private\pointcloudactor.cpp:103]
UE4Editor_Engine
UE4Editor_UnrealEd
UE4Editor_UnrealEd
UE4Editor_UnrealEd
UE4Editor_UnrealEd
UE4Editor_UnrealEd
UE4Editor_UnrealEd
UE4Editor_UnrealEd
UE4Editor_LevelEditor
UE4Editor_LevelEditor
UE4Editor_Slate
UE4Editor_Slate
UE4Editor_Slate
UE4Editor_Slate
UE4Editor_Slate
UE4Editor_ApplicationCore
UE4Editor_ApplicationCore
UE4Editor_ApplicationCore
UE4Editor_ApplicationCore
user32
user32
UE4Editor_ApplicationCore
UE4Editor
UE4Editor
UE4Editor
UE4Editor
UE4Editor
kernel32
ntdll
UE 4.21 is now supported by v0.5ea!
After experimenting with different point cloud programs I think there’s a difference in how CloudCompare converts file formats. Converting from .ply or .e57 to .txt causes a problem, converting from .ply or .e57 to .xyz doesn’t. Convert from .xyz to .txt or vice versa and the file imports perfectly fine though.
Could you send me a small sample from the PLY/e57 -> TXT export, that causes a problem? Thanks!
For those using 0.5
I just fixed a serious issue causing crashes when rebuilding or importing clouds. I advise you to re-download the updated pack to avoid such unpleasant scenario
Awesome work @, this is really cool!
Brand new to Unreal Engine apart from playing some of the games. When I saw this plugin, I thought it would be ideal way to navigate around some LIDAR data of interest.
Everything works fine, the landscape xyz imports great and went for a walk around amongst the points, looks pretty cool, but not easy to make out what is what.
Is there an easy was to “solidify” the points? Ideally I would like to use different classifications of the point cloud (eg ground, buildings, vegetation, etc) as separate imports, but am I missing something, will I be able to create actual surfaces to apply textures to?
Oh,and is it possible to change the color range applied to the height?
Hi there!
I’m glad you enjoy the plugin.
Converting the points into surfaces (triangulation) is not available yet, but it is on my future Todo list.
It would be ideal if you had access to RGB or at least Intensity data to go with that cloud. Would make it easy to identify different elements then.
You can modify the master material (found in Plugin content) to adjust the color range or, if you just want to modify it for a single cloud, create a copy of the master material, tweak the colors to your liking in the copied version and then assign the modified one as custom material to the point cloud in question (expand the Rendering section of the settings).
Thanks for the suggestion, I will try to add the ability to allow modifying the color range directly through settings to simplify the process
Thanks for the pointers, I have intensity and some rough classifications so I wrote an awk script to set RGB according to classification number, so buildings are Orange, trees were supposed to be green and the ground brown, but I guess I switched those :D. I need to so some better classification but I would really want want the ground on the buildings to be solid enough to walk/drive on.
If I triangluate some of these outside UE, what is the best format to import?
btw, stumbled with a few xyz files but later noticed they had headers. do you plan to allow for headers? or did I miss that option?
Cheers
You would load it as a regular Static Mesh, so FBX or OBJ.
More information on how to do it:
Depends on the header, very basic column descriptions are already supported, but more than that and the importer will stumble. If you could send me a sample file containing the header and few lines of points I can add it to the supported list
Hi everyone, just want to contribute to this thread and great plugin. Very early stage for me trying it so far, I still need to read this 15 pages to start with.
But just want to point out what happened for me so far and I m sure I ll find answers about it in this thread, when dragging the point cloud in my scene it crashes unless I save it first and restart my project, also when I re-open my project sometimes the PC is not displayed.
Anyway no big deal so far, I just want to test a few things first to be sure I could integrate it in a project I am working on at the moment.
So I m using a pretty bad PC for now to test if it would work with some bleuprint options, and if it will package well etc…
Skimmed through thread and didn’t see this issue mentioned - if a point cloud is loaded in the level then Volumetric Fog shaders don’t work. The fog just looks like billboards with default material.
Has anyone run into something like this?