Manikins
A Visionary Render Manikin is a 1:1 scale model of a virtual human that can be representatively posed and proportioned. The manikin functionality can be used early in the design process to inform decision-making around ergonomics.
Manikins can be easily positioned into relevant and representative poses in a scene using inverse kinematics (IK) and forward kinematics (FK). You can rapidly adjust and re-adjust the manikin, and you also have the ability to fine-tune positions with FK. You can also individually tweak the separate bone lengths in order to approximate the anthropometric measurements, for example the scaling of the individual body segments.
Background Theory
Inverse Kinematics (IK)
Inverse Kinematics is a mathematical process that can automatically pose the manikin based on target positions for body parts such as the hands and feet. For example, when you move the IK target for a hand, the wrist, elbow and shoulder joints will be adjusted automatically to place the hand in the required position.
Forward Kinematics (FK)
With Forward Kinematics, the manikin's pose is controlled by rotating the individual joints manually. This offers finer control than IK but can be much more time-consuming.
Range of Motion
In both IK and FK modes, the manikin's joints are constrained so that they can only rotate within physically plausible limits.
Where possible, the ranges of motion have been based on the medical textbook Netter's Concise Orthopaedic Anatomy, 2nd edition (ISBN-10: 032342970X, ISBN-13: 978-0323429702), which is regarded as one of the definitive books on the subject. The constraints on the ranges of motion of certain joints, such as the shoulder and wrist, are currently represented in simplified form in the application.
Create
Right-click the VR Scenes Tree and select Create > Manikin from the context menu.
Properties
Use the Properties window (Ctrl
+ P
) to configure the manikin.
Property | Description |
---|---|
Enabled | Toggle whether the manikin is enabled and therefore visible in the 3D scene. |
Transform | Change the position, rotation and scale of the manikin. Select Reset to reset the position, rotation and scale to the default values. Select Uniform Scale to control whether the scale values in the X, Y and Z directions are edited as a single value or independently. |
Template | Choose between different manikin templates, such as male and female manikins. |
IK Enabled | Selected by default. Toggles between displaying the Target Helpers (inverse kinematics) and the individual Manikin Bone Helpers (forward kinematics). |
Skin Colour | Change the colour properties, for example, to differentiate between manikins in a scene. Adjust this value to alter the skin colour of the manikin. |
Hair Colour | Change the hair colour of the manikin. |
Clothing Colour 1 | Change the upper clothing colour of the manikin. |
Clothing Colour 2 | Change the lower clothing colour of the manikin. |
Shoe Colour | Change the shoe colour of the manikin. |
Height | Change the height of the manikin (in metres). |
Reset Anthropometrics | Reset the anthropometric data to its default values. |
Advanced | Adjust these values to alter the size of a body segment by uniformly scaling the segment. The measurement is the length of each segment. The Measuring Tool can be used to verify anthropometric measurements on the manikin model when using Advanced Properties. |
Thickness | Adjust the thicknesses of the body segment by scaling in the x and z dimensions. The length of the bones will not be altered. Unlike the other values, these are scale factors rather than absolute measurements. The value of the slider is a scale factor (for example, a thickness of 2 would be twice as thick as 1). |
Browser
Manikins can be viewed and edited in the browser. The small and large icon views show an image of each manikin in the scene whilst the list view shows and permits the below properties to be edited.
Target and Bone Helpers
The Target and Bone Helpers are manipulators that enable you to adjust the pose of a manikin. The Head, Hands, Pelvis and Feet targets of the manikin are enabled by default.
Helpers can be enabled or disabled using the Manikin Helpers option from the Toolbar (they are enabled by default) or via the Settings > User Interface > Helpers window.
Target Helpers
The target node is highlighted by a transparent box. Select a node and use the PRS manipulator to change the position and rotation of the selected object. You can also use the mouse manipulator, drag and drop them to snap them to a surface, or drag them immersively.
If the manikin jumps rapidly between different poses when moving a target, this usually indicates that the targets have been placed in locations that are impossible for the manikin to reach simultaneously. The orientation of the targets may be causing one or more of the manikin's joints to reach its rotation limits. Move or rotate the targets into a more natural pose to restore normal movement.
You can select multiple target nodes in the Tree view with Shift
or Ctrl
or with Ctrl
in the 3D view. For example, if you want to make a standing manikin sit down:
- Select the Pelvis, Head, Left hand and Right hand target nodes.
- Hover over any of the selected target nodes then right-click, hold and move down.
You can select the manikin parent node and use the Windows > View Widget (Ctrl
+ U
) to change the camera view and edit the position and orientation of the manikin in 3D with greater accuracy.
Bone Helpers
In the Properties window, deselect IK Enabled to display the individual Manikin Bone Helpers (forward kinematics),
The Manikin Bone Helpers are shown as white circles. The circles - or "handles" - are highlighted yellow when the cursor is hovered over them. Select the bones individually to make fine adjustments to the position of the manikin. The selected bone node will be highlighted by a yellow dot. You can select multiple bone nodes in the Tree view with Shift
or Ctrl
.
Use the PRS manipulator 3D widget to change the position and rotation of the selected nodes. The pelvis can also be moved as it is the root of the entire bone structure.
When you deselect IK Enabled in the properties panel and then position the manikin by manipulating the Bone Helpers, if you re-enable the IK Enabled property then all bones will snap back to their respective IK targets.
Hands
You can fine control the manikin hands by moving one control point. For example, the manikin's fingers will be set by default to 'follow' one parent finger - the index finger. When you change the rotation property for this parent you can open or close the hand.
The hand helpers are always enabled (providing that the helpers are enabled in the Toolbar) and do not depend on IK enabled being deselected in the Properties window for the manikin.
To create a hand position where just the index finger is extended, you can deselect Follow in the Properties window. To keep the index finger extended you should deselect the follow property on Right finger 2A. This creates a bone helper on the middle finger which is now the parent for the other fingers (Right finger 3, Right finger 4) to follow. The index finger is now independent. You can now rotate the newly exposed Bone Helper on the middle finger and to curve the fingers.
The fingers are also articulated so that you can turn off the follow property on the A, B and C bones for each finger. As you turn off the follow property, Manikin Bone Helpers will appear and you will be able to individually manipulate each finger.
You can also spread the manikin fingers using the rotation manipulator (as long as you select the helper that has all the other fingers parented to follow it).
To grip imported objects such as tools in the manikin's hands, the object must be placed under the sub-assembly for the relevant bone in the Tree structure. It will then follow the target for the sub-assembly and move with it accordingly.
Immersive Mode
When working in immersive mode (either via a HMD or one of our supported tracking systems in an immersive facility) it is still possible to manipulate and manoeuvre the manikin via the Target or Bone Helpers as described above.
Position at Body
The Position At Body tool will place the manikin's head and hands in the same position and orientation as those of the user when triggered. This can also be triggered from a script using the vrPositionAtBody command.
The rest of the manikin's body will be unchanged from its pose prior to the position at body action.