0

At Devcon there were several mentions of the importance of mesh decimation to keep the frame rate up for AR/VR applications. Are the mesh decimation tools publicly available through the Forge API, or is there another tool that can take a .nwd file, process it, then upload it to Forge?

We have a very large model in Navisworks that simply seems to be hitting limits in webgl when converted for the viewer. With the full model Chrome hits a 4GB limit for a single page. We have hidden sections of it in Navisworks to cut it down, but we still have issues where it takes a long time to load, and some parts of the model simply never render at all, leaving gaps in the model. Firefox doesn't have the 4GB limit, but uses more memory for the same model, and has more gaps in the model when it stops.

It is an overly detailed model, but finding and stripping out thousands of small items at the bottom of the model tree is very time consuming, so any automated process to remove small details will be very useful.

  • Mesh decimation won't usually help for Navisworks files because they contain large numbers of small meshes. Mesh de-duplication might. If you can share this model, we can take a look. If so, please send to forge.help at autodesk.com – Augusto Goncalves Jan 19 '18 at 17:00

1 Answers1

0

The AR|VR toolkit is available as a tech preview on the Autodesk Beta WEB site - the mesh decimation API hasn't not yet been released, but should be there in a few weeks. Please checkout the beta forum for the announcement. In the meantime, the best approach is to filter objects out from the scene to reduce what you are loading in Unity. For example, when creating a scene, use the 'remove' parameter list (or 'list' parameter list) to reduce the number of objects present. Here is an example using the API from the API definition posted here

** https://app.swaggerhub.com/apis/cyrillef/forge-ar_kit/1.1.0#/ARKit/create_scene

curl -k -s -X 
  POST "https://developer-api.autodesk.io/arkit/v1/dxa765f8...34fA/scenes/cyrille-test"
  -H "Authorization: ..." -H "Content-Type: application/json" 
  -d "{\"prj\":{\"urn\":\"dxa765f8...34fA\"},
       \"list\":[\"1\",\"23\",...,\"56\"]],
       \"remove\":[\"10\",...,\"156\"]}"

In this example, we add objects 1, 23, 56 and their leaf respective objects, but then remove objects 10, 156 and their respective leaf objects. If the properties 'list' array is empty, the complete scene is added by default.

cyrille
  • 2,616
  • 1
  • 10
  • 18