add the contents for setting up the grab/release, and the touch systems

This commit is contained in:
Mamadou Babaei
2024-08-13 19:49:24 +02:00
parent c154f5d6ef
commit 4ead034fb2
13 changed files with 83 additions and 4 deletions
+2 -2
View File
@@ -28,8 +28,8 @@ Welcom to the SenseGlove Unreal Engine Handbook!
- [SGGameUserSettings](getting-started/setup-senseglove-default-classes/sggameusersettings.md)
- [Setup the Virtual Hand Meshes](getting-started/setup-virtual-hand-meshes/README.md)
- [Setup the Wrist Tracking Hardware](getting-started/setup-wrist-tracking-hardware/README.md)
- [Setup the Grab System]()
- [Setup the Touch System]()
- [Setup the Grab/Release System](getting-started/setup-grab-release-system/README.md)
- [Setup the Touch System](getting-started/setup-touch-system/README.md)
# ⚙️ Plugin Configuration
@@ -0,0 +1,31 @@
# Setting up the Grab/Release System
Setting up the SenseGlove Grab/Release System involves two main steps. The first step, configuring the virtual hand meshes for both real and virtual hands, is handled automatically by the plugin. The second step, which is also straightforward, involves setting up any existing actor in the Unreal Blueprint Editor that you want to respond to with haptic feedback when your SenseGlove device comes into contact with it:
1. Open any existing actor in the Unreal Blueprint Editor that you would like to respond to with haptic feedback when your SenseGlove device comes into contact with it.
2. In the `Components` panel, click the `+ Add` button, then type `SGGrab` into the `Search Components` input field. Once found, click on `SGGrab` to add it to the current actor. You can rename the `SGGrab` component to your desired name.
![Setting up the Grab/Release System - Adding the SGGrabComponent to an actor](adding-sggrabcomponent.png "Setting up the Grab/Release System - Adding the SGGrabComponent to an actor")
3. With the `SGGrab` component selected in the `Components` panel, navigate to the `Details` panel. Under the `SenseGlove` section, adjust the settings for the grab/release system to suit your needs.
![Setting up the Grab/Release System - The SGGrabComponent settings](sggrabcomponent-settings.png "Setting up the Grab/Release System - The SGGrabComponent settings")
> [!NOTE]
> Any property prefixed with `Attachment` is a parameter directly passed to
> Unreal's `FAttachmentTransformRules` during the grab process, while any
> property prefixed with `Detachment` is a parameter directly passed to
> Unreal's `FDetachmentTransformRules` during the release process.
4. A key setting for the release system is located within your [`SGPawn`](../setup-senseglove-default-classes/sgpawn.md) instance. In the `Details` panel for your `SGPawn`, find the `Max Number of Hand Velocity Samples` setting and adjust it according to your needs. This setting determines the velocity of objects released from the hands by averaging the specified number of frames. Optimizing this value depends on the framerate of your simulation at runtime.
![Setting up the Grab/Release System - Max number of hand velocity samples on release](release-max-velocity-samples.png "Setting up the Grab/Release System - Max number of hand velocity samples on release")
5. One last aspect of the grabbable actors to take into account for the grab system to function properly is the collision settings of their mesh components. If you'd like to prevent the virtual hand meshes from passing through a grabbable actor, it's necessary to set the `Collision Presets` to `Block All` inside the `Details` panel for the actor's mesh components.
![Setting up the Grab/Release System - Setting Collision Presets to Block All](collision-presets-block-all.png "Setting up the Grab/Release System - Setting Collision Presets to Block All")
6. Additionally, enabling `Simulation Generates Hit Events` and `Generate Overlap Events` on the actors mesh components is mandatory. These settings are crucial for notifying the grab system when the virtual hand meshes come into contact with the actor.
![Setting up the Grab/Release System - Enabling Simulation Generates Hit Events and Generate Overlap Events](collision-generate-hit-overlap-events.png "Setting up the Grab/Release System - Enabling Simulation Generates Hit Events and Generate Overlap Events")
@@ -0,0 +1,21 @@
# Setting up the Touch System
Configuring the SenseGlove Touch System involves two key steps. The first step, which is automatically handled by the plugin, is configuring the virtual hand meshes for both real and virtual hands. The second step, which is also straightforward, involves setting up any existing actor in the Unreal Blueprint Editor that you want to respond to with haptic feedback when your SenseGlove device comes into contact with it:
1. Open any existing actor in the Unreal Blueprint Editor that you would like to respond to with haptic feedback when your SenseGlove device comes into contact with it.
2. In the `Components` panel, click the `+ Add` button, then type `SGTouch` into the `Search Components` input field. Once found, click on `SGTouch` to add it to the current actor. You can rename the `SGTouch` component to your desired name.
![Setting up the Touch System - Adding the SGTouchComponent to an actor](adding-sgtouchcomponent.png "Setting up the Touch System - Adding the SGTouchComponent to an actor")
3. With the `SGTouch` component selected in the `Components` panel, navigate to the `Details` panel. Under the `SenseGlove` section, adjust the settings for the touch system to suit your needs.
![Setting up the Touch System - The SGTouchComponent settings](sgtouchcomponent-settings.png "Setting up the Touch System - The SGTouchComponent settings")
4. One last aspect of the touchable actors to take into account for the touch system to function properly is the collision settings of their mesh components. If you'd like to prevent the virtual hand meshes from passing through a touchable actor, it's necessary to set the `Collision Presets` to `Block All` inside the `Details` panel for the actor's mesh components.
![Setting up the Touch System - Setting Collision Presets to Block All](collision-presets-block-all.png "Setting up the Touch System - Setting Collision Presets to Block All")
5. Additionally, enabling `Simulation Generates Hit Events` and `Generate Overlap Events` on the actors mesh components is mandatory. These settings are crucial for notifying the touch system when the virtual hand meshes come into contact with the actor.
![Setting up the Touch System - Enabling Simulation Generates Hit Events and Generate Overlap Events](collision-generate-hit-overlap-events.png "Setting up the Touch System - Enabling Simulation Generates Hit Events and Generate Overlap Events")
+2 -2
View File
@@ -24,8 +24,8 @@ This section covers the basics of the SenseGlove Unreal Engine Plugin:
- [SGGameUserSettings](../getting-started/setup-senseglove-default-classes/sggameusersettings.md)
- [Setup the Virtual Hand Meshes](../getting-started/setup-virtual-hand-meshes/)
- [Setup the Wrist Tracking Hardware](../getting-started/setup-wrist-tracking-hardware/)
- [Setup the Grab System]()
- [Setup the Touch System]()
- [Setup the Grab/Release System](../getting-started/setup-grab-release-system/)
- [Setup the Touch System](../getting-started/setup-touch-system/)
## ⚙️ Plugin Configuration