Level: Beginner
Reading Time: 2 minutes
Checked with: Unity 2018.3.14f1
The package contains two distinct sub packages and these prefabs can be included in a Unity software project via the Unity Package Manager.
The Interactors/Interactions.Interactor
prefab provides a mechanism for determining when an interactable object has been touched and can have an action injected to determine when to send the grab signal, which simply passes over this state to the interactable object being touched. Upon the interactable object receiving this state, it will execute the appropriate action such as following the interactor (to represent grabbing).
The Interactors/Interactions.ActionPublisher
prefab provides a mechanism for sending action data from the interactor over to a Interactors/Interactions.ActionReceiver
prefab in the form of boolean, float or vector2 actions. This can be useful for sending custom controller button data to be used within the interactable object.
The Interactables/Interactions.Interactable
prefab provides a structure to determine a Unity GameObject as an interactable object within the spatial scene. It receives data from the appropriate interactor to inform the interactable when it is being touched or should be manipulated.
The Interactors/Interactions.ActionReceiver
prefab provides a mechanism for receiving action data from the valid Interactors/Interactions.ActionPublisher
prefab in the form of boolean, float or vector2 actions. This received data can then be tied specifically to an individual or multiple interactable objects to provide custom controls.
You may skip this step if you already have a Unity project to import the package into.
- Create a new project in the Unity software version
2018.3.10f1
(or above) using3D Template
or open an existing project.
- Ensure the project
Scripting Runtime Version
is set to.NET 4.x Equivalent
:- In the Unity software select
Main Menu -> Edit -> Project Settings
to open theProject Settings
inspector. - Select
Player
from the left hand menu in theProject Settings
window. - In the
Player
settings panel expandOther Settings
. - Ensure the
Scripting Runtime Version
is set to.NET 4.x Equivalent
.
- In the Unity software select
-
Navigate to the
Packages
directory of your project. -
Adjust the project manifest file
manifest.json
in a text editor.- Ensure
https://registry.npmjs.org/
is part ofscopedRegistries
.- Ensure
io.extendreality
is part ofscopes
.
- Ensure
- Add
io.extendreality.tilia.interactions.interactables.unity
todependencies
, stating the latest version.
A minimal example ends up looking like this. Please note that the version
X.Y.Z
stated here is to be replaced with the latest released version which is currently .{ "scopedRegistries": [ { "name": "npmjs", "url": "https://registry.npmjs.org/", "scopes": [ "io.extendreality" ] } ], "dependencies": { "io.extendreality.tilia.interactions.interactables.unity": "X.Y.Z", ... } }
- Ensure
-
Switch back to the Unity software and wait for it to finish importing the added package.
The Tilia Interactions Interactables Unity
package will now be available in your Unity project Packages
directory ready for use in your project.
The package will now also show up in the Unity Package Manager UI. From then on the package can be updated by selecting the package in the Unity Package Manager and clicking on the Update
button or using the version selection UI.