Pre loader

SciChart3DSurface - maximum number of data points?

Welcome to the SciChart Forums!

  • Please read our Question Asking Guidelines for how to format a good question
  • Some reputation is required to post answers. Get up-voted to avoid the spam filter!
  • We welcome community answers and upvotes. Every Q&A improves SciChart for everyone

WPF Forums | JavaScript Forums | Android Forums | iOS Forums

1
0

If I plot a SciChart3DSurface using UniformGridDataSeries3D to plot a SolidMesh – what is the maximum number if data points I can plot?

If I plot 16385 on x and 32 on z I get the debug message:

SciChart3DSurface didn’t render, because an exception was thrown:
Message: Grid mesh size exceeds hardware texture size

Is 16K the limit?

I came across this
https://abtsoftware.myjetbrains.com/youtrack/issue/SC3D-326
which seems to indicate maybe larger might be possible?

and I found on this page:
https://www.scichart.com/requirements-for-3d-surface-mesh-charts/#!

The current limit for the size of the 3D Surface Mesh chart is limited by the maximum texture size on your GPU, which in most cases is 40964096 and on some GPUs is larger, up to 16k * 16k.*

Is it possible at runtime to find out what the limit is (if it depends on the users hardware) so I can adapt the data if running on a lower capability platform rather than throwing an exception or displaying a blank graph?

Thanks

Version
7.0.2.27161
  • Andrew Burnett-Thompson
    Hi Andrew Internally we’re using mesh tiling to exceed the hardware texture size limit. However, it’s entirely possible that the mesh size limit exception is still in there! (when it shouldn’t be) O_O Allow me some time to converse with the WPF team and get back to you.
  • Andrew Burnett-Thompson
    Update: I have tested this out on v7.1 branch – the mesh size limit *should* be surpassed by use of virtualization internally but seems this is not working. So, I’m re-opening https://abtsoftware.myjetbrains.com/youtrack/issue/SC3D-326 as a regression bug. For all intents and purposes you can assume that if VisualXcceleratorEngine.HasDirectX10OrBetterCapableGpu = true then max texture size is 16384×16384. Othewise, 4096×4096. However – this limit should no longer be in place so we will revisit SC3D-326 and fix it.
  • You must to post comments
1
0

Hi Andrew,

Thanks for your question.

We’ve investigated this issue further and found out that although there has been implemented a great deal of improvements to SurfaceMesh rendering, virtualization to overcome the max texture size has not been implemented. The SC-3D-326 allowed SurfaceMeshes larger than 4Kx4K but still limited by the max possible texture size.

So at the moment the limitation is still in place. Grid size of UniformGridDataSeries3D (number of points) determines the size of a texture created during SurfaceMesh rendering. This size is limited by 16384×16384, which makes 16384 the limit of UniformGridDataSeries3D grid dimensions.

This limitation comes from the DirectX Resource Limits. Unfortunately, there is no way to get the number via SciChart API. As Andrew suggested in a comment above, you can hard-code it, assuming that if VisualXcceleratorEngine.HasDirectX10OrBetterCapableGpu = true then max texture size is 16384×16384 and 4096×4096 otherwise.

Best Regards,
Joeri

  • You must to post comments
Showing 1 result
Your Answer

Please first to submit.