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
978af12c2d
Restore fall damage
2020-10-16 19:30:03 +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
Andrei Kortunov
c3d84b2c7c
Ability to attach arrows to shooter's hands (feature #5642 )
2020-10-14 10:07:42 +04:00
Andrei Kortunov
8e647aa72a
Fix crash on saving
2020-10-14 09:16:01 +04: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
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
1842f546c3
Restore empty target check in spell absorption
2020-10-10 14:27:52 +03: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
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
0dcb8c6b69
Fix pick/probe uses decrement
2020-10-09 19:20:50 +03:00
Alexei Dobrohotov
ec825b2510
Fix RayCastingResult warning
2020-10-08 22:44:46 +03:00
psi29a
bca698d951
Merge branch 'shader_line_numbering' into 'master'
...
Correctly resetting line numbering during shader processing.
See merge request OpenMW/openmw!317
2020-10-07 07:16:45 +00:00
AnyOldName3
c9e3db40a1
Merge branch 'multi-config-build' into 'master'
...
Add support for multi configurations generators on unix
See merge request OpenMW/openmw!198
2020-10-06 14:02:04 +00:00
Andrei Kortunov
822764d0fa
Rework fixed strings handling
2020-10-05 21:52:22 +04:00
Alexei Dobrohotov
29ccb09da5
Introduce some extended NIF definitions
2020-10-04 13:18:56 +03:00
Petr Mikheev
2835ea1e21
Update logic of "NPCs avoid collisions"
2020-10-03 22:58:00 +02:00
Charles Calhoun
14aacb81c5
Fix follower aggression when traveling. Summoning still has problems but less intrusive than current implementation.
2020-10-03 20:05:17 +00:00
Mads Buvik Sandvei
d5450a7d88
Correctly resetting line numbering during shader processing.
2020-10-03 14:22:34 +02:00
psi29a
3040b3b2b6
Merge branch 'issue-5588' into 'master'
...
Prevent empty right page of journal having invisible topics (Fixes #5588 )
Closes #5588
See merge request OpenMW/openmw!310
2020-10-03 10:55:44 +00:00
Kyle Shrader
845049a166
Prevent empty right page of journal having invisible topics ( Fixes #5588 )
2020-10-03 10:55:44 +00:00
AnyOldName3
9e78f3d936
Skip raycasting for zero-length rays
...
Rays with no length can't intersect anything. This also prevents an
assertion triggering with Bullet built in Debug mode.
2020-10-03 02:19:38 +01:00
psi29a
aa4e6c448b
Merge branch 'spellabsorption' into 'master'
...
Support enchantment absorption
See merge request OpenMW/openmw!307
2020-09-29 15:27:52 +00:00
psi29a
d9dafbe45b
Merge branch 'master' into 'uses'
...
# Conflicts:
# CHANGELOG.md
2020-09-29 08:20:50 +00:00
psi29a
0438d9d5bb
Merge branch 'enchanting' into 'master'
...
Reset enchant effects displayed range when they are constant (bug #5603 )
See merge request OpenMW/openmw!309
2020-09-28 17:18:29 +00:00
psi29a
ad1021721f
Merge branch 'master' into 'rotation'
...
# Conflicts:
# CHANGELOG.md
2020-09-28 17:09:50 +00:00
Alexei Dobrohotov
f2af957647
Reset enchant effects displayed range when they are constant (bug #5603 )
2020-09-25 02:13:57 +03:00
Alexei Dobrohotov
e0a5c24afe
Handle 0-use items like vanilla (bug #5611 )
2020-09-25 00:20:25 +03:00
AnyOldName3
73708a6f2a
Install openmw-cs.cfg on single-config generators and from the right directory on multi-config
2020-09-23 20:00:32 +02:00
Petr Mikheev
a17fb14b8a
Add "smooth movement" and "NPCs avoid collisions" settings to openmw-launcher and to the docs; update CHANGELOG.md.
2020-09-22 22:50:44 +02:00
Petr Mikheev
ad51a4be2e
Changes in head tracking and greetings for "smooth movement".
2020-09-22 22:50:44 +02:00
Petr Mikheev
b838782557
Avoid collisions between actors.
2020-09-22 22:50:44 +02:00
Petr Mikheev
79a72e4b44
Slightly modify aicombat to make it more difficult to get around an enemy. The difference is visible only if turning is slow (i.e. if smooth movement enabled).
2020-09-22 22:50:44 +02:00
Petr Mikheev
6a75942907
Fix CharacterController::setAttackTypeBasedOnMovement
2020-09-22 22:50:44 +02:00
Petr Mikheev
bd6b984022
Smoothing speed in CharacterController
2020-09-22 22:50:44 +02:00
Petr Mikheev
71ba94a89a
Smooth turning; smooth stopping; combat headtracking
2020-09-22 22:50:44 +02:00
Alexei Dobrohotov
f8389c6c37
Support enchantment absorption
2020-09-22 00:33:27 +03:00
Alexei Dobrohotov
387bda5e22
Add inverse order rotation support to SetAngle (feature #5579 )
2020-09-21 22:27:01 +03:00
Andrei Kortunov
7d776609c8
Fix unsugned/signed comparison warning
2020-09-21 10:36:01 +04:00
Bret Curtis
dd7e964baf
Merge pull request #2999 from akortunov/spellfix
...
Apply effects during rest before fast-forwarding spells state
2020-09-20 14:47:37 +02:00