Sophisticated 3D models, such as those that come from complex CAD assemblies, will often be made up of a complex hierarchy of sub-assemblies and individual parts.
When you add a 3D model to a JoinXR document you can grab and manipulate different parts of this hierarchy.
Use part hierarchies in headset
In normal usage, clicking on an object in JoinXR just selects the entire object and allows you to manipulate all of its parts together in a single chunk. This convention keeps JoinXR simple to use for the casual user.
For more complex work with individual parts, you explicitly enter 'Part Editing Mode' after selecting a given 3D model.
When in part editing mode your hand/controller pointers will turn blue and the following capabilities will be available:
- Select and drag/scale/rotate individual parts and sub-parts
- Tag a group of parts to 'Move as group' making it easier to select meaningful 'chunks' of the whole model
- Change the rendering state (highlight, B&W, hide, no-clip) of parts and sub-parts
- Reset the position of a part or its sub-parts to their default
This video demonstrates these in-headset capabilities. In this video the Tools section of the hand menu is used throughout, but the same functionality can be accessed via the Hierarchy pop-out menu.
Setup part hierarchies in JoinXR Desktop
CAD files are often structured with many hundreds of parts, so it's important for a good headset experiences to make sure that your users can select the correct level of the part hierarchy (e.g. a sub-assembly rather than individual washers or hinges).
The best place to perform this detailed strucuturing is in JoinXR Desktop's edit mode.
First select the object you wish to edit, if part editing is supported (see above) you'll see the 'Enable Part Editing' button in the Object Properties view.
Once part editing is enabled you can select individual parts either by clicking in the 3D view or by clicking on the nodes in the hierarchy in the Slide Contents view
With a part selected you can drag, rotate and scale it like any other object, and you can set its rendering options in the Object Properties view
Grouping and Selection
The most important workflow in JoinXR Desktop edit mode related to parts is the grouping of parts to make selection in headset quicker and easier for users.
Take the PCB subassembly in this model as an example: it is made up of > 100 individual parts in a deep hierarchy and would be considerably fiddly to work with on device.
To move the entire subassembly together, you select its common parent, and check the Move as Group box. Its icon in the hierarchy in the Slide Contents view will change to indicate it is now the default part selected when any of its children are selected.
Just like on device, a double-click can be used to 'drop down' inside the group to select individual parts:
This short video shows working with a combination of the 3D view, the Slide Contents view and the reset controls.
Part editing and slides
The positions and rendering options of the parts of a model are per-slide setups. So just like any other configuration of 3D objects in JoinXR, you can setup the parts of a model one way, create a duplicate slide and change that configuration completely.
Parts can be moved, scaled, hidden or highlighted without effecting their state on any other slide.
The one property which is not per-slide is the 'Move as Group' flag. This is set once at a document level for a given object and cannot be modified per-slide.
Troubleshooting
If part edit mode isn't working as expected, check one of the following possible issues:
Hierarchy flattened during conversion
When using the JoinXR CAD Optimiser (or other CAD-to-3D file converters) your file may have lost the assembly/sub-assembly/part information and ended up as a single visual object.
In the CAD Optimiser check two things:
- You have 'Flatten Hierarchy' un-checked
- You confirm in the Output section that there are multiple parts listed for the output model
Note: only the GLB output section lists parts, but both GLB or JXR files will have part information in them so either can be used.
Unsupported JXR version
Our proprietary JXR file format only has support from version 4+. All files converted with the CAD Optimiser from June 2026 onwards will be version 4+.
If you are working with an older JXR file in a document you will see a warning instead of the 'Enable Part Editing' button prompting you to reconvert your source model.