1
0
Fork 1
mirror of https://github.com/TES3MP/openmw-tes3mp.git synced 2025-01-16 11:49:56 +00:00
Commit graph

617 commits

Author SHA1 Message Date
madsbuvi
11a3961d65 Merge remote-tracking branch 'remotes/origin/directx_swapchains' into openxr_vr_geometryshader_feature_branch 2021-01-01 19:50:52 +01:00
madsbuvi
6ed89f9141 Support for DirectX swapchains. 2020-12-31 21:08:24 +01:00
Mads Buvik Sandvei
b98b4db4c1 Merge remote-tracking branch 'remotes/origin/multiview_test_branch' into openxr_vr_geometryshader_feature_branch 2020-12-09 21:11:53 +01:00
Andrei Kortunov
dc7b48e92e Generate physics collisions for projectiles (bug #3372)
Remove redundant now mHit field
2020-12-08 09:05:38 +01:00
Mads Buvik Sandvei
e42dada208 Load interaction profile suggestions from xml instead of hardcoding them. 2020-12-02 21:49:00 +01:00
Mads Buvik Sandvei
1e64aea1a5 Bump openxr to version 1.0.13. Interaction profiles for vive cosmos and huawei 2020-11-29 17:15:53 +01:00
Mads Buvik Sandvei
3e581571f4 QWERTY implementation of a virtual keyboard. 2020-11-14 19:20:36 +01:00
Christoph Haag
b54e77a667 fix openmw non-vr build
../apps/openmw/mwphysics/movementsolver.cpp: In static member function ‘static void MWPhysics::MovementSolver::move(MWPhysics::ActorFrameData&, float, const btCollisionWorld*, MWPhysics::WorldFrameData&)’:
../apps/openmw/mwphysics/movementsolver.cpp:98:52: error: ‘getPlayer’ is not a member of ‘MWMechanics’
   98 |         const bool isPlayer = (ptr == MWMechanics::getPlayer());
      |                                                    ^~~~~~~~~
2020-10-30 23:29:24 +00:00
Mads Buvik Sandvei
c1e6b05555 Wrote a meta menu for accessibility on VR controllers with few keys. 2020-10-27 20:45:41 +01:00
Mads Buvik Sandvei
4f8f0cc8ac Merge branch 'master' of https://gitlab.com/madsbuvi/openmw into openxr_vr 2020-10-22 20:39:53 +02:00
Mads Buvik Sandvei
4c4fc0c69a Refactoring. Moved changes to MWRender::Camera into a new subclass MWVR::VRCamera. Moved head tracking code to VRCamera. 2020-10-21 21:34:47 +02:00
Mads Buvik Sandvei
cf20faff21 Option to make use of XR_EXT_debug_utils if available 2020-10-17 21:11:31 +02:00
Mads Buvik Sandvei
c3a312f80d Squashed commit of the following:
commit d8564b8e501c98fa2e3cde582b8d06d7c78ba6ce
Author: Mads Buvik Sandvei <madssandvei@protonmail.com>
Date:   Fri Oct 16 23:43:39 2020 +0200

    bad assignment

commit 84f66e4bf1050ce8a316a27f8b10dc2243e35406
Author: Mads Buvik Sandvei <madssandvei@protonmail.com>
Date:   Fri Oct 16 21:08:27 2020 +0200

    Removed the approach of abstracting xr paths with enums. It is not turning out to be useful. Use the explicit paths instead. Added some default bindings for most currently available controllers, except the xbox controller.

commit ae525d0a239c087a7344528634a078e0812af66d
Author: Mads Buvik Sandvei <madssandvei@protonmail.com>
Date:   Fri Oct 16 21:05:37 2020 +0200

    Cleaned up openxr extensions code. Upgraded openxr to version 1.0.12 to enable support for certain controllers.

commit 2d71a5ecbf699c59f1fcdbebcad867fd28552929
Author: Mads Buvik Sandvei <madssandvei@protonmail.com>
Date:   Thu Sep 24 22:18:25 2020 +0200

    simple_controller
2020-10-17 12:33:46 +02:00
fredzio
3c2504b442 Process movement queue in one or several background threads
Before movement calculation, the main thread prepare a
vector of ActorFrameData, which contains all data necessary to perform
the simulation, and feed it to the solver. At the same time it fetches
the result from the previous background simulation, which in turn is
used by the game mechanics.
Other functions of the physics system (weapon hit for instance)
interrupt the background simulation, with some exceptions described
below.

The number of threads is controlled by the numeric setting

[Physics]
async num threads

In case 'async num threads' > 1 and Bullet doesn't support multiple threads,
1 async thread will be used. 0 means synchronous solver.
Additional settings (will be silently switched off if async num threads = 0)

[Physics]
defer aabb update

Update AABBs of actors and objects in the background thread(s). It is not an especially
costly operation, but it needs exclusive access to the collision world, which blocks
other operations. Since AABB needs to be updated for collision detection, one can queue
them to defer update before start of the movement solver. Extensive tests on as much
as one installation (mine) show no drawback having that switched on.

[Physics]
lineofsight keep inactive cache

Control for how long (how many frames) the line of sight (LOS) request will be kept updated.
When a request for LOS is made for the first time, the background threads are stopped to
service it. From now on, the LOS will be refreshed preemptively as part of the background
routine until it is not required for lineofsight keep inactive cache frames. This mean
that subsequent request will not interrupt the background computation.
2020-10-15 06:41:35 +02:00
Mads Buvik Sandvei
bd4093bbcb Use OpenXR's action sets to better separate gui and gameplay actions. Also jump works on press now. 2020-08-09 12:55:09 +02:00
Petr Mikheev
0de6650add Add RayCastingInterface 2020-08-06 22:03:33 +02:00
Mads Buvik Sandvei
d0ab6f4497 Avoiding build woes from system jsoncpp 2020-08-02 16:56:19 +02:00
Evil Eye
6ad20ec9c7 Mutate base records when adding/removing spells 2020-07-28 08:33:28 +02:00
Mads Buvik Sandvei
40e9b970b9 cmake versioning 2020-07-22 14:13:15 +02:00
Mads Buvik Sandvei
cdb8505f1d Use FetchContent feature of CMake to include openxr dependency instead of the old way. 2020-07-21 20:47:13 +02:00
Mads Buvik Sandvei
c9e761eb88 Merge remote-tracking branch 'remotes/origin/master' into openxr_vr 2020-07-21 13:58:52 +02:00
Mads Buvik Sandvei
2a4bdfedc1 Add CI option for VR build in before script.
Slight cmake refactoring.
2020-07-20 20:41:31 +02:00
Mads Buvik Sandvei
e0b51af395 Sharing shadow maps across eyes.
Does not yet expand frustum.
2020-07-20 13:03:48 +00:00
Mads Buvik Sandvei
658b5033e6 OpenXR build and distribution (windows) 2020-07-13 14:55:04 +02:00
Petr Mikheev
51173ebcf5 Refactoring. Move all code related to 'view over shoulder' to a separate file. 2020-07-12 20:51:38 +02:00
Mads Buvik Sandvei
69b4a4741f Formatting errors 2020-07-05 12:18:54 +02:00
Mads Buvik Sandvei
76e6862c82 Revert formatting errors based on diff. 2020-07-05 12:02:31 +02:00
Bret Curtis
0c2fea8254
Merge pull request #2932 from elsid/replace_open_threads
Replace OpenThreads by std types
2020-07-04 13:11:23 +02:00
elsid
a36a55bfb5
Clamp sound volume on settings update 2020-07-02 06:38:20 +02:00
Bret Curtis
acf36344d4
Merge pull request #2946 from elsid/sound_update_water
Put logic to update water sound id and volume into a separate class
2020-07-01 22:50:29 +02:00
elsid
439891ef53
Put logic to update water sound id and volume into a separate class 2020-07-01 17:49:39 +02:00
Andrei Kortunov
27f1a3376c Add a separate stats watcher for GUI 2020-07-01 15:55:44 +04:00
elsid
0594b7d1a0
Put logic for the next region sound selection into a separate class 2020-06-30 23:23:37 +02:00
Mads Buvik Sandvei
58d73e14e6 Merge branch 'master' of https://gitlab.com/madsbuvi/openmw.git into openxr_vr
# Conflicts:
#	apps/openmw/mwbase/environment.cpp
#	apps/openmw/mwbase/environment.hpp
#	apps/openmw/mwbase/world.hpp
#	apps/openmw/mwgui/windowmanagerimp.cpp
#	apps/openmw/mwinput/inputmanagerimp.hpp
#	apps/openmw/mwrender/animation.cpp
#	apps/openmw/mwrender/camera.cpp
#	apps/openmw/mwrender/camera.hpp
#	apps/openmw/mwrender/renderingmanager.cpp
#	apps/openmw/mwrender/renderingmanager.hpp
2020-06-28 11:59:07 +02:00
Mads Buvik Sandvei
45656f1d06 Comments etc 2020-06-28 11:33:01 +02:00
Mads Buvik Sandvei
91de6392ca More refactoring / cleanup. Code policies. 2020-06-26 23:02:48 +02:00
elsid
40ad87bc4d
Replace OpenThreads by std types 2020-06-25 22:16:09 +02:00
Mads Buvik Sandvei
e3c460ae35 Swapchain refactoring. Use of multisampling. Msaa resolve steps for mirror textures. 2020-06-24 22:22:09 +02:00
Mads Buvik Sandvei
1cf97fd7ad lots of refactoring and some commenting 2020-06-21 23:40:07 +02:00
bzzt
d684f1a78f terrainbased objectpaging
Signed-off-by: Bret Curtis <psi29a@gmail.com>
2020-06-13 00:22:27 +02:00
elsid
c4cd3b2c4f
Add pathgrid to navmesh as off mesh connection 2020-06-12 21:04:02 +02:00
Andrei Kortunov
4afc332a0c Add a FogManager 2020-06-07 15:51:03 +04:00
Bret Curtis
5d019c27ae
Merge pull request #2887 from akortunov/worldmanager
Introduce a separate class to control world date and time
2020-06-05 13:15:44 +02:00
Andrei Kortunov
81805b7263 Introduce a separate class to control world date and time 2020-06-05 12:07:32 +04:00
elsid
d35ccc39c6
Fix build tests with double precision bullet 2020-06-03 21:34:05 +02:00
Andrei Kortunov
2ff04b4e73 Move TextColours initialization to the TextColours itself 2020-05-26 18:35:16 +04:00
Mads Buvik Sandvei
480ce82217 Fixed performance issues related to xr synchronization as well as osg pipelining. Some code refactoring / cleanup. 2020-05-24 18:00:42 +02:00
Mads Buvik Sandvei
cbbc82f053 Merge branch 'master' of https://gitlab.com/madsbuvi/openmw.git into openxr_vr
# Conflicts:
#	CMakeLists.txt
#	apps/openmw/engine.cpp
#	apps/openmw/mwgui/windowmanagerimp.cpp
#	apps/openmw/mwinput/inputmanagerimp.cpp
#	apps/openmw/mwinput/inputmanagerimp.hpp
#	apps/openmw/mwphysics/physicssystem.cpp
#	apps/openmw/mwrender/water.cpp
#	apps/openmw/mwrender/water.hpp
#	apps/openmw/mwworld/worldimp.cpp
2020-05-17 23:47:28 +02:00
Andrei Kortunov
add42830d9 Add a flag to use double-precision functions from Bullet 2020-05-15 12:48:47 +04:00
Andrei Kortunov
b33c4c920c Move all OICS handling to the separate file 2020-05-09 11:27:02 +04:00