Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

hello_xr: Add Valve Index bindings #163

Merged
merged 4 commits into from
Jul 27, 2020

Conversation

ChristophHaag
Copy link
Contributor

... and use trigger/value for grabAction in Vive Controller bindings.

@rpavlik
Copy link
Contributor

rpavlik commented May 28, 2020

@JoeLudwig ?

@JoeLudwig
Copy link

Looks good to me.

I haven't run helloxr with a Vive Controller yet, but I suspect the trigger is easier to deal with than the grip button. I have much the same change locally for the index controllers.

@rpavlik
Copy link
Contributor

rpavlik commented May 29, 2020

@ChristophHaag if you can rebase this or otherwise resolve the conflicts, and add a change log fragment, that would be great, and I'll go ahead and merge it.

@ChristophHaag
Copy link
Contributor Author

Well the grab action is a float action that is used to scale to cube size, and if we bind the Vive Wand's digital grip button we only get the "boring" scales 0.0 and 1.0.

Squeeze is a physical button on this controller.
If possible, grabAction should be a float.
squeeze/value corresponds to how much of the handle is touched which feels undesirable.
squeeze/force corresponds to how much the handle is actually squeezed.
@rpavlik rpavlik merged commit 0d5d0c2 into KhronosGroup:master Jul 27, 2020
rpavlik added a commit that referenced this pull request Jul 28, 2020
Note the relicensing of the registry XML file and some include files
provided by or generated by this repository (first item in each
changelog section). Each file’s header, or an adjacent file with
.license appended to the filename, is the best reference for its license
terms. We are currently working on ensuring all files have an SPDX
license identifier tag either in them or in an adjacent file. This is
still in progress but mostly complete.

-   Registry
    -   Relicense registry XML from MIT-like “Khronos Free Use License
        for Software and Documentation” to, at your option, either the
        Apache License, Version 2.0, found at
        http://www.apache.org/licenses/LICENSE-2.0, or the MIT License,
        found at http://opensource.org/licenses/MIT, for broader license
        compatibility with downstream projects. (SPDX License Identifier
        expression “Apache-2.0 OR MIT”) (internal MR 1814,
        OpenXR-Docs/#3, internal issue 958)
    -   Add XR_MSFT_holographic_window_attachment vendor extension.
        (internal MR 1833)
    -   Add XR_EXT_hp_mixed_reality_controller multi-vendor extension.
        (internal MR 1834)
    -   Add XR_EXT_samsung_odyssey_controller multi-vendor extension.
        (internal MR 1835)
    -   Add XR_VALVE_analog_threshold vendor extension. (internal MR
        1859)
    -   Add XR_MND_swapchain_input_attachment vendor extension.
        (internal MR 1865)
    -   Reserve extension numbers 71 to 78 for Facebook extensions.
        (internal MR 1839)
    -   Reserve extension numbers 79 to 88 for Valve extensions.
        (internal MR 1842)
    -   Reserve extension numbers 89 to 92 for Khronos extensions.
        (internal MR 1844)
    -   Reserve extension numbers 93 to 94 for
        EXT_unbounded_reference_space and EXT_spatial_anchor. (internal
        MR 1854)
    -   XR_EPIC_view_configuration_fov: Fix recommendedFov incorrectly
        being named recommendedMutableFov. This is a SOURCE-INCOMPATIBLE
        CHANGE to a vendor extension. (internal MR 1812)
    -   schema: Adjust to permit bitmask expansion in extensions,
        already supported by toolchain thanks to Vulkan. (internal MR
        1865)
    -   scripts: Teach xml-consistency to handle bitmask values defined
        in extensions. (internal MR 1865)
-   SDK
    -   Relicense generated headers openxr.h, openxr_platform.h,
        openxr_reflection.h, and static header openxr_platform_defines.h
        from the Apache License, version 2.0, to, at your option, either
        the Apache License, Version 2.0, found at
        http://www.apache.org/licenses/LICENSE-2.0, or the MIT License,
        found at http://opensource.org/licenses/MIT, for broader license
        compatibility with downstream projects. (SPDX License Identifier
        expression “Apache-2.0 OR MIT”) (internal MR 1814,
        OpenXR-Docs/#3, internal issue 958)
    -   Loader: Fix loading relative runtime libraries on Linux.
        (internal MR 1817)
    -   Loader: Fix error on xrCreateInstance when explicitly trying to
        enable an implicit API layer. (internal MR 1858)
    -   Modify Azure DevOps build pipeline to automatically generate a
        NuGet package. (OpenXR-SDK-Source/#196)
    -   Partially revert build system changes related to detecting
        Direct3D, to fix builds. (internal MR 1802)
    -   Portability fixes, including checking for timespec_get before
        enabling XR_USE_TIMESPEC. (internal MR 1804)
    -   cmake: export OpenXRConfig.cmake during install. Two targets can
        be imported by another CMake application: OpenXR::openxr_loader
        and OpenXR::headers. (OpenXR-SDK-Source/#191,
        OpenXR-SDK-Source/#185)
    -   hello_xr: Fix disparity between swapchain and render pass sample
        count in Vulkan in the case where implementation recommends a
        value higher than one. (internal MR 1794)
    -   hello_xr: Fix build on a minimal Linux install by ensuring we
        check for all dependencies we use. We had missed checking for
        xcb_glx. (internal MR 1799, internal issue 1360)
    -   hello_xr: Fix a Vulkan crash on Windows related to the mirror
        window. (internal MR 1823)
    -   hello_xr: Use more proper linear formats (internal MR 1840)
    -   hello_xr: Enable use of glslangValidator to compile shaders if
        shaderc is not available. (internal MR 1857)
    -   hello_xr: Fix verbose per-layer information. (internal MR 1866)
    -   hello_xr: Add Valve Index Controller bindings. Also use trigger
        value instead of squeeze click for grab action on Vive Wand
        controller. (OpenXR-SDK-Source/#163)
    -   openxr_reflection: Add XR_LIST_STRUCT_ expansion macros for
        structure types, as well as XR_LIST_STRUCTURE_TYPES macro
        associating types with XrStructureType values. (internal MR
        1495)
    -   openxr_reflection: Adds XR_LIST_EXTENSIONS() macro, which will
        call your supplied macro name with the name and extension number
        of all known extensions. (internal MR 1864)
rhabacker pushed a commit to rhabacker/OpenXR-SDK-Source that referenced this pull request Nov 16, 2022
Note the relicensing of the registry XML file and some include files
provided by or generated by this repository (first item in each
changelog section). Each file’s header, or an adjacent file with
.license appended to the filename, is the best reference for its license
terms. We are currently working on ensuring all files have an SPDX
license identifier tag either in them or in an adjacent file. This is
still in progress but mostly complete.

-   Registry
    -   Relicense registry XML from MIT-like “Khronos Free Use License
        for Software and Documentation” to, at your option, either the
        Apache License, Version 2.0, found at
        http://www.apache.org/licenses/LICENSE-2.0, or the MIT License,
        found at http://opensource.org/licenses/MIT, for broader license
        compatibility with downstream projects. (SPDX License Identifier
        expression “Apache-2.0 OR MIT”) (internal MR 1814,
        OpenXR-Docs/KhronosGroup#3, internal issue 958)
    -   Add XR_MSFT_holographic_window_attachment vendor extension.
        (internal MR 1833)
    -   Add XR_EXT_hp_mixed_reality_controller multi-vendor extension.
        (internal MR 1834)
    -   Add XR_EXT_samsung_odyssey_controller multi-vendor extension.
        (internal MR 1835)
    -   Add XR_VALVE_analog_threshold vendor extension. (internal MR
        1859)
    -   Add XR_MND_swapchain_input_attachment vendor extension.
        (internal MR 1865)
    -   Reserve extension numbers 71 to 78 for Facebook extensions.
        (internal MR 1839)
    -   Reserve extension numbers 79 to 88 for Valve extensions.
        (internal MR 1842)
    -   Reserve extension numbers 89 to 92 for Khronos extensions.
        (internal MR 1844)
    -   Reserve extension numbers 93 to 94 for
        EXT_unbounded_reference_space and EXT_spatial_anchor. (internal
        MR 1854)
    -   XR_EPIC_view_configuration_fov: Fix recommendedFov incorrectly
        being named recommendedMutableFov. This is a SOURCE-INCOMPATIBLE
        CHANGE to a vendor extension. (internal MR 1812)
    -   schema: Adjust to permit bitmask expansion in extensions,
        already supported by toolchain thanks to Vulkan. (internal MR
        1865)
    -   scripts: Teach xml-consistency to handle bitmask values defined
        in extensions. (internal MR 1865)
-   SDK
    -   Relicense generated headers openxr.h, openxr_platform.h,
        openxr_reflection.h, and static header openxr_platform_defines.h
        from the Apache License, version 2.0, to, at your option, either
        the Apache License, Version 2.0, found at
        http://www.apache.org/licenses/LICENSE-2.0, or the MIT License,
        found at http://opensource.org/licenses/MIT, for broader license
        compatibility with downstream projects. (SPDX License Identifier
        expression “Apache-2.0 OR MIT”) (internal MR 1814,
        OpenXR-Docs/KhronosGroup#3, internal issue 958)
    -   Loader: Fix loading relative runtime libraries on Linux.
        (internal MR 1817)
    -   Loader: Fix error on xrCreateInstance when explicitly trying to
        enable an implicit API layer. (internal MR 1858)
    -   Modify Azure DevOps build pipeline to automatically generate a
        NuGet package. (OpenXR-SDK-Source/KhronosGroup#196)
    -   Partially revert build system changes related to detecting
        Direct3D, to fix builds. (internal MR 1802)
    -   Portability fixes, including checking for timespec_get before
        enabling XR_USE_TIMESPEC. (internal MR 1804)
    -   cmake: export OpenXRConfig.cmake during install. Two targets can
        be imported by another CMake application: OpenXR::openxr_loader
        and OpenXR::headers. (OpenXR-SDK-Source/KhronosGroup#191,
        OpenXR-SDK-Source/KhronosGroup#185)
    -   hello_xr: Fix disparity between swapchain and render pass sample
        count in Vulkan in the case where implementation recommends a
        value higher than one. (internal MR 1794)
    -   hello_xr: Fix build on a minimal Linux install by ensuring we
        check for all dependencies we use. We had missed checking for
        xcb_glx. (internal MR 1799, internal issue 1360)
    -   hello_xr: Fix a Vulkan crash on Windows related to the mirror
        window. (internal MR 1823)
    -   hello_xr: Use more proper linear formats (internal MR 1840)
    -   hello_xr: Enable use of glslangValidator to compile shaders if
        shaderc is not available. (internal MR 1857)
    -   hello_xr: Fix verbose per-layer information. (internal MR 1866)
    -   hello_xr: Add Valve Index Controller bindings. Also use trigger
        value instead of squeeze click for grab action on Vive Wand
        controller. (OpenXR-SDK-Source/KhronosGroup#163)
    -   openxr_reflection: Add XR_LIST_STRUCT_ expansion macros for
        structure types, as well as XR_LIST_STRUCTURE_TYPES macro
        associating types with XrStructureType values. (internal MR
        1495)
    -   openxr_reflection: Adds XR_LIST_EXTENSIONS() macro, which will
        call your supplied macro name with the name and extension number
        of all known extensions. (internal MR 1864)
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

3 participants