Added Getting Started documentation

This commit is contained in:
Pascal Serrarens 2023-09-12 11:26:33 +02:00
parent 27fc3b7eb6
commit 411b97e33d

View File

@ -4,8 +4,6 @@
/// \version 4
/// \mainpage %Humanoid Control for Unity
///
/// Note: this documentation is still work in progress...
///
/// Main components
/// ---------------
/// * \ref HumanoidControl "Humanoid Control"
@ -34,6 +32,63 @@
///
/// Networking
/// ----------
/// * \ref PhotonPunDoc "Photon PUN"
/// * NetworkingStarter
///
/// Getting Started
/// ===============
///
/// There are two ways to include an humanoid into a scene:
/// starting with an avatar and starting with the Humanoid Control script.
///
/// Starting with an avatar
/// -----------------------
/// In this case you start by putting an avatar prefab into the scene.
/// This avatar needs to fulfil the requirements of a Mecanim avatar (see below).
/// A couple of avatar prefabs are included in the Grocery Store Demo sample in the package.
///
/// The next step is to attach the HumanoidControl script to the avatar.
/// You can do this by selecting the *Add Component* button in the Inspector and selecting the HumanoidControl script.
///
/// \image html AddHumanoidControlComponent.png
/// \image rtf AddHumanoidControlComponent.png
///
/// Starting with the Humanoid Control script
/// -----------------------------------------
/// In this case we start with an Empty GameObject.
/// We will then add the HumanoidControl script to the object by selecting the *Add Component* button in the Inspector and selecting the HumanoidControl script.
///
/// \image html HumanoidControlWithoutAvatar.png
/// \image rtf HumanoidControlWithoutAvatar.png
///
/// You will see that the script could not detect a suitable avatar because there isn't an avatar attached yet.
/// We can now add an avatar by dropping an avatar onto the Empty GameObject we created. It will become a child of this GameObject.
///
/// \image html HumanoidAvatarInHierarchy.png
/// \image rtf HumanoidAvatarInHierarchy.png
///
/// This makes it easier to replace an avatar at a later moment
///
/// Requirements for the avatar
/// ===========================
/// You should ensure that your avatar has a well formed rig.
/// The script uses the bone structure derived in the Unity Mecanim rig to find the correct bones to move around.Check the rig as follows:
/// - In the prefab, select the Rig tab. Ensure the Animation Type is set to Humanoid.
/// - Ensure 'Optimize Game Objects' is *deselected*.
/// - Click Configure…
/// - Ensure that the following bones are correctly mapped:
/// - Body: Hips, Spine
/// - Left Arm: Upper Arm, Lower Arm & Hand
/// - Right Arm: Upper Arm, Lower Arm & Hand
/// - Left Leg: Upper Leg, Lower Leg & Foot
/// - Right Leg: Upper Leg, Lower Leg & Foot
/// - Head: Neck
///
/// If you need to grab objects with the alternative avatar you can add colliders to the hand and fingers manually.
/// For the thumb, the intermediate joint should at least be used for a collider. For the fingers the proximal joint should at least have a collider.
///
/// The avatar needs to have the same size and proportions as the standard avatar. Using small or giant avatars will result in strange body moments.
///
/// The avatar should face in the forward direction of the root transform. Other directions will result in twisted poses.
}