- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Report Inappropriate Content
Hi folks,
Trying to extend the sample application for Scene Perception in Unity with a feature to save and load state of the ScenePerception module. I can successfully save state using SaveCurrentState(), but when I try to load the state in the next session the function reports success but it doesn't seem to do anything.
What are the prerequisites for loading state? I have set up a SenseManager instance and call LoadState before i do Init(). Do I need to do anything else to load the mesh into Unity before I can start meshing in DepthFusion?
Tried to read up in the SDK documentation but it was quite terse on the subject. Any pointers much appreciated!
Thanks,
Anders
Link Copied
- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Report Inappropriate Content
Alright,
So I figured this out. Turns out I need to call LoadState before Init but after QueryScenePerception and EnableScenePerception.
Now, I can save and load the state of the ScenePerception module, but some interesting things pop up.
- The maximum number of block meshes that can be loaded is 16384, roughly equivalent to a space of 2x2x2m, even though I was able to capture a mesh that was considerably larger than that (6x8x2m).
- The save file is larger for scenes that have more information than 2x2x2m, suggesting that some data is in fact saved.
- While the meshing/reconstruction does not seem to be able to recover state from large scenes, the tracking clearly does! For instance, it can correctly track position in spaces that were meshed in a previous session.
Is there a way to overcome this limitation of 16384 block meshes, for instance by requesting block meshes in chunks by setting one 2x2x2m area at a time with SetMeshingRegion?

- Subscribe to RSS Feed
- Mark Topic as New
- Mark Topic as Read
- Float this Topic for Current User
- Bookmark
- Subscribe
- Printer Friendly Page