From 599a3aba74d728f25890797dceda3d01f5fd316a Mon Sep 17 00:00:00 2001 From: Ahmed Shariff Date: Sat, 28 Sep 2024 21:54:23 -0700 Subject: [PATCH] Update docs, changelog & manifest [0.2.0] --- CHANGELOG.md | 12 +++++++++++- Documentation~/docs/usage.md | 19 +++++++++++++++---- Doxyfile | 2 +- package.json | 8 ++++++-- 4 files changed, 33 insertions(+), 8 deletions(-) diff --git a/CHANGELOG.md b/CHANGELOG.md index b4d4513..b27e6d0 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -4,5 +4,15 @@ All notable changes to this project will be documented in this file. The format is based on [Keep a Changelog](https://keepachangelog.com/en/1.0.0/), and this project adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0.html). -## [Unreleased] +## [0.2.0] ### Added +- Complete refactor to use [XRI](https://docs.unity3d.com/Packages/com.unity.xr.interaction.toolkit@3.0/manual/index.html) and [XR Hands](https://docs.unity3d.com/Packages/com.unity.xr.hands@1.5/manual/index.html). + - Adds HPUI Interactor and related logic implementations + - Adds HPUI Interactables + - `HPUIBaseInteractable` - desrete targets + - `HPUIGeneratedContinuousInteractable` - deformable continuous interactable which can be generated at runtime + - `HPUIMeshContinuousInteractable` - deformable continuous interactable that uses existing skinned mesh renderer. + - Adds `JointFollower` and related components to hook into XR Hands + - Adds simple UI components built on HPUI + - `HPUIInteractorLRVisual` - Use a linerender as a cursor showing where the interactor thinks the interaction is gooing to happe. + - `HPUIInteractorTransformVisual` - Positions a transform as a cursor showing where the interactor thinks the interaction is gooing to happe. diff --git a/Documentation~/docs/usage.md b/Documentation~/docs/usage.md index 99c8b2f..9deac9d 100644 --- a/Documentation~/docs/usage.md +++ b/Documentation~/docs/usage.md @@ -1,16 +1,27 @@ # Usage This can be imported as a git package in Unity. The package is built to use [Unity XRHands](https://docs.unity3d.com/Packages/com.unity.xr.hands@1.4/manual/index.html) and [Unity XR Interaction Toolkit](https://docs.unity3d.com/Packages/com.unity.xr.interaction.toolkit@3.0/manual/index.html). Hence, it is interoperable with any package that implements the Unity XRHands. +The `Sample scene with HPUI` has an example with the HPUI components setup. ## Scene setup - Setup the Scene with an XR Origin & XR Interaction Manager (see documentation [XRI documentation for more details](https://docs.unity3d.com/Packages/com.unity.xr.interaction.toolkit@3.0/manual/general-setup.html#create-the-xr-origin-camera-rig-for-tracked-devices)). -- Place atleast one HPUIInteractor component. You may use the `HPUIInteractable` prefab that is provided with the package. -- Create intractables with the HPUI Interactables components added to them (i.e., `HPUIBaseInteractable` & `HPUIContinuousInteractable`). +- Place atleast one HPUIInteractor component. You may use the `HPUIInteractor` prefab that is provided with the package. +- Create intractables with the HPUI Interactables components added to them (i.e., `HPUIBaseInteractable`, `HPUIGeneratedContinuousInteractable`, & `HPUIMeshContinuousInteractable`). - Add and configure the `JointFollower` component to all gameobjects with HPUI Interactables or HPUI Interactor. This component makes sure the game objects location is set to the respective joint(s) of a given hand. The Interactor and Interactables don't depend on these, but they play nice with each other - i.e., the HPUI Interactables and HPUI Interactors will respect the configuration (Handedness) of the JointFollower. -Note that, the HPUI interactor/interactables do not have to be under the `XROrigin` even though the data from the XRHands subsystem is relative to the `XROrigin`. `JointFollower` transforms the location so that its not necessay for the components to be under the `XROrigin`. +Note that, the HPUI interactables do not have to be under the `XROrigin` even though the data from the XRHands subsystem is relative to the `XROrigin`. `JointFollower` transforms the location so that its not necessay for the components to be under the `XROrigin`. ## Interactables -TODO +### `HPUIBaseInteractable` +### `HPUIGeneratedContinuousInteractable` +### `HPUIMeshContinuousInteractable` + +## Interactors +### `HPUIInteractor` +#### Detection logic +#### Gesture logic + +## `JointFollower` + # Usage of V1 (Legacy) The following is the documentation of the Legacy version of HPUI (the `Legacy` namespace) which did not use the XRI/XR-Hands. diff --git a/Doxyfile b/Doxyfile index d1b53de..d77bcdd 100644 --- a/Doxyfile +++ b/Doxyfile @@ -917,7 +917,7 @@ WARN_LOGFILE = # spaces. See also FILE_PATTERNS and EXTENSION_MAPPING # Note: If this tag is empty the current directory is searched. -INPUT = "README.md" "Runtime" "Editor" "Tests" "Documentation~/docs/" "Documentation~/docs/" +INPUT = "README.md" "Runtime" "Editor" "Tests" "Documentation~/docs/" "CHANGELOG.md" # This tag can be used to specify the character encoding of the source files # that doxygen parses. Internally doxygen uses the UTF-8 encoding. Doxygen uses diff --git a/package.json b/package.json index 530e9bd..b3db7e8 100644 --- a/package.json +++ b/package.json @@ -1,6 +1,6 @@ { "name": "ubc.ok.ovilab.hpui-core", - "version": "0.2.0-pre", + "version": "0.2.0", "displayName": "HPUI Core", "description": "Core functionality of HPUI", "unity": "2021.3", @@ -9,10 +9,14 @@ "com.unity.xr.interaction.toolkit": "3.0.4", "com.unity.textmeshpro": "3.0.6" }, + "license": "MIT", + "licenseUrl": "https://github.com/ovi-lab/HPUI-Core/blob/master/LICENSE", "author": { "name": "Shariff Faleel", - "email": "shariff.mfa@outlook.com" + "email": "shariff.mfa@outlook.com", + "url": "https://shariff-faleel.com" }, + "documentationUrl": "https://ovi-lab.github.io/HPUI-Core/", "scopedRegistries": [ ], "samples": [