Package detail

io.extendreality.tilia.input.combinedactions.unity

ExtendRealityLtd1.6kMIT2.0.23

A collection of custom actions that combine sub actions into more complex action types for the Unity software.

input, actions

readme

Tilia logo

Input -> Combined Actions for the Unity Software

{A collection of custom actions that combine sub actions into more complex action types for the Unity software.

Release License Backlog

Introduction

Combined Actions are a collection of useful prefabs that utilize simple actions in different combinations to provide more complex action systems for the Unity software.

Included actions are:

  • BooleanTo1DAxisAction - Uses two Boolean Actions that represent the positive and negative upper limits of an axis to create a psuedo -1f to 1f range Float Action axis.
  • AxesToVector3Action - Uses up to three Float Actions that represent the lateral, vertical and longitudinal axes and converts into a Vector3 Action of the axis data.

Requires the Unity software version 2018.3.10f1 (or above).

Getting Started

Please refer to the installation guide to install this package.

Documentation

Please refer to the How To Guides for usage of this package.

Further documentation can be found within the Documentation directory and at https://academy.vrtk.io

Contributing

Please refer to the Extend Reality Contributing guidelines and the project coding conventions.

Code of Conduct

Please refer to the Extend Reality Code of Conduct.

License

Code released under the MIT License.

changelog

Changelog

2.0.23 (2024-09-28)

Miscellaneous Chores

2.0.22 (2024-05-11)

Miscellaneous Chores

2.0.21 (2024-04-17)

Miscellaneous Chores

2.0.20 (2023-07-10)

Miscellaneous Chores

2.0.19 (2023-07-08)

Miscellaneous Chores

2.0.18 (2023-07-05)

Miscellaneous Chores

2.0.17 (2023-05-06)

Miscellaneous Chores

2.0.16 (2023-05-02)

Miscellaneous Chores

2.0.15 (2023-04-16)

Miscellaneous Chores

2.0.14 (2023-04-03)

Miscellaneous Chores

2.0.13 (2023-03-31)

Bug Fixes

  • Prefabs: ensure deadzone types are disabled by default (8ad5027)

    The Single DeadZone calculation and the Combined DeadZone calculation both need to start disabled otherwise their internal code can run on Enable due to a change in Zinnia how the isActiveAndEnabled check is now done.

    Previously, it was using behaviour.isActiveAndEnabled which will not consider a script enabled until the Start method has been called so anything in OnEnable wouldn't trigger. But this logic is misleading so it was replaced with gameObject.activeInHierarcy && this.enabled which will report a component being enabled in the OnEnable.

    This was then highlighting the error in this prefab as it was running code in the first frame because both components are enabled by default and then it was disabling the relevant component. But by that time the error had already occurred.

    The fix is to ensure both calculation logic blocks are disabled by default and then the code will enabled the correct one and run the correct script without crashing into each other.

2.0.12 (2023-03-28)

Miscellaneous Chores

2.0.11 (2023-03-21)

Miscellaneous Chores

2.0.10 (2023-03-16)

Miscellaneous Chores

2.0.9 (2023-03-13)

Miscellaneous Chores

2.0.8 (2023-03-11)

Miscellaneous Chores

2.0.7 (2023-02-22)

Miscellaneous Chores

2.0.6 (2023-02-19)

Miscellaneous Chores

2.0.5 (2023-02-08)

Miscellaneous Chores

2.0.4 (2022-06-16)

Miscellaneous Chores

2.0.3 (2022-05-20)

Miscellaneous Chores

2.0.2 (2022-05-09)

Miscellaneous Chores

2.0.1 (2022-04-28)

Miscellaneous Chores

2.0.0 (2022-04-28)

:warning: BREAKING CHANGES :warning:

  • Malimbe: This removes the last remaining elements of Malimbe and whilst it does not cause any breaking changes within this package, it removes Malimbe as a dependency which other projects that rely on this package may piggy back off this Malimbe dependency so it will break any project like that.

All of the previous functionality from Malimbe has been replicated in standard code without the need for it to be weaved by the Malimbe helper tags. (2acf5f2)

Features

  • Malimbe: remove malimbe dependency (2acf5f2)

1.11.2 (2022-03-15)

Miscellaneous Chores

1.11.1 (2022-03-15)

Miscellaneous Chores

1.11.0 (2022-03-02)

Features

  • package.json: add information urls to package (3bad8fd)

    The changelog, documentation and license url has been added to the package.json as these are used within the Unity package manager.

1.10.11 (2022-02-14)

Miscellaneous Chores

1.10.10 (2022-02-05)

Miscellaneous Chores

1.10.9 (2022-01-17)

Miscellaneous Chores

1.10.8 (2022-01-13)

Miscellaneous Chores

1.10.7 (2022-01-13)

Miscellaneous Chores

1.10.6 (2022-01-12)

Miscellaneous Chores

1.10.5 (2022-01-03)

Miscellaneous Chores

1.10.4 (2021-12-03)

Miscellaneous Chores

1.10.3 (2021-07-21)

Miscellaneous Chores

1.10.2 (2021-07-19)

Miscellaneous Chores

1.10.1 (2021-06-25)

Bug Fixes

  • DoubleClickAction: add prefab creator menu option (fc5691a)

    The prefab creator menu option was missing for the DoubleClickAction, this has now been added.

1.10.0 (2021-06-25)

Features

  • prefab: add double click action (3be23f7)

    The double click action takes an input action and will only execute when that action has executed twice within a given duration, which simulates a double click occurring.

1.9.5 (2021-06-24)

Miscellaneous Chores

1.9.4 (2021-06-19)

Miscellaneous Chores

1.9.3 (2021-06-10)

Miscellaneous Chores

1.9.2 (2021-05-09)

Miscellaneous Chores

1.9.1 (2021-05-03)

Miscellaneous Chores

1.9.0 (2021-04-07)

Features

  • Utility: add prefab creator (92ffe0d)

    The latest version of Zinnia has the basis of a prefab creator that can be used to enable easy adding of prefabs to a scene without needing to drag and drop from directories. Instead a new menu item is added for quickly adding prefabs. The guide has been updated to accommodate this and the FodyWeavers.xml is now located in the root to serve both the Runtime and Editor scripts.

Bug Fixes

  • package.json: add missing reference to Editor directory (6997413)

    The build will fail without referencing this new Editor directory so it has now been added to the package.

1.8.16 (2021-03-29)

Miscellaneous Chores

1.8.15 (2021-03-03)

Miscellaneous Chores

1.8.14 (2021-02-27)

Miscellaneous Chores

1.8.13 (2021-02-04)

Miscellaneous Chores

1.8.12 (2021-01-07)

Miscellaneous Chores

1.8.11 (2020-12-21)

Miscellaneous Chores

1.8.10 (2020-12-17)

Miscellaneous Chores

1.8.9 (2020-12-12)

Miscellaneous Chores

1.8.8 (2020-12-11)

Bug Fixes

  • HowToGuides: apply document styling guidelines (24b72a1)

    The document style guidelines have been updated and now have been applied to the guides in this repo.

1.8.7 (2020-11-01)

Miscellaneous Chores

1.8.6 (2020-10-02)

Miscellaneous Chores

1.8.5 (2020-08-29)

Miscellaneous Chores

1.8.4 (2020-08-15)

Miscellaneous Chores

1.8.3 (2020-08-14)

Miscellaneous Chores

1.8.2 (2020-07-28)

Miscellaneous Chores

1.8.1 (2020-07-11)

Bug Fixes

  • API: add missing API documentation (f7456ec)

    The API wasn't auto generated for the previous changes so the API docs were not up to date, they should be now.

  • Facade: use extension method to set enum value (8e659f5)

    The SetUnitType and SetTimeMultiplier methods now uses the Zinnia EnumExtensions helper method to set the value of the enum by the index instead of repeating the same logic.

1.8.0 (2020-07-11)

Features

  • AxesToVector3Action: provide combined deadzone option (ca17e97)

    The deadzones were previously calculated per axis meaning the axis data would not be reported for each individual axis. However, this meant that circular motions outside of the initial axis would not be correctly reported.

    The solution is to provide a combined axis deadzone option that implements a zonal axis deadzone that takes all axis deadzones into consideration.

1.7.1 (2020-07-11)

Miscellaneous Chores

1.7.0 (2020-07-07)

Features

  • Actions: change unsupported properties via UnityEvents (a6c568b)

    A number of public properties could not be changed by UnityEvents as the data types were not supported by the UnityEvent inspector.

    This change brings in custom methods that allows changing these custom data types via UnityEvents by providing primitive inputs.

1.6.1 (2020-07-04)

Bug Fixes

  • HowToGuides: provide correct releases links in installation (d60a091)

    The Installation How To Guide now has the correct links to the releases and latest releases path.

1.6.0 (2020-07-04)

Features

  • Prefabs: expose time multiplier on AxesToVector3Action (abcbdba)

    The AxesToVector3Action had a nested internal TimeComponentExtractor that was used to extract a Time value to multiply the axis data by.

    This has now been exposed on the Facade to make it easier to change and the HowToGuide has been updated to show this needs setting to Delta Time when doing axis movement.

1.5.1 (2020-07-03)

Bug Fixes

  • HowToGuides: apply document style guidelines (344921c)

    The document style guidelines have been applied to clean up the how to guide for this repo.

1.5.0 (2020-07-03)

Features

  • API: add auto-generated API documentation (493b92f)

    The API documentation is auto generated with docfx and converted to markdown via turndown in a custom nodejs script.

Bug Fixes

  • package.json: add docfx.json file (9192b23)

    The docfx.json file was missing from the package.json causing the build process to fail. It has now been added.

1.4.3 (2020-06-08)

Miscellaneous Chores

1.4.2 (2020-05-31)

Miscellaneous Chores

1.4.1 (2020-05-28)

Bug Fixes

  • Action: move cleared attribute to correct location (c443031)

    The Cleared attribute was in the field location and therefore was not creating the correct Clear method for the property and instead was creating it for the backing field.

1.4.0 (2020-05-25)

Features

  • AngleRangeToBoolean: add change angle unit and higher angle range (0e7e1bc)

    The angle unit can now be changed via the inspector and the angle range can extend between -360f and 360f to ensure all angle unit types can be catered for.

    This now makes it possible to get a downward angle, which would be in degrees (or radians) at 170 degrees <--> 200 degress, whereas this isn't possible with signed units as -180 degress is the far left and 180 is the far right, but there is no simple way of knowing the down without using the unsigned unit type.

  • AxisToAngle: include Vector2ToAngle component in configuration (38c82d8)

    Adding the Vector2ToAngle angle converter to the configuration makes it easier to access this component externally.

1.3.1 (2020-05-22)

Miscellaneous Chores

1.3.0 (2020-05-22)

Features

  • Action: convert angle range to boolean (eac0167)

    The AngleRangeToBoolean prefab utilizes an AxesToAngleAction to convert a axis data to an angle and then to determine if that angle is within the angle range and setting a boolean action appropriately.

    There are two output boolean actions included with the prefab:

    • DeactivateOutsideOfAngleRange - will deactivate the boolean when the current angle is no longer in the set range. * DeactivateWithinAxisDeadzone - the action will activate when the angle is within the set range but will not deactivate when the angle is no longer in the set range and will only deactivate when the axis falls back within the deadzone.
  • AxesToAngleAction: provide direction offset (56db138)

    The Direction Offset property allows a GameObject to be provided that will be used to set the origin on the Vector2ToAngle component to ensure the angle is offset based on the direction of the offset.

1.2.4 (2020-05-22)

Miscellaneous Chores

1.2.3 (2020-04-21)

Miscellaneous Chores

1.2.2 (2020-04-14)

Miscellaneous Chores

1.2.1 (2020-04-03)

Miscellaneous Chores

1.2.0 (2020-03-12)

Features

  • HowToGuides: using combined actions (a715563)

    added guide for showing how to use combined actions.

1.1.0 (2020-03-07)

Features

  • Action: convert axis data to float angle with deadzone limits (f1fd5c5)

    The AxesToAngleAction takes a horizontal and vertical axis and converts it to an angle which can be used to determine the direction in which a 2d axis is being pushed. The angle output can then be fed into something to provide an action such as rotating the object to face in a certain direction.

Bug Fixes

  • Action: ensure object properties can be cleared (dc5d0a5)

    The object properties have now been annotated with the Cleared attribute so the relevant cleared method will be weaved for these object properties.

1.0.1 (2020-03-05)

Miscellaneous Chores

1.0.0 (2020-03-03)

Features

  • structure: create initial prefabs and documentation (8aab478)

    The initial prefabs and relevant documentation for the CombinedActions has been added to the repo.