psi29a
4ae504970f
Merge branch 'blocking' into 'master'
...
Fix lower body blocking animation priority (bug #5656 )
Closes #5656
See merge request OpenMW/openmw!359
2020-10-21 22:32:24 +00:00
psi29a
7f59751946
Merge branch 'standing' into 'master'
...
Fix standing actors logic
See merge request OpenMW/openmw!360
2020-10-21 22:31:01 +00:00
fredzio
2916a9462e
Fix standing actors logic:
...
it is updated in the solver only if the actor is standing on
"something". The ground is not "something", so in case the actor goes
from standing on an object to the standing on the ground, this change was not taken
into account.
Clear the value before the simulation to solve this problem.
2020-10-21 21:32:06 +02:00
Alexei Dobrohotov
2972033a72
Merge branch 'thelevelling' into 'master'
...
Allow adding levelled lists using AddItem
Closes #2404
See merge request OpenMW/openmw!358
2020-10-21 16:53:46 +00:00
Alexei Dobrohotov
7da8479d25
Fix lower body blocking animation priority (bug #5656 )
2020-10-21 19:35:01 +03:00
Evil Eye
bdcd2bc802
Allow adding levelled lists with AddItem
2020-10-21 17:21:28 +02:00
Bret Curtis
7d16b6f26c
Merge pull request #2992 from akortunov/service_refusal
...
Add support for service-specific refusals
2020-10-21 00:29:19 +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
Evil Eye
f62905eb0a
remove redundant argument
2020-10-20 21:04:35 +02:00
psi29a
09373a757d
Merge branch 'radioactive' into 'master'
...
Container base record mutations
See merge request OpenMW/openmw!353
(cherry picked from commit 8b33765dd414680f0074b3e115b52b291b4cb7cb)
275908a0 mutate container base records
16fca11d add changelog entry
2020-10-20 16:56:22 +00:00
Andrei Kortunov
6c591c190b
Add support for service-specific refusals (feature #5580 )
2020-10-20 18:58:26 +04:00
fredzio
a036183248
Use a much simpler and assert-free check for Bullet multithreading support
2020-10-19 21:31:52 +02:00
Nelsson Huotari
fb4250a2b7
Strip the plugin index when looking for deleted refs.
2020-10-19 15:02:10 +03:00
Andrei Kortunov
065ed5138e
Use emplace_back instead of push_back
2020-10-18 10:27:35 +04:00
psi29a
4adc689c7a
Merge branch 'summoncrash' into 'master'
...
Avoid summon spawn if actor isn't in a cell (bug #5644 )
See merge request OpenMW/openmw!351
2020-10-18 00:35:35 +00:00
Alexei Dobrohotov
f90e403bc1
Avoid summon spawn if actor isn't in a cell (bug #5644 )
2020-10-18 01:42:32 +03:00
psi29a
f513ee1f1d
Merge branch 'configurable_turning_delay' into 'master'
...
Makes the delay of turning while run configurable (part of "smooth movement")
See merge request OpenMW/openmw!349
2020-10-17 20:21:02 +00: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
Petr Mikheev
9ec6fce446
Makes the delay of turning while run configurable (part of "smooth movement").
2020-10-17 16:11:22 +02: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
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
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
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
Petr Mikheev
be27b51279
Add head bobbing in first person mode
2020-10-08 00:22:01 +02: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
psi29a
22c3588d0d
Merge branch '4771-and-4631' into 'master'
...
Try lower MSAA level if the requested value isn't available
Closes #4471 and #4631
See merge request OpenMW/openmw!297
(cherry picked from commit b3db387512340a5e9a77427c2d7d9d88c2340056)
da0aef7a Retrieve SDL OpenGL attributes after context creation
a51e63b3 Try lower MSAA levels if OpenGL context doesn't have what we requested
c4e92a0a Update CHANGELOG.md
2020-09-20 12:35:26 +00:00
psi29a
b4ccd2658a
Merge branch 'khr_debug' into 'master'
...
Khr debug
See merge request OpenMW/openmw!302
2020-09-20 12:14:57 +00:00
Bret Curtis
8f07b7e076
Merge pull request #3005 from Assumeru/dont-search-containers
...
Don't search containers
2020-09-20 11:48:26 +02:00
AnyOldName3
3f61ff3a44
Make OpenGL debugging optional
2020-09-19 23:30:34 +01:00
AnyOldName3
441c09578a
Merge remote-tracking branch 'origin/khr_debug' into khr_debug
2020-09-19 23:09:11 +01:00
Evil Eye
fe82cd9f92
Don't search containers
2020-09-15 21:13:18 +02:00
Petr Mikheev
874c754b68
Fix #5557
2020-09-15 20:24:16 +02:00
tessa
58b5249e8b
fix typo in terrainstorage.hpp
2020-09-13 10:46:27 -05:00
Bret Curtis
673f0f4f77
Merge pull request #3003 from akortunov/min_cost
...
Set a minimum 1gp cost for services
2020-09-08 17:00:49 +02:00
Andrei Kortunov
753ca91556
Set a minimum 1gp cost for services (regression #5600 )
2020-09-08 17:04:31 +04:00
AnyOldName3
ffed6acc49
Merge branch 'patch-1' into 'master'
...
force static data variance for water geometry
See merge request OpenMW/openmw!294
2020-09-07 22:32:00 +00:00
Alexei Dobrohotov
99ab629a03
Merge pull request #2995 from akortunov/arrows
...
Improve ammo resetting
2020-09-06 13:30:55 +03:00
Mads Buvik Sandvei
2d021430b8
force static data variance for water geometry
2020-09-05 11:52:52 +00:00
Andrei Kortunov
f9ca08a984
Do not use swish sound for ranged weapons
2020-09-03 09:48:12 +04:00
Andrei Kortunov
787ca06d55
Apply effects during rest before fast-forwarding spells state
2020-09-01 19:36:59 +04:00
Bret Curtis
53e581fe10
Merge pull request #2899 from akortunov/multiple_effects
...
Track magic effect index for summoning
2020-09-01 14:17:49 +02:00
Andrei Kortunov
7a4efe3979
Avoid crash when object paging encounters an empty shape
2020-09-01 10:13:32 +04:00
Petr Mikheev
7e3d19196d
Fix #5586
2020-09-01 00:37:37 +02:00
Evil Eye
131bd5c91d
Fix unused template argument
2020-08-30 22:10:49 +02:00
Andrei Kortunov
9189a42c4c
Fix failed assertion
2020-08-29 12:07:13 +04:00
Andrei Kortunov
67eace1028
Use struct instead of tuple
2020-08-29 11:24:08 +04:00
Andrei Kortunov
924f634bda
Support for multiple summons with same ID in the single spell
2020-08-28 21:14:54 +04:00
Andrei Kortunov
47af221f10
Reset ammo when switching view to avoid warnings spam
2020-08-28 15:57:11 +04:00
Andrei Kortunov
297898182b
Reset attached arrow in the beginning of unequipping animation
2020-08-28 15:53:30 +04:00
Bret Curtis
7ee5526dbf
Merge pull request #2993 from akortunov/warnfix
...
Fix MSVC warnings
2020-08-27 23:39:01 +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
AnyOldName3
a495888d3d
Get per-monitor resolution list while SDL is alive
2020-08-26 16:58:51 +01:00