Point Cloud Rendering Size

Hi! 1. We are using an XR Open Brush build for our art project and somehow each time we try to import an .obj it cannot be imported from the Media Library because Open Brush considers it .fbx format for some reason and returns an error saying that FBX format cannot be imported. Is there any fix for that? 2. We also integrate point clouds into our artwork, but they appear too sparse for shapes to be recognizable. Is there any way to increase the points' size in Open Brush? Not the actual size of course as they do not have one but just have them displayed as bigger points.))) Thank you!
48 Replies
andybak
andybak3y ago
So - from a quick test, it seems that larger points slow down rendering as they get bigger. The question is - does that compensate for the fact you can have less points And that probably depends a lot on your scene. i.e. how close do the point clouds get to the camera? What's the most points visible at any given time Ideally we'd have a setting that you could change in the app live - but considering your exhibition is in a couple of weeks, it would be quicker and easier to hardcode a value and do you a special build @Kelbas Do you have Unity installed? If you could run it in PC VR and try your scene out, you might be able to find a nice value to try. I could then bake that into a build
andybak
andybak3y ago
See how the framerate drops
Kelbas
KelbasOP3y ago
That would be just awesome! Yes I have Unity installed! We import our scene and try to tweak it then! Yep, fps drops considerably! But our models are considerably smaller, yours is 11M polys and we aim to have around 4M for the whole scene
andybak
andybak3y ago
yeah but this is running on a 3080, not a Quest!
Kelbas
KelbasOP3y ago
OK) Sorry)
andybak
andybak3y ago
Just looking at Keijiro's shader. He's using quite a lot of triangles per particle. I could probably make them square or hex and get some fps back
andybak
andybak3y ago
Squares look ok
No description
Kelbas
KelbasOP3y ago
Yeah, squares look absolutely fine! If you could do that that would be great!
Kelbas
KelbasOP3y ago
So we run some test in Unity with a Pcx - Point Cloud Importer/Renderer for Unity. We were unable to watch in Quest because changing of a point size does not work under D3D11 graphic API and Oculus XR in its turn does not work without it. But on the PC screen 0.07 Point Size looks good. I am not sure how much it would hit fps of course
No description
andybak
andybak3y ago
GitHub
Quick switch to disk rendering for point clouds with size optimized...
Open Source Fork of Tilt Brush. Contribute to IxxyXR/open-brush development by creating an account on GitHub.
andybak
andybak3y ago
I've got to go out otherwise I'd try it myself
Kelbas
KelbasOP3y ago
Sure! I will try it!
Kelbas
KelbasOP3y ago
Also 0.05 size looks nice
No description
andybak
andybak3y ago
OK. I've just tried it and the framerate isn't great. However a big win would be to strip out all the ground points and replace them with a low-poly ground mesh After that you could use CloudCompare to thin out some of the points that are close to other points. Assuming you want it to be displayed at close to life-size I don't think you can take the point size down any more. Maybe splitting it up into smaller point clouds would allow frustrum culling to lighten the load. Not sure about this. Other than that - if you're still not happy. How wedded are you to it specifically being a point cloud rather than a mesh?
andybak
andybak3y ago
I have seen more optimized algorithms for displaying point clouds. But none that are easy to integrate in the next couple of weeks. https://github.com/potree/potree is incredible - it can display millions of points in a headset even though it runs in a browser.
GitHub
GitHub - potree/potree: WebGL point cloud viewer for large datasets
WebGL point cloud viewer for large datasets. Contribute to potree/potree development by creating an account on GitHub.
Kelbas
KelbasOP3y ago
Yes, we tried it too today, because yesterday we had to leave the premises which we work in earlier. Actually once we tried to import a model fps dropped to the point that it all started to glitch. But we were able to see that point were actually bigger. We can use models as well but we did manage to import any yet because each time we get that "fbx" error. We would like to work further on the project expansion after the exhibition, so if you get that marvellous Potree algorithms integrated at some point please let us know=) Thank you so much for being helpful and responsive!
andybak
andybak3y ago
Can you send me one of the fbx models that won't import? And definitely check out CloudCompare for optimizing point clouds.
Kelbas
KelbasOP3y ago
Here you go! I send it via WeTransfer because Discord won't let to send files bigger then 8mb https://we.tl/t-OgsKElsusR
fro vr/shevchenko.mtl and 2 more files
3 files sent via WeTransfer, the simplest way to send your files around the world
Kelbas
KelbasOP3y ago
Cloud Compare seems both great and complicated=) But we try it out of course! Also if that model is imported into the desktop version of Open Brush there it works without issues
andybak
andybak3y ago
No description
andybak
andybak3y ago
Only the experimental build for the Quest supports importing models - and then only some in glb/gltf format We have a branch with an updated glb importer but obj isn't supported So - convert that model to glb/gltf in Blender (which is a much better format generally) If you still have problems importing it using the experimental mode build - then try the new importer here: But if you need the new importer AND the modifications to point cloud display - I'll need to do you a build that contains both
andybak
andybak3y ago
GitHub
Feature/gltfast openxr · icosa-gallery/open-brush@14dbebf
Open Brush is the FREE community led successor to Tilt Brush! - Feature/gltfast openxr · icosa-gallery/open-brush@14dbebf
Kelbas
KelbasOP3y ago
OK, I see! Thanks for the hint! We tried GLB and it gets imported but it is colourless. Both texture and vertex colours are not working. A different random GLB model from the Sketchfab also gets imported successfully but without any colours
andybak
andybak3y ago
Yeah. Can confirm you'll need to use the new importer. It works with that. So - if you think you can optimize the point cloud enough to get the frame rate acceptable, then I can do a build for you that has the new importer and the point cloud tweaks. Just let mw know
Kelbas
KelbasOP3y ago
Yes, the build with the new importer works! I think we can try to do our best to optimize the cloud with Cloud Compare, not 100% sure where it gets us but we will try! ))) If you could do the build with tweaks for point cloud that would be awesome! We can make the cloud more sparse without much problem within Reality Capture - do you think that can work? Though that can affect shape as well. How do you think we can optimize it - just have less point? If yes we can try and then send it to you and if it works then maybe you could do the build with cloud tweaks
andybak
andybak3y ago
Yeah. Reality Capture will work. Why not convert the cloud to a mesh as well?
Kelbas
KelbasOP3y ago
We'd just like to use point clouds to support the artistic concept we have. So the burned enemy's tanks photogrammetry we made are supposed to be point clouds to show they have no power no more and civilian objects are models or smth like that. But if we fail with point clouds we will use models
andybak
andybak3y ago
Yeah. That makes sense. Although I wonder if a mesh with a shader on it to "simulate" point clouds could work? If you get desperate it might be worth considering @Kelbas - I'll get a build made today
Kelbas
KelbasOP3y ago
Fantastic!
andybak
andybak3y ago
GitHub
Merge remote-tracking branch 'origin/feature/point-cloud-options' i...
Open Source Fork of Tilt Brush. Contribute to IxxyXR/open-brush development by creating an account on GitHub.
Kelbas
KelbasOP3y ago
We are on it! Thank you! So we tried the Oculus Experimental build and we didn't manage to import GLB models. Point clouds get imported but once dragged into the scene they crash the Quest
andybak
andybak3y ago
that's odd. I'll try. Did all glb models fail? Shall I try on the one you sent me?
Kelbas
KelbasOP3y ago
shevchenko.glb
1 file sent via WeTransfer, the simplest way to send your files around the world
Kelbas
KelbasOP3y ago
And point clouds seem to crash Quest as well
andybak
andybak3y ago
So - 1. the glb loads fine for me. What happens for you? 2. The point cloud import is broken in this version. I think the new GLTF loader is interfering with it. I'll take a look.
Kelbas
KelbasOP3y ago
With us it fails to load. It just shows ❌ in the models menu. But we try again
andybak
andybak3y ago
remind me when your new deadline is?
Kelbas
KelbasOP3y ago
On the 29th we have the opening) We tried GLB importing again and it works if you import a single model but once another model is imported it crushes.
andybak
andybak3y ago
Ah! Thanks. I just tried one and assumed it was working. Two different models or the same model added to the sketch twice?
Kelbas
KelbasOP3y ago
Different ones
andybak
andybak3y ago
@Kelbas can you try loading two simpler files? I'm wondering if it's just running out of RAM or something. I got stuck on another issue today so I haven't tried it myself yet but that was the first things i was going to try @Kelbas - yeah. I just tried loading 4 different glbs (2 copies of the head you sent, and two others) and it worked fine. So - something specific to the models you're using? What's the one that it's the scuplture head? (one bug i found - when you save a scene with glbs in using the new importer - reloading is buggy. you have to reload twice. first time results in an empty scene) I suspect it's just timing out somewhere
Kelbas
KelbasOP3y ago
Hm, we tried it again and it worked this time, actually. Have no idea what it was before. But point clouds still not working
andybak
andybak3y ago
Yeah. I'll take a look at that today but no promises. I've no idea what's causing it and this part of the code is tricky.
Kelbas
KelbasOP3y ago
OK, great, thanks!
andybak
andybak3y ago
Might have solved the point cloud compatibility with the new gltf loader. Just doing a build now.
Kelbas
KelbasOP3y ago
Awesome news! Hi! Did it work with the build?)
andybak
andybak3y ago
Ah. I didn't get a chance to test it but it's here if you want to: https://github.com/IxxyXR/open-brush/actions/runs/3135122939#artifacts
Kelbas
KelbasOP3y ago
Great!

Did you find this page helpful?