This repository has been archived by the owner on Aug 11, 2024. It is now read-only.
-
-
Notifications
You must be signed in to change notification settings - Fork 34
Change requests for controller provider inspectors #526
Merged
StephenHodgson
merged 6 commits into
feature/controller-mapping-refactor
from
feature/cmr-inspector-changes
Apr 15, 2020
Merged
Change requests for controller provider inspectors #526
StephenHodgson
merged 6 commits into
feature/controller-mapping-refactor
from
feature/cmr-inspector-changes
Apr 15, 2020
Conversation
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
…e reference layout
This was referenced Apr 14, 2020
FejZa
added
the
Ready for review
PR finished primary development, open for review
label
Apr 14, 2020
...s/Profiles/InputSystem/Controllers/BaseMixedRealityControllerDataProviderProfileInspector.cs
Show resolved
Hide resolved
...s/Profiles/InputSystem/Controllers/BaseMixedRealityControllerDataProviderProfileInspector.cs
Show resolved
Hide resolved
...s/Profiles/InputSystem/Controllers/BaseMixedRealityControllerDataProviderProfileInspector.cs
Show resolved
Hide resolved
...es/InputSystem/Controllers/Simulation/SimulatedHandControllerDataProviderProfileInspector.cs
Outdated
Show resolved
Hide resolved
...ofiles/InputSystem/Controllers/Simulation/SimulatedControllerDataProviderProfileInspector.cs
Outdated
Show resolved
Hide resolved
.../InputSystem/Controllers/Hands/BaseMixedRealityHandControllerDataProviderProfileInspector.cs
Outdated
Show resolved
Hide resolved
...s/Profiles/InputSystem/Controllers/BaseMixedRealityControllerDataProviderProfileInspector.cs
Outdated
Show resolved
Hide resolved
...s/Profiles/InputSystem/Controllers/BaseMixedRealityControllerDataProviderProfileInspector.cs
Outdated
Show resolved
Hide resolved
...s/Profiles/InputSystem/Controllers/BaseMixedRealityControllerDataProviderProfileInspector.cs
Outdated
Show resolved
Hide resolved
Looks good to me from a UX point, a great improvement and first pass. Question, are you planning in another PR to also being back the simple Controller Image / Action selection controller popup @FejZa ? |
Yeah we can do the controller images in a separate PR or push. It was still something on my to-do list |
SimonDarksideJ
approved these changes
Apr 15, 2020
StephenHodgson
added a commit
that referenced
this pull request
Apr 26, 2020
* re-implemented controller visualization * fixed profile generation * Added default constructors for controllers * fixed openVR controller instance creation * fixed interaction profile inspector * updated TryRenderController method Added Async counterpart in the interface * updated sdk checkout * fixed mouse x/y default mappings * updated axis processor menus * updated sdk checkout * Strip full asset path before we ask Unity for a unique name (paths should be relative to the project * Made the interaction mapping profile inspector even more awesome changed input processor to a base mixed reality profile to make sure it gets copied correctly on configure * updated sdk checkout * disabled controller popout window * filter input actions by selected axis type * cleaned up the constructors on MixedRealityInteractionMapping * made the input action settable for the interaction mapping * reverted quality settings change * fixed controller popout window * fixed some formatting in the controller popout window * always show the popout window * reverted removal of axis elements and fixed a bit of spacing issues * added profile fields * updated window with controller graphics fixed a bug with the mouse drag offset being miscalculated * Make labels fit perfect * Fixed simulated hand profile inspector and auto generation of default controller mappings * Fixed an issue with being able to set the simulated hand pose data in the inspector's default list property field * fixed navigation back to parent profile * Added missing field property in the interaction mapping profile inspector * updated all the profiles in the SDK * removed this error, it's okay if it's null sometimes * updated icon * Fixed some issues with the visualization profile inspector * updated a few of the controller popout window label locations * updated lumin checkout * Update XRTK-Core/Packages/com.xrtk.core/Inspectors/ControllerPopupWindow.cs * updated sdk * fixed change from browser * Aligned changes from pr * updated changes to reflect other open PRs * fixed inspector and updated speech data provider registrations * cleaned up references * removed unused file * reverted removal of asset menu for controller visualization profile * temporarily removed stateChangeType until we fully understand how we want to implement it and what exactly it does * commented out inspector change from last commit * updated input action * revert removal of menu attribute * Updated input processors context menus * updated sdk * updated sdk * Sorted a few interfaces and fixed namespaces * removed asset menus for input data providers. Most are auto generated anyway * removed input processor outside call * revert * revert * fixed hand controller rendering in uwp * Remove obsolete SetupDefaultInteractions (#515) * updated submodules * updated interaction mapping for base hand controller * updated touch controller * cleaned up references and updated sdk checkout * updated project settings * updated lumin checkout * updated sdk checkout * removed profile references from outside constructor * First pass at camera system refactor * put some files in their proper place * Added camera data provider * updated how we applied the head height * Fixed a race condition after we've reset the profile and started re-initialization Fixed platforms so they only return true outside of the editor * reverted some changes * added GameObject reference to camera rig * updated sdk * reverted quality settings change * updated sdk * fixed hand inspectors * updated sdk checkout * updated sdk checkout * updated lumin checkout * removed extra line * fixed merge conflict * Added a reference to the camera system since the toolkit static accessor comes back null when the application is either quitting or resetting * Added an optional flag to set the head height on all registered providers * moved logic about how we get main camera rig into the getter property itself instead of having it set on registration * removed the Enable call searching for main camera. Not lives in property accessor * updated wmr checkout * updated wmr checkout * updated boundary system to utilize enable and disable properly * fixed WMR Open VR controller initialization * updated base camera provider * refactored the platforms to include IsBuildTargetAvailible and IsBuildTargetActive Added configuration flag to determine if more than one data provider can be registered with a service per platform * Better inspector * reverted single service per platform * updated Icon * updated submodules * reverted inspector changes * fixed sdk checkout * updated submodules * better dropdown menu * optimized and made sure we call gui changed correctly * updated sdk checkout * reverted name change * Updated Service Locator Added IMixedRealityDataProvider.ParentService Added IMixedRealityService partent to all data provider constructors Updated IMixedRealityDataProvider.Priority to also include the parent's priority so it's ordered better in the registry Added Try prefix to all registration methods to conform to industry standard naming conventions Updated tests * updated sdk checkout * updated usage for TryRegisterServiceConfigurations * removed unused reference * Updated TryUnregisterService to also unregister any data providers it's a parent of Updated Unit Test to reflect changes * fixed head height for services that start at the origin * Added priority override to camera system * Change requests for controller provider inspectors (#526) * Add extension to render foldout with bold label * Implement simple view for controller mappings * Update indent levels for profile settings according to render pipeline reference layout * Cache GUIContent and toolbar options * Remove null elements * optimized Check Service Match * removed redundant type arg * updated wmr checkout * Apply the default head height settings if the camera's opacity flag changes * Made sure we're resetting the transforms of the visualizations for each system Fixed teleportation height * updated some documentation * updated wmr and sdk checkouts * removed oculus head height getting set in the controllers * removed adjustment of plays pace transform in ApplySettingsForDefaultHeadHeight when head height == 0 * updated lumin checkout added virtual HeadHeight property * updated lumin checkout * updated sdk checkout * removed comment * updated sdk checkout * updated oculus checkout * updated submodule checkouts * updated submodule checkouts * Removed duplicated serialized fields for the camera data provider global settings. Instead we'll just create a default camera data provider profile and use it as our global settings * using the proper list of registered configurations cleaned up global override field assignments to be much simpler * added configuration foldout * Moved registered service configurations directly into input system profile updated input system foldouts to use the bold style * updated foldout label content to include the interface type this configuration expects * updated sdk checkout * updated sdk checkout * fixed skipping null interaction mapping field * cleaned up a reference * fixed multiple serialized field names in inherited inspector class * Added a way to render the simple controller mapping buttons in the main input system profile inspector * bail early if the controller mapping list is null * Updated windows controller type name to get the controller textures to show up correctly based on the type name * updated usage with configuration foldout * updated simulated controller type name to make texture lookup work updated the names of many controller textures to get them to match the controller type name updated the generic controller image to have both left and right hands updated the controller mapping aggregate list in the input system profile inspector to only add profiles if they're not already referenced * fixed a possible NRE updated the name of the holoLens input action button text * Added Oculus Go Controller line art updated fallback for controller texture * better filtering of duplicate controller mapping profiles * updated controller layouts and fixed a perf bug with action equality * disabled wisisyg * updated oculus checkout * updated oculus and sdk checkouts * Added platform overrides * removed debug * updated oculus checkout * updated wmr checkout * updated wmr assets * force the camera and all it's data providers to the highest priority * updated sdk checkout * updated sdk checkout * cleaned up controller popout window a bit more * fixed up oculus remote controller windows * updated oculus checkout and fixed platform definitions for all configurations * used camera parent transform instead of querying for camera system playspace * updated submodules * cleaned up docs cleaned up profile value assignments cleaned up magic numbers * Changed from input system refactor * Update XRTK-Core/Packages/com.xrtk.core/Inspectors/Profiles/BaseMixedRealityCameraDataProviderProfileInspector.cs * added camera cache fallbacks * reverted change * revert * don't try again * updated base profile inspector to handle null controller types a bit better * Update XRTK-Core/Packages/com.xrtk.core/Inspectors/Profiles/InputSystem/MixedRealityInputSystemProfileInspector.cs * fixed un-responsive input system profile inspector renamed OpenVRDataControllerDataProvider to OpenVRControllerDataProvider updated all subodules Co-authored-by: Dino Fejzagic <dino.f@live.de>
XRTK-Build-Bot
pushed a commit
that referenced
this pull request
Dec 25, 2020
* re-implemented controller visualization * fixed profile generation * Added default constructors for controllers * fixed openVR controller instance creation * fixed interaction profile inspector * updated TryRenderController method Added Async counterpart in the interface * updated sdk checkout * fixed mouse x/y default mappings * updated axis processor menus * updated sdk checkout * Strip full asset path before we ask Unity for a unique name (paths should be relative to the project * Made the interaction mapping profile inspector even more awesome changed input processor to a base mixed reality profile to make sure it gets copied correctly on configure * updated sdk checkout * disabled controller popout window * filter input actions by selected axis type * cleaned up the constructors on MixedRealityInteractionMapping * made the input action settable for the interaction mapping * reverted quality settings change * fixed controller popout window * fixed some formatting in the controller popout window * always show the popout window * reverted removal of axis elements and fixed a bit of spacing issues * added profile fields * updated window with controller graphics fixed a bug with the mouse drag offset being miscalculated * Make labels fit perfect * Fixed simulated hand profile inspector and auto generation of default controller mappings * Fixed an issue with being able to set the simulated hand pose data in the inspector's default list property field * fixed navigation back to parent profile * Added missing field property in the interaction mapping profile inspector * updated all the profiles in the SDK * removed this error, it's okay if it's null sometimes * updated icon * Fixed some issues with the visualization profile inspector * updated a few of the controller popout window label locations * updated lumin checkout * Update XRTK-Core/Packages/com.xrtk.core/Inspectors/ControllerPopupWindow.cs * updated sdk * fixed change from browser * Aligned changes from pr * updated changes to reflect other open PRs * fixed inspector and updated speech data provider registrations * cleaned up references * removed unused file * reverted removal of asset menu for controller visualization profile * temporarily removed stateChangeType until we fully understand how we want to implement it and what exactly it does * commented out inspector change from last commit * updated input action * revert removal of menu attribute * Updated input processors context menus * updated sdk * updated sdk * Sorted a few interfaces and fixed namespaces * removed asset menus for input data providers. Most are auto generated anyway * removed input processor outside call * revert * revert * fixed hand controller rendering in uwp * Remove obsolete SetupDefaultInteractions (#515) * updated submodules * updated interaction mapping for base hand controller * updated touch controller * cleaned up references and updated sdk checkout * updated project settings * updated lumin checkout * updated sdk checkout * removed profile references from outside constructor * First pass at camera system refactor * put some files in their proper place * Added camera data provider * updated how we applied the head height * Fixed a race condition after we've reset the profile and started re-initialization Fixed platforms so they only return true outside of the editor * reverted some changes * added GameObject reference to camera rig * updated sdk * reverted quality settings change * updated sdk * fixed hand inspectors * updated sdk checkout * updated sdk checkout * updated lumin checkout * removed extra line * fixed merge conflict * Added a reference to the camera system since the toolkit static accessor comes back null when the application is either quitting or resetting * Added an optional flag to set the head height on all registered providers * moved logic about how we get main camera rig into the getter property itself instead of having it set on registration * removed the Enable call searching for main camera. Not lives in property accessor * updated wmr checkout * updated wmr checkout * updated boundary system to utilize enable and disable properly * fixed WMR Open VR controller initialization * updated base camera provider * refactored the platforms to include IsBuildTargetAvailible and IsBuildTargetActive Added configuration flag to determine if more than one data provider can be registered with a service per platform * Better inspector * reverted single service per platform * updated Icon * updated submodules * reverted inspector changes * fixed sdk checkout * updated submodules * better dropdown menu * optimized and made sure we call gui changed correctly * updated sdk checkout * reverted name change * Updated Service Locator Added IMixedRealityDataProvider.ParentService Added IMixedRealityService partent to all data provider constructors Updated IMixedRealityDataProvider.Priority to also include the parent's priority so it's ordered better in the registry Added Try prefix to all registration methods to conform to industry standard naming conventions Updated tests * updated sdk checkout * updated usage for TryRegisterServiceConfigurations * removed unused reference * Updated TryUnregisterService to also unregister any data providers it's a parent of Updated Unit Test to reflect changes * fixed head height for services that start at the origin * Added priority override to camera system * Change requests for controller provider inspectors (#526) * Add extension to render foldout with bold label * Implement simple view for controller mappings * Update indent levels for profile settings according to render pipeline reference layout * Cache GUIContent and toolbar options * Remove null elements * optimized Check Service Match * removed redundant type arg * updated wmr checkout * Apply the default head height settings if the camera's opacity flag changes * Made sure we're resetting the transforms of the visualizations for each system Fixed teleportation height * updated some documentation * updated wmr and sdk checkouts * removed oculus head height getting set in the controllers * removed adjustment of plays pace transform in ApplySettingsForDefaultHeadHeight when head height == 0 * updated lumin checkout added virtual HeadHeight property * updated lumin checkout * updated sdk checkout * removed comment * updated sdk checkout * updated oculus checkout * updated submodule checkouts * updated submodule checkouts * Removed duplicated serialized fields for the camera data provider global settings. Instead we'll just create a default camera data provider profile and use it as our global settings * using the proper list of registered configurations cleaned up global override field assignments to be much simpler * added configuration foldout * Moved registered service configurations directly into input system profile updated input system foldouts to use the bold style * updated foldout label content to include the interface type this configuration expects * updated sdk checkout * updated sdk checkout * fixed skipping null interaction mapping field * cleaned up a reference * fixed multiple serialized field names in inherited inspector class * Added a way to render the simple controller mapping buttons in the main input system profile inspector * bail early if the controller mapping list is null * Updated windows controller type name to get the controller textures to show up correctly based on the type name * updated usage with configuration foldout * updated simulated controller type name to make texture lookup work updated the names of many controller textures to get them to match the controller type name updated the generic controller image to have both left and right hands updated the controller mapping aggregate list in the input system profile inspector to only add profiles if they're not already referenced * fixed a possible NRE updated the name of the holoLens input action button text * Added Oculus Go Controller line art updated fallback for controller texture * better filtering of duplicate controller mapping profiles * updated controller layouts and fixed a perf bug with action equality * disabled wisisyg * updated oculus checkout * updated oculus and sdk checkouts * Added platform overrides * removed debug * updated oculus checkout * updated wmr checkout * updated wmr assets * force the camera and all it's data providers to the highest priority * updated sdk checkout * updated sdk checkout * cleaned up controller popout window a bit more * fixed up oculus remote controller windows * updated oculus checkout and fixed platform definitions for all configurations * used camera parent transform instead of querying for camera system playspace * updated submodules * cleaned up docs cleaned up profile value assignments cleaned up magic numbers * Changed from input system refactor * Update XRTK-Core/Packages/com.xrtk.core/Inspectors/Profiles/BaseMixedRealityCameraDataProviderProfileInspector.cs * added camera cache fallbacks * reverted change * revert * don't try again * updated base profile inspector to handle null controller types a bit better * Update XRTK-Core/Packages/com.xrtk.core/Inspectors/Profiles/InputSystem/MixedRealityInputSystemProfileInspector.cs * fixed un-responsive input system profile inspector renamed OpenVRDataControllerDataProvider to OpenVRControllerDataProvider updated all subodules Co-authored-by: Dino Fejzagic <dino.f@live.de>
Sign up for free
to subscribe to this conversation on GitHub.
Already have an account?
Sign in.
Add this suggestion to a batch that can be applied as a single commit.
This suggestion is invalid because no changes were made to the code.
Suggestions cannot be applied while the pull request is closed.
Suggestions cannot be applied while viewing a subset of changes.
Only one suggestion per line can be applied in a batch.
Add this suggestion to a batch that can be applied as a single commit.
Applying suggestions on deleted lines is not supported.
You must change the existing code in this line in order to create a valid suggestion.
Outdated suggestions cannot be applied.
This suggestion has been applied or marked resolved.
Suggestions cannot be applied from pending reviews.
Suggestions cannot be applied on multi-line comments.
Suggestions cannot be applied while the pull request is queued to merge.
Suggestion cannot be applied right now. Please check back later.
XRTK - Mixed Reality Toolkit Change Request
Overview
I updated the inspector for controller data providers to include a simplified version that is suited for beginners and provides important features.
My reference for the layout of the inspector is Unity's render pipeline asset inspector. I think it provides a nice guidline for indentation levels and titles.
See screenshots for details.