Commit graph

87381 commits

Author SHA1 Message Date
Ada
524665f54c Revert OpenVrDisplayPlugin getPlayAreaRect hack 2025-04-01 09:04:46 +10:00
Ada
cedc5be526 OpenXrInputPlugin: User-friendly input actions
Replaces the raw controller button inputs with named OpenXR actions.
There's a lot of engine components that expect raw controller inputs
like the VR teleport script. Those will have to be refactored later,
but for now this works well enough and is perfectly usable. A small
issue I've hit is the LY input working for the teleport script,
but not for smooth locomotion. I've hacked around this by having
the "walk" action bound both to LX/LY and to the Translate actions.
It's a bit janky for teleports, but it's functional.

TODO: Feedback on intuitive bindings for other controller types besides
just the HTC Vive controllers.
2025-04-01 09:04:46 +10:00
Ada
dc3a508051 OpenXrInputPlugin: Make actions more generic
This still isn't ideal and it uses the Vive controller settings,
but this should work on most controllers thanks to OpenXR's built-in
action remapping and standardised button names.
2025-04-01 09:04:46 +10:00
Ada
7ece6e7a0c OpenXrInputPlugin: Hack for Vive controllers
This aught to be replaced with a proper set of XR input profiles,
at the moment this is *just* enough to get hardcoded button inputs
working with the existing Vive controller config.
2025-04-01 09:04:46 +10:00
af00bf5667 Make sure add-apt-repository is available. 2025-04-01 09:04:46 +10:00
Lubosz Sarnecki
2d0db677aa pr_build: Get GCC 13 on Ubuntu using the ppa:ubuntu-toolchain-r/test. 2025-04-01 09:04:46 +10:00
1101a2aeb4 Install missing xcb/glx.h dependency. 2025-04-01 09:04:46 +10:00
Lubosz Sarnecki
760b846bb1 OpenXrDisplayPlugin: Use C++20 std::format. 2025-04-01 09:04:46 +10:00
Lubosz Sarnecki
aa6facf7e6 OpenXrInputPlugin: Use C++20 map iterators. 2025-04-01 09:04:46 +10:00
Lubosz Sarnecki
710da838d8 OpenXr: Use C++20 std::optional. 2025-04-01 09:04:46 +10:00
HifiExperiments
c8557f5c78 OpenXr: Platform improvements.
Add missing includes on Windows.
Include GLX only on Linux.

Move openxr_platform.h include to OpenXrContext.h. To make this
possible, certain names from GLX/X11 need to be undefined in order to be
now includable in OpenXrInput.h.

Add Overte e.V. copyright.

Co-authored-by: Lubosz Sarnecki <lubosz@gmail.com>
2025-04-01 09:04:46 +10:00
Lubosz Sarnecki
661fe08f08 GLMHelpers: Fix build with C++20 on GCC.
When enabling C++20 the lerp function seems to be redefined on GCC (not
on MSVC), don't redefine it using a CMake definition.
2025-04-01 09:04:46 +10:00
05c6a5e5d7 OpenXr: Enable C++20 for OpenXR plugin.
Enabling it globally causes issue with WebRTC.

Co-authored-by: Lubosz Sarnecki <lubosz@gmail.com>
2025-04-01 09:04:46 +10:00
Lubosz Sarnecki
7abc7be287 OpenXrContext: Add Windows platform and bindings. 2025-04-01 09:04:46 +10:00
Lubosz Sarnecki
89ba66c317 OpenXrInputPlugin: Improve haptic feedback mapping. 2025-04-01 09:04:46 +10:00
Lubosz Sarnecki
7e31a1e49b controllers: Improve openxr_index.json mapping. 2025-04-01 09:04:46 +10:00
Lubosz Sarnecki
0505658a39 controllers: openxr: Use actions for walking.
This makes the Y thumbstick axis work.
2025-04-01 09:04:46 +10:00
Lubosz Sarnecki
2db3168612 OpenXrInput: Improve mapping for the Index controller.
* Add thumbstick click and touch.
* Add face and trigger touch.

Use left primary / secondary instead of face button names.
2025-04-01 09:04:46 +10:00
Lubosz Sarnecki
d9cd2fd3d5 OpenGlDisplayPlugin: Add possibility to present frames only once.
Don't present frame more than once in OpenXrDisplayPlugin.
2025-04-01 09:04:46 +10:00
Lubosz Sarnecki
be3e12b18c OpenXrContext: Improve errors when runtime is not available. 2025-04-01 09:04:46 +10:00
Lubosz Sarnecki
473bd4d64e plugins: Add OpenXR plugin.
Add OpenXrDisplayPlugin and OpenXrInputPlugin.
Add controller bindings for the Valve Index controller.
2025-04-01 09:04:46 +10:00
Lubosz Sarnecki
bb2dd63b99 Application: Improve scoping. 2025-04-01 09:04:46 +10:00
Lubosz Sarnecki
fff2127e66 Application: Maintain orientation of eye offset matrix. 2025-04-01 09:04:46 +10:00
Lubosz Sarnecki
4b9998e53e Context: Maintain orientation of eye offset matrix. 2025-04-01 09:04:46 +10:00
Lubosz Sarnecki
f6d724241c HmdDisplayPlugin: Fix whitespace. 2025-04-01 09:04:46 +10:00
Lubosz Sarnecki
8fcafa32d1 UserInputMapper: Make error an error. 2025-04-01 09:04:46 +10:00
Lubosz Sarnecki
43d56eed85 Camera: Init default values. 2025-04-01 09:04:46 +10:00
Lubosz Sarnecki
3d51b10bcb ports: Add openxr-loader.
Copy from vcpkg repository.
Add OpenXR to hifi-client-deps.
2025-04-01 09:04:46 +10:00
Lubosz Sarnecki
881fbf5641 ports: Add jsoncpp.
The build demands it but it's missing.
Copy from upstream vcpkg repo.

Fixes the following error:
```
Computing installation plan...
error: while looking for jsoncpp:x64-linux:
overte-files/vcpkg/cfe0a2a0/ports/jsoncpp: error: jsoncpp does not exist
```
2025-04-01 09:04:46 +10:00
b38237cb8d Update Changelog for 2025.03.3.
Some checks failed
Master API-docs CI Build and Deploy / Build and deploy API-docs (push) Has been cancelled
Master Doxygen CI Build and Deploy / Build and deploy Doxygen documentation (push) Has been cancelled
2025-03-25 16:45:37 +01:00
371eb74723
Merge pull request #1378 from overte-org/fix/audio_lock2
Initialize AudioClient properties earlier.
2025-03-24 19:40:18 +01:00
e55a2ff6f3 Initialize AudioClient properties earlier. 2025-03-24 08:10:07 +01:00
cba6f29f77
Merge pull request #1371 from JulianGro/remove_highcharts
Some checks failed
Master API-docs CI Build and Deploy / Build and deploy API-docs (push) Has been cancelled
Master Doxygen CI Build and Deploy / Build and deploy Doxygen documentation (push) Has been cancelled
Rip out Highcharts proprietary graphing code.
2025-03-17 18:51:15 +01:00
4a6a2a31db
Merge pull request #9 from Armored-Dragon/fix/remove_highcharts-ad_suggestion
Removed extra code no longer required.
2025-03-17 18:29:02 +01:00
armored-dragon
65cdd8b97f
Removed extra code no longer required. 2025-03-17 11:54:39 -05:00
056da70dc2
Merge pull request #1365 from HifiExperiments/changelog
Some checks are pending
Master API-docs CI Build and Deploy / Build and deploy API-docs (push) Waiting to run
Master Doxygen CI Build and Deploy / Build and deploy Doxygen documentation (push) Waiting to run
2025.3.2 changelog
2025-03-17 11:00:25 +01:00
5ee31d6055 Rip out Highcharts proprietary graphing code.
This completely removes the graphing functionality of the Domain server control panel. I really don't think anyone actually uses this though, if people are even aware of its existence. The statistics themselves, without the pretty graphing, are still functional.
2025-03-17 10:45:59 +01:00
HifiExperiments
9301eaf24c split 3.1 / 3.2 2025-03-15 16:14:04 -07:00
HifiExperiments
5384c6a067 2025.3.2 changelog 2025-03-15 14:03:43 -07:00
d09a927a82
Merge pull request #1358 from overte-org/fix/TAA_transparencies
Some checks are pending
Master API-docs CI Build and Deploy / Build and deploy API-docs (push) Waiting to run
Master Doxygen CI Build and Deploy / Build and deploy Doxygen documentation (push) Waiting to run
Fix for blurry/noisy transparencies on TAA
2025-03-14 19:06:01 +01:00
7c59a6360a Added a comment about transparencies 2025-03-14 18:55:28 +01:00
44c600a184
Merge pull request #1360 from HifiExperiments/staticPlumbers
fix long startup times
2025-03-14 18:11:43 +01:00
HifiExperiments
b4f7c24b3e possible fix for long startup times 2025-03-13 23:21:44 -07:00
ac344e26bb Initial fix for blurry/noisy transparencies on TAA 2025-03-12 00:51:56 +01:00
5b6cda34dc
Merge pull request #1318 from ada-tv/fix/gl-swapinterval
Some checks are pending
Master API-docs CI Build and Deploy / Build and deploy API-docs (push) Waiting to run
Master Doxygen CI Build and Deploy / Build and deploy Doxygen documentation (push) Waiting to run
Fix VR Preview on Linux with Mesa drivers
2025-03-02 20:59:57 +01:00
c137c0c5eb
Merge pull request #1333 from JulianGro/fedora41
Update GitHub Actions server packaging
2025-03-02 20:57:46 +01:00
7175feded4
Merge pull request #1330 from HifiExperiments/scriptInitializers
fix script initialization order bug
2025-03-02 12:06:56 +01:00
0922f3fbda
Merge pull request #1331 from JulianGro/reload_defaults
Always show "Load Defaults" in "Running Scripts", not just when the developer menu is enabled.
2025-03-01 20:49:42 +01:00
beb8d29519 Disable Fedora 42 as their repository currently ships a CMake 4.0 release candidate, which breaks too many dependencies. 2025-03-01 20:25:35 +01:00
785418ec20 Patch glslang for GCC 15 compatibility. 2025-03-01 18:22:14 +01:00