1
0
Fork 1
mirror of https://github.com/TES3MP/openmw-tes3mp.git synced 2025-01-15 18:19:55 +00:00
Commit graph

134 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
a9cea565f9 Proper handling of cull flags 2021-01-01 11:50:18 +01:00
Mads Buvik Sandvei
1c94d5af27 BruteForce fixes (still incomplete) 2020-12-20 20:32:32 +01:00
Mads Buvik Sandvei
823bda139a Merge remote-tracking branch 'remotes/origin/multiview_test_branch' into openxr_vr_geometryshader_feature_branch 2020-12-20 14:17:39 +01:00
Mads Buvik Sandvei
289a939d3b Sharing shadow via cv instead 2020-12-19 15:47:16 +01:00
Mads Buvik Sandvei
74806e4893 Better use of osg stereo, avoids redundant synchronization. 2020-12-19 15:15:58 +01:00
Mads Buvik Sandvei
1b193deeac Misc new stereo integration fixes. 2020-12-16 21:00:21 +01:00
Mads Buvik Sandvei
4c9278522e Misc practical fixes from integrating with vr. Reordered construction. Added more callbacks. 2020-12-16 20:59:10 +01:00
Mads Buvik Sandvei
d03f55bc2d Basic functions in place. Still bad handling of GUI 2020-12-11 18:37:50 +01:00
Mads Buvik Sandvei
76fc1a8f84 Stereo now initializes before anything is drawn. Added option to add initial/pre/post draw callbacks to stereo. 2020-12-10 21:29:56 +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
Mads Buvik Sandvei
c974e1dde3 Merge remote tracking branch multiview_test_branch 2020-12-09 19:42:15 +01:00
Mads Buvik Sandvei
1bebe51c29 Make use of shared shadow maps in the brute force method 2020-12-08 21:37:27 +01:00
Mads Buvik Sandvei
c870749c39 Merge remote-tracking branch 'remotes/origin/master' into multiview_test_branch 2020-12-06 15:24:12 +01:00
Mads Buvik Sandvei
49e76fa077 Merge remote-tracking branch 'remotes/origin/master' into openxr_vr 2020-11-27 00:36:10 +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
fredzio
1357bba0a0 Use some C++17 where it makes the code more readable
Also replace boost::optional
2020-10-22 07:15:16 +02:00
Bret Curtis
82431b752d removed unnessary bits that cmake should be doing for us; replace Misc::gcd with std::gcd 2020-10-20 23:38:05 +02:00
AnyOldName3
df178ed97c Merge branch 'container-regressions' into 'master'
Fix container regressions

See merge request OpenMW/openmw!346

(cherry picked from commit b0aee6f83d4cddb0116284b197913f9687dd9cee)

95e7a22d fix container regressions
2020-10-16 22:55:10 +00: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
Assumeru
72549651e0
Rework container resolution (#3006)
* Rework container resolution

* add optional argument to getCount

* remove now-redundant changes

* undo worldimp changes

* move save-fixing code to InventoryState

* replace Rng instances with Seeds
2020-10-13 17:46:32 +02:00
Mads Buvik Sandvei
5056ca8cd8 missing include 2020-10-11 18:16:45 +02:00
Mads Buvik Sandvei
8a6738469e Merge branch 'master' of https://gitlab.com/madsbuvi/openmw into multiview_test_branch 2020-09-19 20:58:07 +02:00
Mads Buvik Sandvei
2952463112 Configurability. Brute force option. 2020-09-19 20:55:06 +02:00
Mads Buvik Sandvei
943fe06173 Cleaned up update callbacks. Rescued floating point accuracy of gl_Position 2020-09-14 23:09:44 +02:00
Mads Buvik Sandvei
9c171869cb Geometry shader stereo functional 2020-09-14 22:17:07 +02:00
psi29a
f90a049702 Merge branch 'movement_refactoring' into 'master'
Refactoring related to "smooth movement"

See merge request OpenMW/openmw!285

(cherry picked from commit 6eaf0a389d5aed3b74ab1a7cf89574612f964bdf)

e847b4c8 Split getSpeed() to getMaxSpeed() and getCurrentSpeed()
a96c46bc Refactor calculation of movement.mSpeedFactor
03ee9090 Use getMaxSpeed instead of getCurrentSpeed where it makes sense.
a178af5c Create helper functions `normalizeAngle` and `rotateVec2f`
2020-08-27 11:54:30 +00:00
Mads Buvik Sandvei
89ff075936 New config options 2020-08-07 23:33:21 +02:00
elsid
02f9b44f01
Use RAII for object ptr from pool 2020-07-04 01:15:27 +02:00
elsid
6ca29c6107
Use common type for pool of sounds and streams 2020-07-04 01:09:04 +02:00
Andrei Kortunov
d1a3cc98ff Get rid of ECLD and dependencies 2020-06-17 13:09:16 +04:00
elsid
c4cd3b2c4f
Add pathgrid to navmesh as off mesh connection 2020-06-12 21:04:02 +02:00
elsid
bd1ef4dd6d
Add detournavigator test for multiple worker threads 2020-04-26 22:00:55 +02:00
Frederic Chardon
513ac8986d Add link to opencs documentation on readthedocs, available through
context menu.
The documentation opens in default browser.

There are 3 contexts:
- global: opens the OpenMW CS User Manual main page
- when a record is selected: opens the "Tables" page
- when the filter field is selected: opens the "Record Filters" page

There is also a link to the OpenCS tutorial in the help menu.
2020-04-18 20:54:21 +00:00
Andrei Kortunov
a250a405b4 An attempt to fix the MSVC2017 build 2020-01-09 20:42:06 +04:00
Andrei Kortunov
1cdd33b434 Implement additional stringops to avoid Boost functions 2020-01-09 19:40:22 +04:00
Andrei Kortunov
e679190f31 Introduce a custom format() function to get rid of boost::format() and hackish replace() 2019-05-20 09:20:01 +04:00
Andrei Kortunov
861d41f4a4 Native graphics herbalism support (feature #5010) 2019-05-02 23:03:47 +04:00
elsid
ccc709a316
Store guarded navmesh cache item in shared_ptr
Remove useless SharedGuarded type.
2019-03-10 17:06:19 +03:00
Andrei Kortunov
bf5f68a4d8 Replace boost GCD to the homebrew implementation 2019-03-02 17:32:05 +04:00
Grigory Latyshev
3872d7476b Move makeOsgVec3f() to settingsutils.hpp
Remove all other makeOsgVec3f() implementations
2019-02-28 20:03:42 +00:00
Grigory
af7b6a09a8 Simplify Misc::StringUtils::toLower 2019-02-28 00:24:43 +03:00
elsid
33f6fb258d
Option to set specific random seed for random number generator 2019-02-26 09:36:34 +03:00
Capostrophic
8ecd0b82a4 Replace Boost format and replace_all where possible 2019-02-24 03:20:20 +03:00
Andrei Kortunov
3032b177a1 Remove redundant includes 2019-02-23 08:02:12 +04:00
elsid
16675fd254
Return empty path when navmesh is not found for agent 2019-02-16 15:37:06 +03:00
Andrei Kortunov
9e4a339ad3 Daytime node switch support (feature #4836) 2019-02-02 10:50:15 +04:00
elsid
264ea99af6 Use explicit default ctors call
Special change for MSVC2015.
2018-11-02 10:35:57 +03:00
elsid
ed73d130f9
Cache navmesh tiles
Use LRU modification to hold currently used items. Use RecastMesh binary
data for item key.

Store original pointer of btCollisionShape in user pointer to make available
it as an identifier within all duplicates. Use pointer to heights data array
for btHeightfieldTerrainShape.
2018-10-13 22:22:12 +03:00
elsid
ae7285e960
Use ScopeGuarded instead of raw mutex 2018-10-13 22:16:35 +03:00