Alexei Dobrohotov
f90e403bc1
Avoid summon spawn if actor isn't in a cell (bug #5644 )
2020-10-18 01:42:32 +03:00
psi29a
9d350ec824
Merge branch 'head_bobbing' into 'master'
...
Add head bobbing in first person mode
Closes #5043
See merge request OpenMW/openmw!320
2020-10-17 19:54:34 +00:00
Alexei Dobrohotov
4966cd217e
Merge branch 'fix_give_way' into 'master'
...
Use full speed in the "NPCs give way" maneuver.
See merge request OpenMW/openmw!348
2020-10-17 17:32:09 +00:00
Petr Mikheev
c72199155c
Use full speed in the "NPCs give way" maneuver.
2020-10-17 15:33:23 +02:00
Bret Curtis
8050882baf
Merge pull request #3015 from akortunov/overrides
...
Mark overrided methods as overrides
2020-10-17 13:32:08 +02:00
AnyOldName3
bf45bd5802
Merge branch 'macos-runner-beta-fencing' into 'master'
...
Only use MacOS runners for this project
See merge request OpenMW/openmw!347
2020-10-17 00:16:39 +00:00
AnyOldName3
5e7e14c870
Only use MacOS runners for this project, not forks
2020-10-17 00:16:39 +00: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
AnyOldName3
de7bafcbbd
Merge branch 'falldamage' into 'master'
...
Restore fall damage
See merge request OpenMW/openmw!345
2020-10-16 19:54:00 +00:00
Andrei Kortunov
8ca3c3b123
Mark overrided methods by override keyword
2020-10-16 22:18:54 +04:00
fredzio
978af12c2d
Restore fall damage
2020-10-16 19:30:03 +02:00
Chris Djali
6326bb7d2e
Merge pull request #3016 from OpenMW/async-msvc2017-fix-final
...
Fix MSVC 2017
2020-10-15 22:50:03 +01:00
Chris Djali
590635906b
Fix MSVC 2017
...
Resolves the regression introduced with Async Physics
2020-10-15 21:02:57 +01:00
Bret Curtis
e5392cabf1
Merge pull request #3013 from OpenMW/macos_target_fix
...
Resolve 'shared_timed_mutex' is unavailable: introduced in macOS 10.12
2020-10-15 13:06:25 +02:00
Bret Curtis
b024518c18
Resolve 'shared_timed_mutex' is unavailable: introduced in macOS 10.12
2020-10-15 11:12:23 +02:00
psi29a
c16fa27407
Merge branch 'async-physics' into 'master'
...
Async physics
See merge request OpenMW/openmw!248
2020-10-15 08:34:26 +00:00
fredzio
ae3306c019
Document async physics settings
...
Add an option to the launcher
Update changelog
2020-10-15 06:41:41 +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
fredzio
91b3926a49
We need to update the collision world after each step.
...
Change order of traversal simulation step to make it rare enough to be parallelizable
Before:
for actor in actors:
repeat numstep:
solve(actor)
After:
repeat numstep:
for actor in actors:
solve(actor)
Introduce struct ActorFrameData to pack all data that is necessary for
the solver
2020-10-15 06:41:22 +02:00
fredzio
d76cc5d0a9
Make the Object class manage its collision object and position.
2020-10-15 06:41:16 +02:00
fredzio
4ef36973fb
Make the Actor class manage its collision object and position.
2020-10-15 06:41:08 +02:00
fredzio
82da2045a9
Non functionnal changes in preparation for async physics feature
2020-10-15 06:41:03 +02:00
Bret Curtis
425fa837d1
Merge pull request #3012 from akortunov/container_crash
...
Fix crash on saving
2020-10-14 12:43:31 +02:00
Bret Curtis
e65fad2070
Merge pull request #3004 from akortunov/arrow_attach
...
Attach arrows to actor's hands
2020-10-14 10:59:14 +02:00
Andrei Kortunov
c3d84b2c7c
Ability to attach arrows to shooter's hands (feature #5642 )
2020-10-14 10:07:42 +04:00
psi29a
5c43e015a7
Merge branch 'noobject' into 'master'
...
Unbreak build with cmake < 3.12
See merge request OpenMW/openmw!344
2020-10-14 05:34:24 +00:00
Andrei Kortunov
8e647aa72a
Fix crash on saving
2020-10-14 09:16:01 +04:00
fredzio
4ea07639b8
Unbreak build with cmake < 3.12
...
This reverts commit 3cadc16f88
.
2020-10-14 06:15:23 +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
Bret Curtis
c99be77a32
Merge pull request #3008 from akortunov/strings
...
Rework fixed strings handling
2020-10-13 17:37:48 +02:00
psi29a
82736f013d
Merge branch 'objectlib' into 'master'
...
Convert components to an object library.
See merge request OpenMW/openmw!342
2020-10-13 13:32:43 +00:00
psi29a
9a912486f9
Merge branch 'deprecated-exception' into 'master'
...
Use C++11 exception specification
See merge request OpenMW/openmw!343
2020-10-13 13:31:48 +00:00
fredzio
3cadc16f88
Convert components to an OBJECT library. It saves space in the object
...
directory (about 1G on an optimized build on Windows and BSD).
Build should run somewhat fast as well.
2020-10-13 14:10:52 +02:00
Bret Curtis
11c938b176
Merge pull request #3011 from elsid/navmesh_fixes
...
Navmesh fixes
2020-10-12 11:22:26 +02:00
psi29a
1274e68e1d
Merge branch 'fix_5630' into 'master'
...
Fix #5630 "NPCs momentarily turn when the player character is moving backwards during combat"
Closes #5630
See merge request OpenMW/openmw!339
2020-10-12 07:59:30 +00:00
psi29a
ed0bf72119
Merge branch 'menu' into 'master'
...
Put the main menu below other windows (bug #5622 )
See merge request OpenMW/openmw!312
2020-10-12 07:36:15 +00:00
Petr Mikheev
15078f5b3c
Fix #5630 "NPCs momentarily turn when the player character is moving backwards during combat"
2020-10-10 23:06:43 +02:00
Alexei Dobrohotov
b85d507f35
Merge branch 'absorption' into 'master'
...
Restore empty target check in spell absorption
See merge request OpenMW/openmw!338
2020-10-10 19:08:14 +00:00
Alexei Dobrohotov
1842f546c3
Restore empty target check in spell absorption
2020-10-10 14:27:52 +03:00
fredzio
460e69e92a
Get rid of warning: dynamic exception specifications are deprecated
2020-10-10 12:12:55 +02:00
AnyOldName3
341bcb66f5
Merge branch 'macos_shared_runner' into 'master'
...
MacOS Shared Runners
See merge request OpenMW/openmw!325
2020-10-09 22:42:31 +00:00
Alexei Dobrohotov
e930251d92
Merge branch 'godmode' into 'master'
...
Add many more godmode checks to harmful magic (bug #5633 )
Closes #4264
See merge request OpenMW/openmw!336
2020-10-09 22:09:46 +00:00
AnyOldName3
5514c95b23
Merge branch 'debian-cache-bump' into 'master'
...
Bump Debian cache version numbers
See merge request OpenMW/openmw!337
2020-10-09 22:01:45 +00:00
AnyOldName3
c6eb0dacd3
Bump Debian cache version numbers
...
This should stop MR builds clobbering the increased size with their tiny
size.
2020-10-09 20:51:25 +00:00
Alexei Dobrohotov
0e8c5c5034
Merge branch 'avoid_collision_update' into 'master'
...
Update logic of "NPCs avoid collisions"
See merge request OpenMW/openmw!318
2020-10-09 18:43:43 +00:00
Alexei Dobrohotov
b85875a354
Ignore Burden effect in god mode
2020-10-09 21:34:39 +03:00
Alexei Dobrohotov
39678c74bf
Add many more godmode checks to harmful magic (bug #5633 )
2020-10-09 20:36:51 +03:00
Alexei Dobrohotov
f8293536e6
Merge branch 'regressions' into 'master'
...
Fix recent regressions
See merge request OpenMW/openmw!335
2020-10-09 16:43:55 +00:00
Alexei Dobrohotov
05cd005b30
Fix NiTriStripsData loading
2020-10-09 19:37:54 +03:00
Alexei Dobrohotov
0dcb8c6b69
Fix pick/probe uses decrement
2020-10-09 19:20:50 +03:00