Limits of output size

Following up on my previous post, I’m specifying my questions regarding the problems, that are occuring on my current project. I suspect to hit the limit of 20mb for output size to the viewer for specific parameter sets.

  1. Is there a way to live check in the browser how much data gets sent to the viewer? Not only during initial upload but with changing parameter sets.
  2. Is my assumption correct, that externally hosted meshes count towards that?
  3. Is it correct, that copies of those meshes, which are transformed in the viewer (via the C# scripts provided by Shapediver - externally hosted or internally stored/generated) are not counted?

I’m referring to the following section of this post:

Output size

The geometry that is sent to the viewer corresponds to all the components that are enabled for Preview in the Grasshopper canvas. In the form of meshes (converted from b-reps if needed), they are sent for rendering in the ShapeDiver online viewer. Depending on your plan, ShapeDiver enforces a limit on the total size of all outputs that are sent to the viewer:

  • Basic: max. 10mb
  • Pro: max. 20mb
  • Enterprise: custom

The upload will be denied if the output size of the checks is bigger than the limit of your plan.

1.There is no direct way to check the total output size of your model, but you can easily write a script to do it for you. First loop through all the assets of your scene and identify the ones containing geometry in their content array (glb format). Each glb item of the content array has a size property. If you add all of them together, you should get a pretty accurate picture of the total output size of your definition. In summary, do something like this:

let totalOutputSize=0;
let assets = api.scene.get(null,"CommPlugin_1").data;
  let items = asset.content;
    if (item.hasOwnProperty("size")) totalOutputSize+=item.size;

2.The external meshes do not count towards this count.

3.The transformed versions of the meshes do not count either.

However, I don’t think this is really the problem of your definition. You might want to look at these other limitations regarding the number of outputs:

For example, find out the total number of outputs like this:

let nOutputParts=0;
let assets = api.scene.get(null,"CommPlugin_1").data;
  let items = asset.content;

If your problem persists, there might be an unidentified issue, in that case get in touch with us.

1 Like

Hi @mathieu1,

Thanks for your extensive reply! We’ve been checking the model thoroughly but can’t identify any of the limits being hit. We are still getting the “We are sorry, results for these parameter values cannot be displayed” error on some parameter sets.
Is the conclusion, that it has to be the computation limit? On my laptop (Dell XPS 15 i7-9750H) the definition takes about 6.5 seconds to recompute. Are we exceeding the 10s limit on your servers?
Is there a way to check this?

Best, Simon

Can you post the link to the model on ShapeDiver? We can have a look in the server logs and try to get more details about the error.

Sure, it’s
Thanks for looking into it!

I couldn’t find an indication to a problem in our logs yet. Could you post a set of a parameters for which this problem happens?

It doesn’t seem to be strictly related to a specific set of parameters. Meaning that sometimes I get this error by simply changing the first parameter (length) and some other times the error doesn’t occur at all no matter the parameter changes.

Hi @snabela,
I’ve uploaded a new version of the file and with this one I can reliably reproduce the error.
The Error occurs when the parameter “ALLGEMEIN_8_LICHTDACH” is set to true after initializing the model. Here is the link:

Your model seems to sometimes, for whatever reason, reach the 10sec computation time limit. I have configured it just now to be “trusted”, which means solutions which have previously timed out will be scheduled for another try of computation. It seems this has solved the problem with parameter “ALLGEMEIN_8_LICHTDACH” described above.

Thank you @snabela,
This indeed seems to have solved the problem. However, with an updated model I get the same error again. This time when changing the parameter “System Titleblock Aktiv” to true. Any chance you can configure this model to be trusted to see if that fixes it.

Your model seems to scratch on the computation time limit of 10 seconds. Setting our internal “trust” property is not a good solution to this, as the first computation will still fail. These are the options that could be pursued:

  1. Optimize the model (if you need help on that, please get in touch with Ezequiel)
  2. Upgrade your account to a higher computation time limit (if you are interested in this, again please contact Ezequiel)

O.k. I agree, I’m in touch with Ezequiel. Thank you for your help!

1 Like