Large and Multiple Models Handling: Progressive Loading with Dynamic Detail, and Selective Loading

We are exploring best practices for handling very large assemblies in HOOPS Communicator. Could you please guide us on:

  1. How to properly implement progressive loading so that geometry streams in a usable way while details refine dynamically?

  2. How to configure and manage dynamic detail loading, ensuring model performance scales well with large datasets?

  3. How to implement query-based selective loading — specifically, loading only the selected nodes from a hierarchy table, and extending this across multiple files/models?

Any recommended APIs, workflows, or reference examples for these scenarios would be very helpful.

For #1 and #2, these points sound like what is already implemented in the Stream Cache Server for streamig non-SCS files. That is, the server will stream the “most important” foreground parts of the model, such as zoomed-in areas. The model will continue to stream as needed.

For #3, our recommendation is to take a look at Shattered Workflows. This workflow decouples the individual part models from the assembly files.

I want to know the behaviour of below functions

loadSubtreeFromXMLFile
loadSubtreeFromXMLBuffer
loadSubtreeFromScsXMLFile
loadSubtreeFromScsXMLBuffer

do they stream shattered files directly from storage or from SC Server?

also I want to know if Shattering can be implemented directly on Server not on client (like using these functions on client)?

The first two methods load Stream Cache (SC/SCZ) files while the bottom two load SCS files. SCS is the file-based version of the Stream Cache file. As such, SCS files do not need the SC server. Regular Stream Cache (SC/SCZ) do require the SC Server.

I think what you are referring to in using shattered mode on the server is to create a master model on the server. This is discussed in the link I included previously.

I am not getting these function from hoops library

loadSubtreeFromXMLFile
loadSubtreeFromXMLBuffer
loadSubtreeFromScsXMLFile
loadSubtreeFromScsXMLBuffer

What version of Communicator are you using?

HOOPS_Communicator_2025.2.0_Linux

As a quick update, I can reproduce the issue on HC 2025.2.0. The aforementioned functions are in HC 2025.3.0 and more recent versions.

Earlier, about 3-4 months ago, I was using version 2025.3.0, but I encountered similar issues (I don’t recall the exact details but some files or functions was missing) and downgraded to 2025.2.0.

Thanks for the additional context of using HC 2025.2.0. Indeed, there may have been other issues with HC 2025.3.0. That said, as it relates to to the XML function variants, they were not exported in HC 2025.2.0.