BIM/CAD models can have lots of details that need special attention if you plan to load all geometry on smartphones and mobile VR devices. Here are some tips for importing and working with large models in Arkio
Arkio's large-model tech
To allow the loading of large models on devices like the Meta Quest 3 Arkio dynamically adjusts the level of detail based on your viewpoint and device triangle budget. Things that are further away will render with fewer details and objects that are closer will show details that the device can still handle.
We automatically prepare files imported to Arkio to substitute further away objects with simplified versions (called LODs). We also use occlusion culling to skip parts of the model that are obscured by other objects. This allows your device to load much larger files than typically possible as only a small portion of a model's visible triangles is rendered. You can read more about this technology on our CTO's blog
Large models on mobile hardware
Devices like the Quest use a mobile processor, Meta recommends not loading more than 250K triangles on a Quest 3 to keep a comfortable framerate. Arkio supports the loading of much larger models but not all of these triangles will be visible at the same time as we dynamically adjust the number of triangles shown to fit the device's render budget.
To prevent mobile devices with limited power and RAM from crashing while processing files we added a maximum file size for imports. When this maximum is exceeded this model can not be processed on that device. However, you can still process and place these large models on more powerful hardware like a PC/Mac first and then share these models with your less powerful devices using an Arkio meeting. See the paragraph at the bottom of this page for more info.
Platform | Render budget | Max. import triangles | Max. file size OBJ | Max. file size GLB |
PC Windows |
7M | 200M | 5.000 MB | 4.000 MB |
PC VR link |
7M | 200M | 5.000 MB | 4.000 MB |
Mac |
7M | 200M | 5.000 MB | 4.000 MB |
Meta Quest 3(s) | 1M | 15M | 1.800 MB | 1.200 MB |
Meta Quest Pro | 1M | 12M | 1.500 MB | 1.000 MB |
Meta Quest 2 | 1M | 12M | 1.500 MB | 1.000 MB |
iOS | 1M | 10M | 750 MB | 500 MB |
Android | 1M | 10M | 750 MB | 500 MB |
Variable details per device
Based on what device you are using there are different triangle render budgets (see above table) this can result in some details in your model never loading as there is simply too much geometry for that device to handle. In case you still want to see these details on that device you can consider two solutions.
1) Reduce the imported model to only the geometry you want to see in detail and remove unnecessary parts or details that are unneeded. You can read more about optimizing your geometry here
2) Look at the same scene with more powerful hardware like a PC connected to a headset. (eg. your Quest in air-link mode) You PC can render a much higher number of triangles from the same viewpoint and has enhanced rendering with ambient shadows see below for a comparison between Quest and PC VR.
828K/10.9M on Quest 3 | 5.4M/10.9M on Quest in PC link mode |
636K/10.9M on Quest 3 | 5.9M/10.9M on Quest in PC link mode |
747K/10.9M on Quest 3 | 5.0M/10.9M on Quest in PC link mode |
Dynamic occlusion
Arkio simplifies the geometry based on your view distance and uses a technique called dynamic occlusion that reduces details for parts of the model that are occluded by nearby geometry. This way details closer to the user can be maintained while objects that are obstructed and further away have reduced details.
When working with devices with low rendering budgets and dense triangle models this can result in artifacts for some viewpoints. Especially when your model has complex overlaps, long corridors, or insets in geometry it can result in parts of the model looking less detailed and showing artifacts.
To prevent these low details from showing you can reduce or hide dense triangle geometry from your exports so more render budget remains available for the most important details in your design. If you are experiencing these artifacts regularly we'd love to learn more about your models and viewpoints so we can improve Arkio's dynamic occlusion for that type of geometry.
Loading extremely large files
On a PC you will have a lot more memory and power to process large files to Arkio resources. Once your source files are processed in Arkio they can be placed in the scene and shared with less powerful devices in using an Arkio meeting.
As an example, you might have a 35M triangle Revit building that you want to load on a Quest. Loading files this size on your device via the Arkio cloud or using a USB cable will be too large for your device so it will fail and give you a warning. However, if you first import this Revit model on a powerful PC/Mac and then place it in the Arkio scene you can share this large model with your Quest 3.
Extremely large imports shared via Arkio meeting will only show the details that your devices can still handle. When loading extremely large files we recommend always doing some tests first to make sure your geometry performs well on the device that you plan to use so users will have a good experience.
We recommend keeping your total number of imported triangles in the scene under 5M triangles so every device can load models without performance issues. You can check your total triangles after our plugin exports, in the Arkio import panel or from the the View Settings in Arkio's review panel.
You can gain additional performance on a standalone headset when rendering large models by switching to VR instead of Mixed Reality and disabling your shadows, sections, or X-ray mode in view settings as this will boost performance by simplifying the rendering on your headset.
If you want to view extremely large models in VR on Quest we can also recommend switching to PC in VR link mode as your PC will be able to show much more details and boost render quality with improved ambient shadows that are not possible on a standalone headset.
Comments
0 comments
Please sign in to leave a comment.