This document outlines the category-specific requirements for handbag models used in the WANNA 3D Viewer experience.
All General 3D Model Requirements apply to handbag models.
For step-by-step guidance on preparing bags in Blender, see How to Prepare a Bag Model for the 3D Viewer in Blender guide.
Main Requirements
Requirement | Details |
---|---|
Max triangles in a scene | 130,000 |
Max primitives in a scene | 105 |
Max texture size | 2048x2048 |
Total texture pixels in a scene | 37,748,736 px (≈ 9 × 2048 × 2048) |
Archive file size (geometry + textures) | ≤ 50 MB |
Model scale | True-to-size (1:1) |
File format | glTF (.gltf) or GLB (.glb) only |
Model position | Body bottom-centred; lowest point of geometry (including straps) at Z = 0.1 mm |
Backface rendering | Dimension indicators should have backface (double display) enabled for correct display |
Bag inside rendering | If the bag is intended to be presented open in the Inside view, its interior compartment must be modelled to match the reference imagery. Otherwise, for a cleaner presentation, the interior might be blacked out |
Modelling Recommendations
Bag Placement & Structure
- Position the bag’s body bottom-centred in the scene.
- The lowest point of the model’s geometry (including straps) should be Z = 0.1 mm; all other points higher.
- If the bag is intended to be presented open in the Inside view, its interior compartment must be modelled to match the reference imagery. Otherwise, for a cleaner presentation, the interior might be blacked out.
Straps
- Model long straps (for shoulder or crossbody wear) separately from the main body so they can be shown/hidden in 3D Viewer when the size indicator is toggled.
- For the best user experience, follow examples on arranging long straps around the bag: Recommended Long Strap Arrangements for Bags in the 3D Viewer.
Adding gems
If your bag design includes gems, refer to How to add beautiful gems to 3D models for detailed instructions on creating high-quality gem elements.
Extended Functionality Requirements
The following scene setup is required to enable 3D Viewer advanced features such as Points of Interest (POIs), Dimensions Indicators, Inside View, and others.
The project must contain top-level nodes with the following exact names:
Node name | Purpose |
---|---|
main |
The bag’s body with unremovable hands/straps, it is always shown in the 3D Viewer. If the Bag’s Inside view is required for this model, the inside compartment should be part of the main node. This node should be a single geometry, several sub-geometries are not allowed. |
plane_ao |
Z=0 plane with baked AO from the main node, always shown. Backface culling should be enabled for plane_ao . |
strap_long |
Long strap(s) for wearing the bag on the shoulder or crossbody. It will be shown in the normal 3D View mode, but hidden when user enables bag's dimension indicator. This node should be a single geometry, several sub-geometries are not allowed. |
plane_ao_strap |
Z=0 plane with AO from the strap_long , shown or hidden together with strap_long , it should only contain AO info for strap_long node. Backface culling should be enabled for plane_ao_strap . |
dimension_cm |
The bag’s dimensions indicator in centimeters, shown when the user enables bag dimension indicator. |
dimension_inch |
The bag’s dimensions indicator in inches, shown when the users enables bag dimension indicator and with imperial units of measurements set by the developer. 3D Viewer shows dimension_cm or dimension_inch , but never both at the same time. |
action_animation |
Auxiliary objects that represent items to be displayed only in the Bag’s Inside view, such as items that can be placed inside the bag. The 3D Viewer displays this node only when the user switches to the Inside view. |
xray_bag |
Auxiliary node representing a transparent version of the bag with its contents visible. This node should include only the items placed inside the bag. The 3D Viewer displays this node only when the user switches to the Dimensions view and taps the Show Capacity button. At the same time, the main node becomes transparent. |
Only the
main
node and its sub-nodes will be visible in the 3D Viewer’s General view. Therefore, the model will display correctly only if themain
node is placed at the top level of the hierarchy.
If nomain
node is present in the model, all nodes will be displayed in the 3D Viewer simultaneously, without any additional functionality.
Dimensions Indicators
-
Height, Length and Width indicators should be modeled as two separate nodes:
dimension_cm
for users using metric system. Use maximum one decimal digit and cm to indicate unit of measurement;dimension_inch
for users preferring imperial system. Use inches with single decimal digit and double prime mark (″) to indicate unit of measurement .
- Each dimensions node includes both rulers and numbers.
- Dimensions text should have back face.
- Dimension nodes should use 128x128 textures to reduce file size.
- Dimensions should be set for the body of the bag without any straps/handles. It should also exclude any straps, charms, etc.
-
Guidelines to optimise viewing experience:
- Large bags (>30 cm longest side): Ruler thickness 0.24 cm; sphere radius 0.23 cm; Text: Roboto Regular font, height 2 cm.
- Small bags (<30 cm longest side): Ruler thickness 0.18 cm; sphere radius 0.16 cm; Text: Roboto Regular font, height 1.5 cm.
![]() |
![]() |
AO Planes
- Both textures must have a transparent background with alpha blending.
- Edges of the plane should not be visible (smooth shading gradient and set AO spread angle to ~73 in Substance Painter).
- Resolution: 256x256.
- Keep only Albedo and ORM for
plane_ao
andplane_ao_strap
to reduce file size.
Points of Interest (POIs) & Cameras
POIs help highlight the most interesting parts of a handbag, such as buckles, strap attachments, or other key details. POIs can be configured in WANNA Studio by following the Points of Interest for Bags in Wanna Studio guide.
Animations and Bag's Inside View
You can display the bag’s inside compartment by modelling the interior as part of the main
node, and placing any additional elements into the action_animation
node.
A specially named animation should be added to open the bag:
-
ActionAnimation
— demonstrates how the bag opens. The second half of the animation may also be used to illustrate the closing process.
The first and last frames of
ActionAnimation
must be identical so that the model returns to its initial pose after playback. Ending the animation in a different pose is not supported.
To set up the animation behaviour, please contact the WANNA team, as this is currently an internal setting. WANNA Studio will provide an option to configure animations in future updates.
X-Ray Bag View
You can showcase a bag’s storage capacity by modelling placing representative items inside it as part of a specially named node - xray_bag
.
The
xray_bag
node should include only the items placed inside the bag.
When this node is present, the 3D Viewer displays a Show Capacity button in the Dimensions tab. Tapping this button makes the bag semi-transparent and reveals the items inside, while the label changes to Hide Capacity. When tapped again, the bag returns to full opacity and the items are hidden.
Example References
Sample bag:
Animation example: bag_with_stuff
X-Ray bag view example: bag_with_stuff_xray_animation_light