1
0
Fork 1
mirror of https://github.com/TES3MP/openmw-tes3mp.git synced 2025-01-21 12:23:51 +00:00
Commit graph

16839 commits

Author SHA1 Message Date
fredzio
b79f6ac808 Force reset position of actor after snapping to the ground. Otherwise
the interpolation calculation would kick in and make the actor goes upward if the
spawn point is higher than summoner or downward if lower. The actor
would then either jump or fall through terrain.
2020-12-06 13:20:37 +01:00
Petr Mikheev
5734551ff3 Add time to logs. Redirect OSG log to OpenMW log. 2020-12-05 13:46:02 +01:00
fredzio
7843dad35d Don't let the actor "nowhere" after a teleport but move them in their
place.
This solve the problem where after loading, an empty frame was rendered
because the player is "nowhere".
2020-12-05 01:09:43 +01:00
Evil Eye
078de86e60 Use range based for loops and auto 2020-12-04 18:34:51 +01:00
Alexei Dobrohotov
84e1a29700 Make AI cast self-targeted spells at the ground (bug #5695) 2020-12-04 00:41:21 +03:00
fredzio
5a4872393a Rework actor position reset. While solving the issue with invalid
position being used under heavy load, I introduced a regression that
prevented the position to be updated in case of teleport.
Move the logic in its own function and decide in PhysicsSystem whether a
reset is needed.
2020-12-03 12:57:57 +01:00
psi29a
6f0b90e606 documented that currently underwater shadows are mutually exclusive to refraction scale; to be fixed in follow up issue #5709; documentation fixes 2020-12-02 23:03:10 +00:00
Nelsson Huotari
b0e3bd6ff9 Fix crash caused by QStatusBar 2020-11-29 23:25:34 +02:00
Bret Curtis
16b34c2863
Merge pull request #3029 from akortunov/replace_zeroes
Replace zeroes and nulls by nullptrs
2020-11-29 14:50:01 +01:00
psi29a
73ca333c4b Merge branch 'actorpositionagain' into 'master'
Make the physics simulation more robust when overloaded

See merge request OpenMW/openmw!429
2020-11-29 13:48:35 +00:00
Andrei Kortunov
8084a336b5 Replace zeroes and nulls by nullptrs 2020-11-29 11:14:07 +04:00
fredzio
ea2ba27084 Move the moment when the actor origin is saved before simulation so to
be sure the simulation is over. Otherwise, if the simulation is too slow
the position is wrong, and the actors would jump back and forth between
old and new position instead of actually moving.
2020-11-28 21:36:45 +01:00
psi29a
dc1bd8ec29 Merge branch 'osgAnimation_basics' into 'master'
Collada animation support

See merge request OpenMW/openmw!421
2020-11-28 16:55:26 +00:00
psi29a
96e22bd44e Merge branch 'fastforwardpos' into 'master'
Discard physics simulation results after fast forward

See merge request OpenMW/openmw!423

(cherry picked from commit ff2d7695698341ef059c75707aa092cef48deea4)

03a37433 In case of time fast forward (resting, jail), force reset of positions
2020-11-23 20:15:44 +00:00
AnyOldName3
f8c791fde3 Merge branch 'physics_worker_profile' into 'master'
Add the async physics worker to the profiler overlay.

See merge request OpenMW/openmw!422
2020-11-21 00:18:44 +00:00
Frederic Chardon
9aba55a21a Add the async physics worker to the profiler overlay. 2020-11-20 21:17:47 +01:00
jefetienne
bc6f46465f Add to changelog, authors. Move variable declaration inside block 2020-11-19 10:34:15 -05:00
jefetienne
2413de38b5 Extend spell/item search to search by magic effect name 2020-11-19 10:34:15 -05:00
Nelsson Huotari
6e77ad1f6a OSG-Collada animation support 2020-11-19 01:11:56 +02:00
Nelsson Huotari
f78a5d795c Separate keyframes logic to provide basis for osgAnimation integration. 2020-11-18 22:48:47 +02:00
psi29a
c69b407f8c Merge branch 'close_the_window_before_you_destroy_the_world' into 'master'
Don't unload the world before closing containers

Closes #5689

See merge request OpenMW/openmw!419
2020-11-18 18:19:46 +00:00
Evil Eye
c126d8801f Fix #5689 2020-11-18 17:28:09 +01:00
AnyOldName3
06d1e70aac Make Bullet DebugDrawer's default state match the physics system 2020-11-18 15:34:21 +00:00
Frederic Chardon
bb5213670c Use bigger hammer to set Actor's position after teleporting. Otherwise traceDown() would use old collision object transform and gives incorrect results, making the Actor "fall" in the new position. 2020-11-16 11:35:50 +01:00
fredzio
d64ed6cf53 Get rid of the StandingActorsMap. Just embed the necessary info into
Actor class.
2020-11-15 01:58:21 +01:00
psi29a
5362146d24 Merge branch 'interleaved_movements' into 'master'
Unbreak lifts & conveyors in Sotha Sil Expanded

See merge request OpenMW/openmw!410
2020-11-15 00:20:24 +00:00
fredzio
e5fa457fe7 Properly account for interleaved move of actors.
Before this change, if an actor position was changed while the physics
simulation was running, the simulation result would be discarded. It is
fine in case of one off event such as teleport, but in the case of
scripts making use of this functionality to make lifts or conveyor (such
as Sotha Sil Expanded mod) it broke actor movement.

To alleviate this issue, at the end of the simulation, the position of the Actor
in the world is compared to the position it had at the beginning of the
simulation. A difference indicate a force move occured. In this case,
the Actor mPosition and mPreviousPosition are translated by the difference of position.

Since the Actor position will be really set while the next simulation runs, we
save it in the mNextPosition field.
2020-11-14 20:39:16 +01:00
Alexei Dobrohotov
df9667e923 Read NIF bounding volume data correctly 2020-11-14 14:16:29 +03:00
Alexei Dobrohotov
8a6d3d1b4f Minor fixes
Fix extra semicolon
Disable collision avoidance if AI is disabled
2020-11-13 22:53:12 +03:00
AnyOldName3
1e0df23d14 Merge branch 'shadows-bin' into 'master'
Use a custom renderbin to avoid pointless OpenGL state switches

See merge request OpenMW/openmw!402
2020-11-13 16:29:41 +00:00
AnyOldName3
72f7e6a702 Handle all shadow alpha uniforms in shadowsbin 2020-11-12 00:26:30 +00:00
psi29a
ed8342ebc9 Merge branch 'niffile' into 'master'
Remove NIFFile settings manager dependency

See merge request OpenMW/openmw!398
2020-11-10 09:03:10 +00:00
Alexei Dobrohotov
c857588ee9 Remove NIFFile settings manager dependency 2020-11-09 14:24:48 +03:00
Alexei Dobrohotov
b523574090 Remove shader visitor settings manager dependency 2020-11-09 13:59:59 +03:00
Andrei Kortunov
0e971dccf0 Rework cure effects 2020-11-04 13:51:10 +04:00
Alexei Dobrohotov
37cce328ca Merge branch 'basicmath' into 'master'
Compute the rotation normal relative to the door axe, not the world.

See merge request OpenMW/openmw!391
2020-11-03 14:34:25 +00:00
Bret Curtis
6efa7eea5a
Merge pull request #3025 from akortunov/iterator
Do not remove active effects in the active effects loop
2020-11-02 17:12:45 +01:00
Andrei Kortunov
c1d56d94c4 Do not remove active effects in loop (bug #3789) 2020-11-02 17:51:36 +04:00
Frederic Chardon
ecd10a731e Compute the rotation normal relative to the door axe, not the world. 2020-11-02 14:12:42 +01:00
fredzio
18e38d8810 Do not block a door when it turns away. 2020-11-01 23:01:18 +01:00
psi29a
ba3aad31c1 Merge branch 'hitdebug' into 'master'
Visualize hits in the debug overlay

See merge request OpenMW/openmw!379
2020-11-01 10:20:14 +00:00
psi29a
7ee7041399 Merge branch 'stretch' into 'master'
Put a stretch menu background checkbox into the launcher (#5672)

Closes #5672

See merge request OpenMW/openmw!387
2020-11-01 09:26:19 +00:00
Alexei Dobrohotov
f49bf028b9 Put a stretch menu background checkbox into the launcher (#5672) 2020-11-01 02:14:25 +03:00
Alexei Dobrohotov
53f91a3aa5
Merge pull request #3018 from akortunov/emplace
Use emplace_back instead of push_back
2020-11-01 01:58:56 +03:00
fredzio
4876969153 Use the PhysicsSystem::movementQueue instead of a serie of
setPosition(getPosition() + diff) to move actor in scripts.
With background physics, this is very slightly off with the collision
object position.
When the script run long enough (a few dozen frames for instance),
the accumulated error becomes too big. It make actors fall through lifts floors.
2020-10-30 23:59:09 +01:00
Evil Eye
7065282127 Save and load container records; fixes #5668 2020-10-29 13:55:24 +01:00
Andrei Kortunov
64ba81ecf2 Fix some issues, found by CoverityScan 2020-10-28 18:02:31 +04:00
psi29a
8f68f08aee Merge branch 'moonmoon' into 'master'
Change moon phase to an enum class

See merge request OpenMW/openmw!381
2020-10-27 19:44:30 +00:00
Evil Eye
3bf5247c0b remove forward declaration 2020-10-27 19:23:07 +01:00
Alexei Dobrohotov
9763995892 Fix regression #5666 2020-10-27 18:08:14 +03:00
psi29a
74dfc09e2d Merge branch 'removeitem' into 'master'
Fix remove item regression

Closes #5663

See merge request OpenMW/openmw!380
2020-10-26 23:13:35 +00:00
Evil Eye
2c4cafa41a Change moon phase to an enum class 2020-10-26 22:16:31 +01:00
Evil Eye
0512a574e8 Fix remove item regression 2020-10-26 20:13:24 +01:00
psi29a
f6e4c7cb42 Merge branch 'regionsounds' into 'master'
Fix region sounds

See merge request OpenMW/openmw!370
2020-10-26 16:29:45 +00:00
fredzio
e8c0a7bec0 Visualie projectile hits 2020-10-26 13:53:36 +01:00
Frederic Chardon
574ccbf7bd Visualize hand to hand hits 2020-10-26 13:48:15 +01:00
fredzio
435b2e37f8 Allow to display collision points in the debug viewer 2020-10-26 13:42:46 +01:00
Bret Curtis
4032b754e4 set minimal boost version; remove #ifdef boost version checks 2020-10-25 22:43:10 +01:00
unknown
eae9eafb8c Merge branch 'master' of gitlab.com:OpenMW/openmw into regionsounds 2020-10-25 14:13:14 +01:00
unknown
eebb320916 Wait for the previous sound to stop 2020-10-25 12:20:14 +01:00
Bret Curtis
f6bead88a9 purge boost/optional.hpp headers 2020-10-25 00:58:44 +02:00
Bret Curtis
62b0781f7d use std::optional instead of boost::optional 2020-10-25 00:33:41 +02:00
psi29a
957a1425d1 Merge branch 'cleanup_1' into 'master'
Cleanup 1

See merge request OpenMW/openmw!365
2020-10-24 18:43:03 +00:00
unknown
1ce296aa7f Use fallback values for region sounds and fix probability 2020-10-24 18:54:46 +02:00
Bret Curtis
259f7fcf12
Merge pull request #3020 from unelsson/strippluginindex_cs
Strip the plugin index when looking for deleted refs.
2020-10-23 21:51:53 +02:00
Nelsson Huotari
b1ea9f6a5b Strip the plugin index from refid completely 2020-10-23 20:21:34 +03:00
psi29a
6534bc9b74 Merge branch 'config-fixes' into 'master'
Config fixes

See merge request OpenMW/openmw!367
2020-10-23 16:40:18 +00:00
AnyOldName3
538314b03a Make path settings have path type 2020-10-23 15:34:41 +01:00
Alexei Dobrohotov
129bd51672 Add compressed BSA support to bsatool 2020-10-23 14:04:21 +03:00
AnyOldName3
8b28b6e55e Compose BSA, context and script blacklist lists
These would only take their value from the highest priority source, so
specifying `openmw --content anExtraEsp.esp` would override all the
content files in the user cfg file, and the user cfg file would override
any in the global/local one.
2020-10-23 01:58:43 +01:00
AnyOldName3
cf81f1bbb7 Make composing variables compose in the expected order 2020-10-23 01:41:28 +01:00
Bret Curtis
5a824d0333 components/compiler cleanup; also cleaned up related cascading warnings; fixed up final/override issues 2020-10-22 23:57:53 +02:00
AnyOldName3
651a5a27f6 Fix inconsistent indentation
This has been irritating me for years.
2020-10-22 21:44:47 +01:00
Bret Curtis
43614e2204
Merge pull request #3021 from akortunov/warnfix
Do not use deprecated Qt functions
2020-10-22 17:17:13 +02:00
psi29a
fa1765816f Merge branch 'somecpp17' into 'master'
C++17 cosmetics

See merge request OpenMW/openmw!357
2020-10-22 13:06:15 +00:00
Andrei Kortunov
46a1950b0e Do not use deprecated Qt functions 2020-10-22 15:50:47 +04:00
fredzio
a19db73eca Fix bad rebase 2020-10-22 09:24:56 +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
fredzio
4fc5b6f6f4 Sort headers 2020-10-22 07:15:16 +02:00
fredzio
212b293803 Use same parameter name in definition and declaration 2020-10-22 07:15:16 +02:00
Alexei Dobrohotov
f1b7cd5404 Don't reset temporarily hidden container window 2020-10-22 02:12:31 +03:00
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