elsid
aaf6c82e33
Do not write shapes to navmeshdb when writing is disabled
2021-12-16 22:57:35 +01:00
elsid
8fedca5780
Fix navmesh cache progress bar jumps
...
When initial approximation of maximum progress based on numer of cells is too
high comparing to real number of navmesh tiles.
2021-12-16 21:48:50 +01:00
uramer
2bc81e47a6
Remove all MyGUI version checks
2021-12-16 19:22:07 +01:00
psi29a
cc97c4450a
Merge branch 'which-gpu-are-you' into 'master'
...
Log OpenGL Vendor, Renderer and Version on startup
See merge request OpenMW/openmw!1482
2021-12-16 08:02:24 +00:00
psi29a
dc4d73e76c
Merge branch 'msgboxvanillastyle' into 'master'
...
Vanilla style encumbrance messagebox
Closes #6191
See merge request OpenMW/openmw!1437
2021-12-16 07:59:43 +00:00
AnyOldName3
d66907ba67
Log OpenGL Vendor, Renderer and Version on startup
2021-12-15 22:17:38 +00:00
psi29a
92c9ae3eb7
Merge branch 'locked_and_loaded' into 'master'
...
Change the legalities of opening unlocked objects
Closes #6493
See merge request OpenMW/openmw!1479
2021-12-15 13:13:24 +00:00
Petr Mikheev
db72380ba9
Allow Lua scripts to handle input actions when UI is opened. Also fixes #6456 .
2021-12-15 02:38:54 +01:00
Petr Mikheev
7549496162
A few small fixes + expose makeReadOnly to Lua + an option to apply makeReadOnly during deserialize
2021-12-15 02:38:54 +01:00
Evil Eye
a204b4da96
Change the legalities of opening unlocked objects
2021-12-14 21:06:40 +01:00
uramer
c865114b9b
Lua UI Layers
2021-12-14 17:38:06 +00:00
kuyondo
2fce89e64f
changes
2021-12-14 22:40:05 +08:00
psi29a
0f17f14cec
Merge branch 'no_more_i_yield' into 'master'
...
Explicitely add the initial actor to the set of its allies
See merge request OpenMW/openmw!1474
2021-12-11 16:36:54 +00:00
Evil Eye
ff9f010d99
Explicitely add the initial actor to the set of its allies
2021-12-11 15:30:57 +01:00
elsid
96eb8d7be9
Write generated navmesh to navmeshdb
...
Perform all request to db in a single thread to avoid blocking navmesh
generator threads due to slow write operations.
Write to db navmesh for all changes except update as it done for memory cache.
Batch multiple db operations into a single transaction to speed up writing by
not executing fsync after each insert/update query. All reads are performed in
the same transaction so they see uncommited data.
2021-12-11 00:22:04 +01:00
elsid
9e0451c714
Support navmesh generation from launcher
2021-12-11 00:22:04 +01:00
elsid
c9b8ba7b46
Read navmesh tile data from database
...
When tile is not found in memory cache try to find it in the database.
2021-12-11 00:22:04 +01:00
elsid
953a4c5550
Add a binary to generate navmesh from content files
...
Load content files based on the engine config files. Generate navmesh per cell
for all cells and store into SQLite database.
2021-12-11 00:21:56 +01:00
elsid
5325495f46
Move serialization detournavigator/ -> components/
2021-12-10 23:55:04 +01:00
elsid
01c712d5f1
Split navigator settings into subtypes
...
Mostly to distinguish settings that affect properties of the generated navmesh.
2021-12-10 23:55:03 +01:00
elsid
33bb18850d
Move operator<< to debug.hpp
2021-12-10 23:55:03 +01:00
elsid
5a6b39f8e0
Store mesh source data in recast mesh
2021-12-10 23:55:02 +01:00
Evil Eye
9257c27fe1
Move target checking code so it applies to all sources
2021-12-10 18:51:37 +01:00
psi29a
4883cbf590
Merge branch 'detain-hash-selectively-reluctant' into 'master'
...
Get rid of EscapeHashX classes option 5 (attempt 2): Use boost::filesystem::path rules if the path starts with ", and consume the whole thing verbatim otherwise
Closes #5804
See merge request OpenMW/openmw!1436
2021-12-10 08:38:06 +00:00
psi29a
3baf966219
Merge branch 'msvc-only-precompile' into 'master'
...
Only precompile headers with MSVC
See merge request OpenMW/openmw!1467
2021-12-09 18:10:47 +00:00
AnyOldName3
8fc09f8c51
Merge remote-tracking branch 'upstream/master' into detain-hash-selectively-reluctant
...
Merge conflicts included:
* One setting being removed (branch had changed its type).
* One setting's description being changed (branch had changed its type).
* List of files in components/files was changed both upstream and on the
branch.
* Upstream had changed something in a file the branch deletes.
2021-12-09 17:09:52 +00:00
psi29a
f3f385fd5e
Merge branch 'removed_isnt_remove' into 'master'
...
Actually remove effects before proclaiming they've been removed
Closes #6480
See merge request OpenMW/openmw!1465
2021-12-09 15:08:41 +00:00
AnyOldName3
221e425fe6
Only precompile headers with MSVC
2021-12-09 14:59:17 +00:00
Bret Curtis
454ddfa304
Merge pull request #3224 from Vulpen/feature-AA-alpha-test
...
Issue #6019 AA Alpha Test Option In Launcher
2021-12-09 01:02:16 +01:00
Evil Eye
4b67fe5351
Actually remove effects before proclaiming they've been removed
2021-12-08 17:18:08 +01:00
psi29a
ad492c5735
Merge branch 'mac_mac_great_again_lua_edition' into 'master'
...
modified builtin_scripts to be macOS aware; simplified things as the SHADER...
Closes #6459
See merge request OpenMW/openmw!1463
2021-12-08 15:10:23 +00:00
psi29a
e04e139f37
Merge branch 'navmesh_raw' into 'master'
...
Add to navigator unmodified water and heightfield data
See merge request OpenMW/openmw!1373
2021-12-08 13:36:17 +00:00
Bret Curtis
9336626927
use OPENMW_RESOURCES_ROOT instead
2021-12-08 14:33:49 +01:00
Bret Curtis
a9bf53d4ed
modified builtin_scripts to be macOS aware; simplified things as the SHADER and MYGUI dir were just pointing to the OpenMW_BINARY_DIR anyway, so removing the code duplication
2021-12-08 14:28:56 +01:00
psi29a
694f697f61
Merge branch 'it_isnt_theft_if_they_were_dead_when_you_started' into 'master'
...
Force the loot UI open if it was open while resurrecting the lootee
Closes #6453
See merge request OpenMW/openmw!1452
2021-12-06 14:49:01 +00:00
psi29a
c844e5d045
Merge branch 'racer_recursion_limited' into 'master'
...
Check if a leveled creature is in an unloaded cell before deciding it doesn't exist
Closes #4376
See merge request OpenMW/openmw!1420
(cherry picked from commit 782371cb2e7f6653d72305090033557b53bbcf3a)
6d945da7 Check if a leveled creature is in an unloaded cell before deciding it doesn't exist
2021-12-06 13:58:35 +00:00
Evil Eye
99bfe024ef
Cap temp disposition change properly
2021-12-05 18:36:35 +01:00
Petr Mikheev
c5e10dfa85
Merge branch 'refactor_sdlmappings' into 'master'
...
Move SDL-MyGUI input mappings to components, map both ways
See merge request OpenMW/openmw!1444
2021-12-04 12:16:38 +00:00
uramer
15c7bddd57
Move SDL-MyGUI input mappings to components, map both ways
2021-12-04 12:16:38 +00:00
Petr Mikheev
d3df3efaf1
Precompile sol.hpp in order to reduce compilation time.
2021-12-04 11:32:39 +00:00
Evil Eye
4d346fefd6
Merge branch 'regionnotfound' into 'master'
...
Raise a warning when entering non-existent region
Closes #6358
See merge request OpenMW/openmw!1454
2021-12-03 16:05:18 +00:00
Kindi
47ff6a87a3
Raise a warning when entering non-existent region
2021-12-03 16:05:18 +00:00
Petr Mikheev
620748480b
Merge branch 'lua_missing_key_codes' into 'master'
...
Lua binding for SDL_GetKeyName, two missing scan codes
See merge request OpenMW/openmw!1450
(cherry picked from commit d86e7d4c9a28bc96af0a5638b26879fa49b8a847)
9a073baa Add Apostrophe and Period scan codes
d66f3a35 Add getKeyName to Lua input API
ed64add9 Replace mentions of KeyEvent with KEY
2021-12-03 13:35:57 +00:00
elsid
7dcb219ecf
Add raw heightfield data to navigator
2021-12-03 01:16:15 +01:00
elsid
8571c317d8
Add raw water data to navigator
2021-12-03 01:16:15 +01:00
elsid
f4f4458d01
Calculate recast mesh bounds when building navmesh
2021-12-03 01:16:15 +01:00
elsid
e10bbb9ad7
Shift heightfield and water in navigator tests
2021-12-03 01:16:15 +01:00
Evil Eye
58b888a38e
Preserve inventories when resurrecting actors while looting them
2021-12-02 20:36:42 +01:00
Evil Eye
b35cb038d0
Merge branch 'drowningbar' into 'master'
...
Bug #5434 : Pinned windows shouldn't cover breath progress bar
Closes #5434
See merge request OpenMW/openmw!1448
2021-12-02 17:01:40 +00:00
andrew-app
13400b2c5f
Bug #5434 : Pinned windows shouldn't cover breath progress bar
2021-12-02 17:01:40 +00:00
psi29a
7256654f29
Merge branch 'navmesh_render' into 'master'
...
Rework navmesh render (#6187 )
See merge request OpenMW/openmw!1338
2021-12-02 10:34:41 +00:00
psi29a
1654bebfc8
Merge branch 'master' into 'master'
...
#6419 Topic shouldn't be greyed out if they can produce another topic reference.
See merge request OpenMW/openmw!1442
2021-12-02 08:04:32 +00:00
Ivan Beloborodov
ead0cb5ce0
#6419 Topic shouldn't be greyed out if they can produce another topic reference.
2021-12-02 08:04:29 +00:00
Evil Eye
dca0fa0a41
Remove teleportation effects after they've been applied
2021-12-01 21:39:53 +00:00
Evil Eye
893d569529
Force the loot UI open if it was open while resurrecting the lootee
2021-12-01 18:21:21 +01:00
Thomas Lowe
f50cbcad81
* AA combo box no longer disables the AA alpha test checkbox.
...
* Updated AA alpha test description to be more accurate
2021-11-30 20:07:29 -05:00
Evil Eye
f1ec8db393
Make Set- and ModStat behave as they should
2021-11-30 19:39:15 +01:00
psi29a
a9008d224a
Merge branch 'light_refactors' into 'master'
...
LightManager consolidation
Closes #6389
See merge request OpenMW/openmw!1400
2021-11-30 16:02:28 +00:00
psi29a
e221013692
Merge branch 'recalculate-projection-matrix-on-window-resize' into 'master'
...
Recalculate the Projection Matrix every time the window is resized.
See merge request OpenMW/openmw!1382
2021-11-30 16:00:31 +00:00
OnlyForF1
c5b33185b5
Recalculate the Projection Matrix every time the window is resized.
2021-11-30 16:00:30 +00:00
psi29a
7f2c0df3fd
Merge branch 'follow_the_path_of_peace' into 'master'
...
Remove allies from combat when stopping combat
Closes #1930
See merge request OpenMW/openmw!1441
2021-11-30 15:59:06 +00:00
psi29a
12167291a3
Merge branch 'plz_no_particles' into 'master'
...
Hopefully fix #6353 once and for all
Closes #6353
See merge request OpenMW/openmw!1433
2021-11-30 15:57:38 +00:00
psi29a
a332dec681
Merge branch 'fix_esm_loader' into 'master'
...
Load only supported content formats by EsmLoader
See merge request OpenMW/openmw!1427
2021-11-30 15:51:22 +00:00
psi29a
a15cc0959f
Merge branch 'murmur_hash' into 'master'
...
Use MurmurHash3_x64_128 for Files::getHash
See merge request OpenMW/openmw!1404
2021-11-30 15:50:11 +00:00
Thomas Lowe
4f77c18af4
Removed unneeded signal.
2021-11-29 20:44:47 -05:00
elsid
c4cd2f36c3
Move convertMagicEffects into separate file
...
As completely unrelated to EsmLoader.
2021-11-29 22:45:35 +01:00
elsid
47219b4def
Avoid base class call antipattern in classes derived from ContentLoader
2021-11-29 22:45:08 +01:00
Bret Curtis
246912f73a
Merge pull request #3206 from akortunov/groundcover_loading
...
Use a separate storage for groundcover data
2021-11-29 20:09:21 +01:00
Thomas Lowe
5f355a14cd
Changed default setting for anti-alias alpha test to true.
...
Added checkbox in advanced page for anti-alias alpha test, connected to AA combobox in the graphics page.
2021-11-29 07:18:49 -05:00
kuyondo
01a9eaf4a8
fix#6451
2021-11-29 19:04:34 +08:00
AnyOldName3
bc4b54157b
Remove commented-out test conditions
2021-11-28 20:30:16 +00:00
fredzio
989f09930a
Use the scaled mesh translation for collision shape position for living actors. It seems only (some) dead
...
actors really needs to use the vertical half-extent.
2021-11-28 18:58:40 +01:00
kuyondo
6e43206d69
remove empty/redundant lines
2021-11-28 04:58:49 +08:00
kuyondo
eadad7a4b3
new alternate
2021-11-28 04:47:14 +08:00
Frederic Chardon
9d7a53b701
Merge branch 'fix_physics_deadlock' into 'master'
...
Fix deadlock in physics system (#6414 )
Closes #6414
See merge request OpenMW/openmw!1440
2021-11-27 19:56:37 +00:00
kuyondo
df9f601ed7
initialize constants
2021-11-28 02:22:34 +08:00
kuyondo
1f2311538d
vanilla style messagebox 2
2021-11-26 05:20:58 +08:00
Evil Eye
d6f06fbf9a
Remove allies from combat when stopping combat
2021-11-25 22:00:52 +01:00
Evil Eye
a231037449
Merge branch 'accumroot' into 'master'
...
Use the anim source to find mAccumRoot (bug #6417 )
Closes #6417
See merge request OpenMW/openmw!1431
2021-11-25 19:13:21 +00:00
elsid
6b43ce0662
Fix deadlock in physics system
...
1. Reorder unlock and notify_all calls to avoid notifying when not all worker
threads are waiting.
2. Make sure main thread does not attempt to exclusively lock mSimulationMutex
while not all workers are done with previous frame.
3. Replace mNewFrame flag by counter to avoid modification from multiple
threads.
2021-11-25 19:28:31 +01:00
kuyondo
11925b17ea
Remove mOverencumberedMessageDelay
2021-11-24 19:39:22 +08:00
kuyondo
30ff688c70
Create only one overencumbered messagebox
2021-11-24 19:35:39 +08:00
Evil Eye
90f94caaaf
Merge branch 'quickkeyvalidation' into 'master'
...
Validate Quick Keys
Closes #6433
See merge request OpenMW/openmw!1428
2021-11-23 19:06:26 +00:00
kuyondo
60a345f5cc
Better indentation
2021-11-24 01:44:14 +08:00
Evil Eye
fb4c611570
Merge branch 'sunglare_fix' into 'master'
...
Fix sunglare in sky shaders
See merge request OpenMW/openmw!1430
2021-11-23 16:47:08 +00:00
Evil Eye
f18b8adfea
Truncate instead of rounding to deal with negative values
2021-11-23 17:00:53 +01:00
kuyondo
d55682f833
remove debug code
2021-11-23 15:14:59 +08:00
kuyondo
503f0e62e7
Validate Argument is Index instead of Player
2021-11-23 14:55:50 +08:00
Alexei Dobrohotov
fd58e5ba77
Use the anim source to find mAccumRoot (bug #6417 )
2021-11-23 04:53:03 +03:00
glassmancody.info
44d5c96183
sunglare fix
2021-11-22 17:35:00 -08:00
kuyondo
1b1de86b4a
Validate Quick Keys
2021-11-23 04:07:10 +08:00
elsid
da0c5b54f0
Load only supported content formats by EsmLoader
2021-11-22 20:58:48 +01:00
Petr Mikheev
6f5e0e7697
Merge branch 'solve_6430' into 'master'
...
Use a setting to enable Lua Action tracebacks
See merge request OpenMW/openmw!1419
2021-11-22 19:39:47 +00:00
uramer
4a976a8e23
Use a setting to enable Lua Action tracebacks
2021-11-22 19:39:47 +00:00
Petr Mikheev
a39305b108
Merge branch 'clean_lua_ui' into 'master'
...
Clear Lua-created UI on game load and reloadlua command
See merge request OpenMW/openmw!1418
2021-11-22 19:17:36 +00:00
uramer
5b8cba7323
Clear Lua-created UI on game load and reloadlua command
2021-11-22 19:17:36 +00:00
AnyOldName3
84d6de3eba
Parse paths with boost rules when it's quoted, but use the string verbatim when it's not
2021-11-21 19:51:02 +00:00
elsid
cffcb6a897
Share state set between all navmesh tiles
...
Do not change GL_DEPTH because it's always disabled anyway.
2021-11-21 18:01:26 +01:00
elsid
3c41d0efc3
Render each navmesh tile independently
2021-11-21 17:42:27 +01:00
elsid
6b7363bd59
Replace generation and revision by version
2021-11-21 17:40:54 +01:00
elsid
a665a38aca
Use MurmurHash3_x64_128 for file hash
2021-11-21 17:05:59 +01:00
Petr Mikheev
f9136d4392
Support multiple arguments in Lua callbacks.
2021-11-21 13:12:35 +01:00
psi29a
53e14eb238
Merge branch 'reset' into 'master'
...
AI reset argument
Closes #6177 and #1465
See merge request OpenMW/openmw!1405
2021-11-21 09:39:55 +00:00
glassmancody.info
9389cfaa42
mac os driver workaround and shadervisitor fixes
2021-11-20 18:39:20 -08:00
AnyOldName3
3d381bf0d3
Merge branch 'depth_refactor' into 'master'
...
Depth refactor
See merge request OpenMW/openmw!1326
2021-11-21 02:25:06 +00:00
Cody Glassman
d85f772269
Depth refactor
2021-11-21 02:25:05 +00:00
Petr Mikheev
5f195b7576
Make arguments passed to LuaManager::synchronizedUpdate consistent with arguments passed to LuaManager::update. Fixes #6431 .
2021-11-21 01:48:28 +01:00
AnyOldName3
a9d7598532
Merge branch 'camera2' into 'master'
...
Dehardcode camera
See merge request OpenMW/openmw!1030
2021-11-20 18:17:12 +00:00
Evil Eye
52f9634624
Allow the CS to handle the repeat flag for all types
2021-11-20 11:03:08 +01:00
Evil Eye
3c57ffd81f
Save repeat and duration
2021-11-20 11:03:07 +01:00
Evil Eye
231da19aa4
Load repeat flag and use reset argument
2021-11-20 11:02:58 +01:00
Evil Eye
c5de69f9c6
Merge branch 'faceyourfears' into 'master'
...
Make AiExtensions less toxic (bug #6429 )
Closes #6429
See merge request OpenMW/openmw!1411
2021-11-20 09:59:49 +00:00
Alexei Dobrohotov
fcef92e3ea
Make AiExtensions less toxic (bug #6429 )
2021-11-20 03:15:15 +03:00
Evil Eye
42020bc2c3
Ignore the axis argument when rotating the player
2021-11-20 00:02:48 +00:00
Petr Mikheev
ded8997362
Avoid problems if builtin.omwscripts
is above Morrowind.esm
in content list.
2021-11-19 20:37:21 +01:00
Petr Mikheev
3941c42a71
Use applyDeferredPreviewRotationToPlayer
only after applying values from luaControls
. Otherwise camera rotation is not smooth when movement is controlled from lua.
2021-11-19 20:37:21 +01:00
Petr Mikheev
f42badd7be
Dehardcode camera
2021-11-19 20:37:21 +01:00
Petr Mikheev
e56ee2c735
Apply lua handlers for user input in the main thread in order to reduce latency.
2021-11-19 20:37:21 +01:00
Petr Mikheev
47cbdcba15
Camera refactoring
2021-11-19 20:37:21 +01:00
Petr Mikheev
d5ca091d6e
Make util.rotateX, util.rotateY, rotate.Z consistent with morrowind rotation
2021-11-19 20:37:21 +01:00
glassmancody.info
750514cda2
simply lightmanager and fix racey behavior
2021-11-18 19:40:13 -08:00
uramer
68963538ae
Lua UI API
2021-11-18 15:19:54 +00:00
Evil Eye
71f020c23b
Merge branch 'lua_input' into 'master'
...
Fix compiler warnings in apps/openmw/mwlua/inputbindings.cpp
See merge request OpenMW/openmw!1403
2021-11-16 16:41:38 +00:00
Alexei Kotov
37c27ce072
Merge branch 'vengeful_dremora_protection' into 'master'
...
Unset store listeners for creatures
See merge request OpenMW/openmw!1402
2021-11-15 23:34:33 +00:00
Petr Mikheev
e53d5ed91b
Fix compiler warnings in apps/openmw/mwlua/inputbindings.cpp
2021-11-15 17:31:57 +01:00
Evil Eye
c277e8bf3f
Unset store listeners for creatures
2021-11-15 16:31:38 +01:00
Petr Mikheev
c7d6620c35
Add error checking in MWLua::Action
2021-11-15 01:17:53 +01:00
psi29a
5c5c71778a
Merge branch 'circular' into 'master'
...
Consistently sort content files
See merge request OpenMW/openmw!1350
2021-11-14 20:24:18 +00:00
psi29a
d4e8a58351
Merge branch 'headsup' into 'master'
...
Force assign head animation timer (bug #4389 )
Closes #4389
See merge request OpenMW/openmw!1361
2021-11-14 19:59:31 +00:00
psi29a
bd694128b9
Merge branch 'lua_input' into 'master'
...
Update Lua package openmw.input
See merge request OpenMW/openmw!1356
2021-11-14 19:57:37 +00:00
Andrei Kortunov
3275440f0d
Use a separate storage for groundcover data
2021-11-14 19:11:42 +04:00
Alexei Kotov
ec63546a37
Merge branch 'save_me_utf8' into 'master'
...
Handle non-ASCII characters without triggering an assertion
Closes #6396
See merge request OpenMW/openmw!1375
2021-11-14 12:38:36 +00:00
Evil Eye
6daefe3ddc
Cast to the unsigned char expected by cctype functions
2021-11-14 11:26:18 +01:00
Evil Eye
f23bd51175
Don't check bounds when the type is unambiguously a char
2021-11-14 11:26:18 +01:00
Evil Eye
751e8cf76b
Do a bounds check before calling functions defined in cctype
2021-11-14 11:26:15 +01:00
Evil Eye
c01ba41aa6
Handle character directories like save names
2021-11-14 11:26:14 +01:00
Evil Eye
8f48a1f030
Handle non-ASCII characters while saving without triggering an assertion
2021-11-14 11:26:06 +01:00
Andrei Kortunov
dce4cceb39
Support deleted CellRefs in groundcover (bug 6276)
2021-11-14 13:23:10 +04:00
AnyOldName3
8fb0b5846e
Allow paths with trailing data, emmitting a warning
2021-11-14 00:22:44 +00:00
psi29a
29847655f6
Merge branch 'lua_pause' into 'master'
...
Allow Lua scripts to work when the game is on pause
See merge request OpenMW/openmw!1384
2021-11-13 22:47:52 +00:00
Bo Svensson
a62b22cd31
isolates groundcover content files ( #3208 )
...
Specifications developed in PR #3206 require that groundcover content files must not be allowed to corrupt normal content files. With this PR we simply isolate our existing loading logic by instantiating a separate `ESMStore` for `Groundcover`. In addition, we remove some outdated workarounds.
2021-11-13 23:37:53 +01:00
psi29a
68e7a4083e
Merge branch 'master' into 'master'
...
Overhaul raindrop water ripple effect
Closes #6360
See merge request OpenMW/openmw!1316
2021-11-13 21:44:25 +00:00
psi29a
914993d6ae
Merge branch 'itsmagic' into 'master'
...
Factor race weight into magic projectile speed (bug #6343 )
Closes #6343
See merge request OpenMW/openmw!1385
2021-11-13 21:09:44 +00:00
Alexei Kotov
49544cf7de
Merge branch 'no_one_likes_commas' into 'master'
...
Treat commas in scripts as whitespace
Closes #6380
See merge request OpenMW/openmw!1388
2021-11-13 17:19:22 +00:00
Alexei Dobrohotov
b918135b4b
Factor race weight into magic projectile speed (bug #6343 )
2021-11-13 17:33:32 +03:00
psi29a
4d09f791ab
Merge branch 'minimum-settings-window-size' into 'master'
...
Recompute minimum settings window size based on tab bar size
See merge request OpenMW/openmw!1365
2021-11-13 13:48:12 +00:00
Mads Buvik Sandvei
73e9d7f315
Recompute minimum settings window size based on tab bar size
2021-11-13 13:48:12 +00:00
psi29a
41bd20e358
Merge branch 'bullet_shape_hash' into 'master'
...
Store BulletShape source file name and content hash
See merge request OpenMW/openmw!1379
2021-11-13 13:33:22 +00:00
Evil Eye
bee94e2afc
Treat commas in scripts as whitespace
2021-11-13 14:06:21 +01:00
psi29a
39f70c2d18
Merge branch 'correct-sound' into 'master'
...
Add correct sound path in resource helpers
See merge request OpenMW/openmw!1381
2021-11-12 22:23:32 +00:00
Petr Mikheev
32839cc727
Allow Lua scripts to work on pause (except timers and onUpdate handlers)
2021-11-12 22:06:59 +01:00
psi29a
3ade72a7ad
Merge branch 'buyskyrimanniversaryedition' into 'master'
...
Boring NIF stuff
See merge request OpenMW/openmw!1378
2021-11-12 19:47:37 +00:00
Bret Curtis
700bace24c
do not emplace_back to our mLandTextures; instead use the heavy handed resize to be explicit about what we intend to do; resolves issue found here: https://github.com/OpenMW/openmw/pull/3220#issuecomment-964650167
2021-11-12 11:53:21 +01:00
Petr Mikheev
ed85393288
Replace sol::table::create_table_with with a more compiler-friendly implementation. It fixes MSVC error "compiler is out of heap space" and also slightly reduces binary size.
2021-11-11 22:46:01 +01:00
Petr Mikheev
d285427485
Update Lua package openmw.input
2021-11-11 20:14:30 +01:00
Alexei Kotov
5afd6b0e46
Merge branch 'adding_settingint_methods' into 'master'
...
Adding saveSettingInt() and loadSettingInt()
See merge request OpenMW/openmw!1167
2021-11-11 14:32:39 +00:00
Alexei Kotov
f210559a80
Merge branch 'bound_rating' into 'master'
...
Improve AI rating of bound effects
Closes #3855
See merge request OpenMW/openmw!1366
2021-11-11 14:30:41 +00:00
elsid
d7041613ef
Store BulletShape source file name and content hash
2021-11-11 00:27:18 +01:00
Cédric Mocquillon
512d64e514
Extract correctSoundPath method to avoid code duplication. Add unit test for the new method
2021-11-10 23:06:35 +01:00
Alexei Dobrohotov
9880c43c86
Add specular strength shader parameter
2021-11-10 19:58:06 +03:00
Alexei Dobrohotov
0d13b8cd3f
Allow movement during blocking (bug #6327 )
2021-11-10 15:48:03 +03:00
Alexei Dobrohotov
835bec0ed1
Fix stupid typo
2021-11-10 09:36:01 +03:00
psi29a
295ebbebbd
Merge branch 'astoecke-fix-6354-sfx-distance-attenuation' into 'master'
...
Fade sounds when performing distance-based culling (Fixes #6354 )
Closes #6354
See merge request OpenMW/openmw!1341
2021-11-09 14:33:52 +00:00
psi29a
5836d0225f
Merge branch 'leave_butter_to_soften' into 'master'
...
Soft Particles (#6128 )
See merge request OpenMW/openmw!980
2021-11-09 14:16:47 +00:00
psi29a
28589b9692
Merge branch 'holsteredshield-already-has-shaders' into 'master'
...
Remove redundant recreateShaders
See merge request OpenMW/openmw!1368
2021-11-09 14:12:43 +00:00
Bret Curtis
f2bc179b0a
Add groundcover back into view
2021-11-09 10:20:32 +01:00
Evil Eye
1a2fde04bb
Clarify logic
2021-11-08 17:28:54 +01:00
Bo Svensson
5f1bf89369
improves groundcover view distance ( #3219 )
...
This PR aims to solve all issues with `Groundcover` view distance handling in a satisfying way while preserving other optimisations that benefit other features. The main idea here is not to rely on `ViewData` updates for distance culling calculations because we can not accurately determine distance against lazily updated views. Instead, we perform an accurate measurement in a cull callback we can run every frame in `Groundcover` itself. While we do have to add some code to handle this feature, it is quite loosely coupled code that could be useful elsewhere in the future. These changes should address a performance regression @akortunov experienced.
2021-11-08 10:27:42 +01:00
psi29a
9f26dfadd1
Merge branch 'cleanup_includes' into 'master'
...
Cleanup some includes
See merge request OpenMW/openmw!1369
2021-11-08 07:32:40 +00:00
psi29a
9b7dfcac6b
Merge branch 'windows_aero_snap' into 'master'
...
Fix windows aero snap with borderless window (#5394 )
See merge request OpenMW/openmw!1370
2021-11-08 07:13:08 +00:00
Alexei Kotov
a315af48e9
Merge branch 'parent_visibility' into 'master'
...
Only restore focus to widgets with visible parents
Closes #5377
See merge request OpenMW/openmw!1364
2021-11-08 05:36:13 +00:00
glassmancody.info
c489b77385
fix windows aero snap
2021-11-07 20:01:07 -08:00
elsid
e0c4f08aa5
Remove redundant includes
2021-11-08 02:21:02 +01:00
AnyOldName3
90ce50190e
Remove redundant recreateShaders
2021-11-08 00:49:10 +00:00
Evil Eye
11ed594910
Improve AI rating of bound effects
2021-11-07 22:13:27 +01:00
Evil Eye
9394cdde22
Only restore focus to widgets with visible parents
2021-11-07 21:12:15 +01:00
Bo Svensson
2e031f195b
fixes LightBufferBinding messages ( #3223 )
...
This PR aims to solve `uniform block LightBufferBinding has no binding` messages @glassmancody has reportedly encountered since PR #3110 due to an apparent bug in OSG. While we do have to add a workaround here that adds a bit of clunkiness, #3216 should allow us to clean up these interactions a bit in the future.
2021-11-07 18:26:02 +01:00
Evil Eye
3f48d67d8e
Merge branch 'blackscreen_fix' into 'master'
...
Blackscreen fix (#6229 )
See merge request OpenMW/openmw!1359
2021-11-07 14:31:19 +00:00
Evil Eye
a3e039d862
Explicitely sort by file name after adding all data dirs
2021-11-07 14:15:30 +01:00
Alexei Kotov
0c11175da1
Merge branch 'combat_aiming' into 'master'
...
Finish turning before attacking
Closes #3488
See merge request OpenMW/openmw!1358
2021-11-07 11:25:05 +00:00
Alexei Dobrohotov
e125308dd8
Force assign head animation timer (bug #4389 )
2021-11-07 14:10:51 +03:00
psi29a
627f816348
Merge branch 'navigator_impl' into 'master'
...
Reduce the size of included code from detournavigator/ into the engine
See merge request OpenMW/openmw!1355
2021-11-07 07:57:22 +00:00
Langerz82
303082f6b4
Finish turning before attacking
2021-11-06 17:44:29 +01:00
wareya
6d98866be0
Merge remote-tracking branch 'upstream/master'
2021-11-06 11:44:12 -04:00
Evil Eye
5fbfbb3d84
Merge branch 'clamp' into 'master'
...
Make better use of std::clamp
See merge request OpenMW/openmw!1357
2021-11-06 12:07:24 +00:00
cody glassman
04692e6012
blackscreen fix
2021-11-06 04:38:43 -07:00
Alexei Dobrohotov
7a0c13fcf8
Make better use of std::clamp
2021-11-06 08:47:32 +03:00
Alexei Kotov
9e2b132508
Merge branch 'dont_linger_weather' into 'master'
...
Stop lingering weather effects (#6387 )
See merge request OpenMW/openmw!1349
2021-11-06 05:38:16 +00:00
elsid
6b30d375fa
Replace detournavigator includes by forward declarations
2021-11-06 00:48:39 +01:00
elsid
9f808fbe3a
Move findPath-like navigator functions into a separate header
2021-11-06 00:34:06 +01:00
elsid
5e99454cc4
Add factory functions to create navigator implementations
2021-11-06 00:14:41 +01:00
elsid
3f80725ebe
Remove duplicated implementation of Misc::Convert::toOsg
2021-11-05 22:57:08 +01:00
wareya
49d2daee6a
Movement solver tweaks
...
1) As much as I dislike it, upping the collision margin from 0.1 to 0.2
fixes bugs, particularly involving walking into upwards-slanted walls.
2) There were still some problems involving acute crevices/seams; they
were using the adjusted instead of unadjusted normal, and also they need
to bypass the don't-slide-upwards check to prevent (see #6379 )
3) The move-away-from-what-we-just-hit code needs to run always, not
just on non-initial iterations. No idea why I did it this way before.
4) Force bullet to give actor boxes a tiny collision margin of 0.001
instead of the default 0.04. I can't tell whether this is actually
working or not, but it should reduce unexplained weirdness.
5) A piece of code that was meant to prevent bugs by short-circuiting
the movement solver if its direction changed more than 180 degrees
actually caused problems instead of preventing them, so I deleted it.
2021-11-05 14:56:55 -04:00
psi29a
b6d2c57de2
Merge branch 'new2017' into 'master'
...
MSVC2017 Compilation Fixes
See merge request OpenMW/openmw!1348
2021-11-05 10:16:04 +00:00
Bo Svensson
1960e976e2
refactors stringops.hpp ( #3192 )
...
With this PR we refactor `StringUtils::replaceAll` to accept `string_view` as suggested in a code comment. In addition, while we are touching this rebuild happy file, we slim it down a bit by moving a few sparingly used functions elsewhere.
2021-11-05 10:53:52 +01:00
wareya
d5aaa0394a
Fix a missing required include
2021-11-04 17:48:21 -04:00
Bo Svensson
0371072631
removes lowerCaseInPlace ( #3217 )
...
This PR removes unneeded `lowerCaseInPlace` calls in in a hot path of `objectpaging.cpp` that are no longer necessary after PR #3197 . In addition, I have been informed that these changes should by coincidence address a compiler specific compilation error we currently experience.
2021-11-04 22:20:06 +01:00
Andreas Stöckel
3ee4aadd88
Heuristic for fading environment sounds in
2021-11-04 16:05:31 -04:00
Andreas Stöckel
1cafef7bdb
Fade water sounds more softly
2021-11-04 16:05:31 -04:00
Andreas Stöckel
9cfa2eeab8
Remove hard maximum distance in the OpenAL driver
...
Hard sound source culling is now handled by the SoundManager.
2021-11-04 16:05:31 -04:00
Andreas Stöckel
6f2e311c58
Fade out sound sources that are no longer close
...
* Handle culling of all sound sources in a separate function cull3DSound
* Add two new settings Sound::sfx fade in duration and Sound::sfx fade out duration
2021-11-04 16:05:31 -04:00
Andreas Stöckel
1583252dd8
Improve sound fading
...
* Implement a more general SoundBase::setFade that can be used to fade to any desired
volume and not just fading out
* Implement SoundBase::setFadeout by using SoundBase::setFade
* Implement an exponential fade mode
2021-11-04 16:05:31 -04:00
Bo Svensson
cd946ea35a
removes unused recordcmp.hpp ( #3214 )
...
This PR removes an unused source file.
2021-11-04 16:56:51 +01:00
Bo Svensson
6cf74f7041
refactors ESM::Land ( #3213 )
...
With this PR we reduce coupling, simplify code, encapsulate a variable and separate actual `ESM` data from its context.
2021-11-04 16:55:32 +01:00
Bo Svensson
3042c000c6
fixes setActorFade logic errors ( #3195 )
...
* resets state updater to apply light settings (#3141 )
resets state updater to apply light settings
With this PR we achieve the same effect with fewer lines of code.
* fixes LightSource logic errors
We currently update `LightSource::setActorFade` in `TransparencyUpdater`. There are several logic errors inherent in this approach:
1. We fail to update `LightSource::setActorFade` for off screen actors because their `TransparencyUpdater` cull callback is not invoked.
2. We fail to update `LightSource::setActorFade` in the instant that a `TransparencyUpdater` is removed.
3. We fail to update `setActorFade` when an `mExtraLightSource` is created after calling `Animation::setAlpha`.
With this PR we avoid such issues by updating `LightSource::setActorFade` in `Animation::setAlpha` and `Animation::addExtraLightSource` instead.
2021-11-04 16:53:57 +01:00
glassmancody.info
4c3dd1a964
remove particle node when resetting particle effect
2021-11-04 08:42:22 -07:00
Bo Svensson
f684c1da52
fixes assertion ( #3215 )
...
This PR fixes an assertion introduced by #3211 . For some reason my build originally did not contain assertions despite passing `DEBUG` into cmake, but after deleting `CMakeCache.txt` I have now hit the assertion @glassmancody reported as well.
2021-11-04 10:15:05 +01:00
Bo Svensson
fac84b5dd3
restores ESM::Dialogue order ( #3209 )
...
With this PR we restore the previous order of `ESM::Dialogue` entries implicitly changed by PR #3197 . In the future we may want to consider additional verification and documentation of `mShared` order inconsistencies. We might additionally consider applying this sorting in the particular code that requires it.
2021-11-03 15:07:06 +01:00
psi29a
c9f3c27dc7
Merge branch 'phys_perf_test' into 'master'
...
Help bullet optimize collisions with very complex collision meshes by making small collision tests if possible
See merge request OpenMW/openmw!1317
2021-11-03 11:49:44 +00:00
Bo Svensson
4657c655b1
refactors parentFileIndices ( #3211 )
...
This PR aims to start addressing `ESM` design issues that have silenced errors we incorporated into groundcover `ESM` loading approaches.
- We move the resolution of `parentFileIndices` from `ESMStore` to `ESMReader` as suggested in a `TODO` comment.
- We improve a highly misleading comment which downplayed the significance of `parentFileIndices`.
- We document important preconditions.
- We move a user facing error message to the highest level and improve its context.
- We remove an inappropriate `setGlobalReaderList` method. We now pass this reader list into the method that requires it.
- We remove a thoroughly pointless optimisation of `Store<ESM::LandTexture>`'s construction that has unnecessarily depended on `getGlobalReaderList`.
There should be no functional changes for `master`, but this PR should remove an issue blocking PR #3208 .
2021-11-03 11:07:28 +01:00
elsid
2b057f5c15
Expect nif node children to have parent
2021-11-02 22:44:33 +01:00
elsid
4e8e8304aa
Avoid mesh allocation when data is invalid
2021-11-02 22:44:33 +01:00
elsid
4631d95739
Add more tests for BulletNifLoader
2021-11-02 22:44:32 +01:00
psi29a
523289c531
Merge branch 'refactor_bullet_shape' into 'master'
...
Refactor bullet shape
See merge request OpenMW/openmw!1333
2021-11-02 20:30:22 +00:00
psi29a
4ff4afd50b
Merge branch 'lua_callback' into 'master'
...
Refactoring. Lua `Callback` is moved from apps/openmw/mwlua to components/lua.
See merge request OpenMW/openmw!1334
2021-11-02 20:28:34 +00:00
psi29a
ea7e83499d
Merge branch 'enlightened_skeletons' into 'master'
...
Allow creatures to use torches
Closes #6376
See merge request OpenMW/openmw!1335
2021-11-02 20:25:26 +00:00
Evil Eye
a9106f4d7c
Rotate torches by 90 degrees
2021-11-02 18:01:22 +01:00
wareya
940e338453
Constifications
2021-11-02 15:17:26 +00:00
Bo Svensson
213faa6695
restores countRecords optimisations ( #3210 )
...
With this PR we restore @elsid 's optimisations of countRecords we have unintentionally discarded in PR #3197 . In addition, we give it a more appropriate name and add comments concerning its peculiar background.
2021-11-02 14:46:41 +01:00
psi29a
d3b2503111
Merge branch 'distractions' into 'master'
...
Reduce code duplication in getting the shield model
See merge request OpenMW/openmw!1337
2021-11-02 13:32:21 +00:00
psi29a
9694398b69
Merge branch 'actually_walk_on_the_water' into 'master'
...
#6373 : finish half commited commit
See merge request OpenMW/openmw!1336
2021-11-02 10:15:40 +00:00
Andreas Stöckel
a5a895ffd4
Fix #6381
...
Do not use osg::PI_f
2021-11-01 20:55:19 -04:00
Evil Eye
3660d5cc4c
Reduce code duplication in getting the shield model
2021-11-01 19:33:29 +01:00
glassmancody.info
4461366761
settings update and launcher option
2021-11-01 09:26:50 -07:00
fredzio
8c21b0b503
Apply waterwalking even when we skip simulation.
...
This chunk was supposed to be part of !1324 but somehow got stuck staged in my tree.
2021-11-01 12:44:36 +01:00
wareya
221f6f134d
gcc and clang don't like this
2021-10-31 18:18:49 -04:00
wareya
838fc634c6
address review comments
2021-10-31 15:32:24 -04:00
Evil Eye
92bdd44e58
Allow creatures to use torches
2021-10-31 20:25:37 +01:00
wareya
e1378cd290
Replace uniform with define
2021-10-31 13:18:19 -04:00
Petr Mikheev
e7ec89573e
Refactoring. Lua Callback
is moved from apps/openmw/mwlua to components/lua.
2021-10-31 17:47:46 +01:00
wareya
226d3eac0d
Improve performance, add simpler ripples, add a setting, fix nighttime brightness
2021-10-31 10:33:28 -04:00
Evil Eye
3c40935ec1
Fix regression #6375
2021-10-31 11:57:33 +01:00
Bo Svensson
356e9d7cf0
refactors osg::Callback virtual inheritance ( #3200 )
...
With this PR we refactor `SceneUtil::KeyframeController` not to require `virtual osg::Callback` inheritance. I suppose such `virtual` overhead is not justified here because it negatively impacts many other classes we derive from `osg::Callback`.
2021-10-30 22:43:18 +02:00
psi29a
4c81518abb
Merge branch 'puddle' into 'master'
...
Give each reflect and spell absorption effect a chance to apply
Closes #6255 and #6253
See merge request OpenMW/openmw!1279
2021-10-30 19:26:32 +00:00
glassmancody.info
8c3b00164e
soft particles
2021-10-30 12:19:31 -07:00
psi29a
3eb6b658c6
Merge branch 'setpos_strikes_back' into 'master'
...
#6292 unbreak scripted spells
See merge request OpenMW/openmw!1324
2021-10-30 18:50:02 +00:00
psi29a
740045f7d6
Merge branch 'test_compiler' into 'master'
...
Add unit tests for the mwscript compiler
See merge request OpenMW/openmw!1325
2021-10-30 18:41:15 +00:00
psi29a
15cb9f886c
Merge branch 'launcher_omwscripts' into 'master'
...
Support *.omwscripts in openmw-launcher
See merge request OpenMW/openmw!1329
2021-10-30 18:10:09 +00:00
Bo Svensson
1329f22186
refactors MWWorld::Store maps ( #3197 )
...
With this PR we clean up `MWWorld::Store` maps according to the approach of PR #3184 .
2021-10-30 19:27:57 +02:00
Bo Svensson
7d34149adc
consolidates createUnlitMaterial ( #3203 )
...
With this PR we remove a few duplicate lines of code by adding a parameter to `createUnlitMaterial`.
2021-10-30 19:19:58 +02:00
Bo Svensson
7e6533f0f3
refactors screenshot360 ( #3202 )
...
With this PR we refactor screenshot360 not to manually adjust node masks.
2021-10-30 19:10:16 +02:00
Evil Eye
ae08f942d5
Test binary operators
2021-10-30 12:23:14 +02:00
Evil Eye
3c5a50cf90
Add issues from Redmine
2021-10-30 12:09:02 +02:00
Evil Eye
319d30fb85
Add AddTopic testing
2021-10-30 10:42:11 +02:00
Evil Eye
b3208f4066
Add more issues and a forum thread
2021-10-30 10:42:10 +02:00
Evil Eye
8e0dfe3a8a
Add tests for more issues
2021-10-30 10:42:10 +02:00
Evil Eye
b2cdbe2e61
Add tests for certain issues
2021-10-30 10:42:10 +02:00
Evil Eye
3dada0796a
Validate integer math
2021-10-30 10:42:10 +02:00
Evil Eye
f027acf575
Move boilerplate to separate file
2021-10-30 10:42:09 +02:00
Evil Eye
be759e576a
Be sure to verify the opcode got executed
2021-10-30 10:42:09 +02:00
Evil Eye
6ad8549163
Allow validation of constant arguments
2021-10-30 10:42:09 +02:00
Evil Eye
e1ac871672
Start adding compiler tests
2021-10-30 10:42:08 +02:00
elsid
a78dee740a
Merge branch 'dead_code' into 'master'
...
remove dead code and fix changelog entry
See merge request OpenMW/openmw!1330
2021-10-30 03:05:54 +00:00
glassmancody.info
f0eb068e4b
remove dead code and fix changelog entry
2021-10-29 18:50:04 -07:00
elsid
8e71c246bf
Remove redundant BulletShape getters
2021-10-30 03:44:08 +02:00
elsid
b905dd17c3
Use unique_ptr to store btCollisionShape in BulletShape
2021-10-30 03:44:07 +02:00
fredzio
68f4c336ce
Rework again SetPos command to make more mods work.
...
Previous version skipped collision the frame immediately after a call to SetPos. It worked for one-off calls (teleports for instance) and continuous call along a pre-defined path (scenic travel). However, in the case of mod which uses SetPos to simulate a player-controlled movement, it is equivalent to using tcl.
Solution:
1/ skip update of mPosition and mPreviousPosition to avoid janky interpolation
2/ use back plain moveObject() instead of moveObjectBy() since we don't want physics simulation
3/ rework a little bit waterwalking influence on coordinate because of 1/
2021-10-29 23:20:17 +02:00
wareya
8c0102e1ee
Optimize short-trace test to only be done when particularly helpful
2021-10-29 15:11:08 -04:00
elsid
29a772c33f
Rename Resource::BulletShape::CollisionBox fields according to styleguide
2021-10-29 21:05:58 +02:00
Petr Mikheev
37386f417e
Support *.omwscripts in openmw-launcher
2021-10-29 20:09:47 +02:00
psi29a
e3cfe5d35a
Merge branch 'backproj' into 'master'
...
Move the projectile simulation to the background thread
See merge request OpenMW/openmw!1276
2021-10-29 12:52:41 +00:00
psi29a
b189282ba1
Merge branch 'compile_no_evil' into 'master'
...
Remove dead code
See merge request OpenMW/openmw!1327
2021-10-29 12:51:20 +00:00
psi29a
34b63bf142
Merge branch 'omwscripts' into 'master'
...
Change format of "*.omwscripts" files
See merge request OpenMW/openmw!1271
2021-10-29 12:49:49 +00:00
Evil Eye
9b565c4cf9
Remove dead code
2021-10-28 22:16:43 +02:00
psi29a
b3f84df43c
Merge branch 'sky_shaders' into 'master'
...
Sky shaders
See merge request OpenMW/openmw!1057
2021-10-27 20:25:40 +00:00
fredzio
3750eb9cd8
Move Projectile simulation to the background thread.
2021-10-27 22:17:06 +02:00
fredzio
a245981e4e
Make interpolateMovement works with PtrHolder instead of Actor
2021-10-27 22:05:19 +02:00
fredzio
ad7a810a62
Unify interface for Actor and Projectile
2021-10-27 22:03:04 +02:00
Frederic Chardon
5009b66ef5
Use std::variant in the physics simulation for the different types of objects. For now only support only for actors.
2021-10-27 22:02:46 +02:00
psi29a
fb3675d523
Merge branch 'improved_toggleworld' into 'master'
...
Improved toggle world (#6364 )
See merge request OpenMW/openmw!1320
2021-10-27 18:00:56 +00:00
glassmancody.info
e436147c10
improved toggle world
2021-10-27 09:16:01 -07:00
Andrei Kortunov
3ee6657768
Early out from LOS check when source and target is the same (bug 5913)
2021-10-27 10:01:06 +04:00
Petr Mikheev
95faeaa9c1
Fix: after reloadlua call onActive for all active scripts
2021-10-26 21:52:42 +02:00
Petr Mikheev
19a0fde278
Filter saves by the first esm/omwgame rather than by the first content file (that can be a universal omwaddon/omwscripts)
2021-10-26 21:52:42 +02:00
Petr Mikheev
47c89567fb
Load LuaScriptsCfg from both *.omwscripts and *.omwaddon files.
2021-10-26 21:52:42 +02:00
Petr Mikheev
9adc190209
Redesign LuaUtil::ScriptsContainer to work with ScriptsConfiguration
2021-10-26 21:32:48 +02:00
Petr Mikheev
33d71be81f
Add LuaUtil::ScriptsConfiguration
2021-10-26 21:32:02 +02:00
Petr Mikheev
6aab246879
Add ESM records that are needed to store Lua scripts configuration;
...
Use ptr.getType() (i.e. esm record names) instead of typeid(ptr.getClass()) in apps/openmw/mwlua.
2021-10-26 21:32:02 +02:00
Evil Eye
4ec927829f
Give each reflect and spell absorption effect a chance to apply
2021-10-26 16:50:40 +02:00
psi29a
c0dca5371b
Merge branch 'recalc_mana' into 'master'
...
Don't wait a frame to recalculate magicka
Closes #3792
See merge request OpenMW/openmw!1323
2021-10-26 08:58:04 +00:00
psi29a
2765bcee5e
Merge branch 'serialization' into 'master'
...
Add helpers for binary serialization
See merge request OpenMW/openmw!1319
2021-10-26 08:25:17 +00:00
glassmancody.info
ba4f1921ab
overrides
2021-10-25 15:04:55 -07:00
glassmancody.info
07e32c0fa6
remove object shader path
2021-10-25 10:23:16 -07:00
Evil Eye
289e1544d2
Don't wait a frame to recalculate magicka
2021-10-25 16:54:50 +02:00
Bret Curtis
3d0da9b9b2
Merge pull request #3191 from akortunov/warnfix
...
Fix some MSVC warnings
2021-10-25 15:17:05 +02:00
Bo Svensson
1ff8318a52
refactors premultiplied alpha ( #3189 )
...
With this PR we refactor a `premultiplied alpha` user string set by `characterpreview.cpp` into a more flexible mechanism allowing us to assign any state to GUI textures. We can consider these changes more future proof than the previous approach.
2021-10-25 09:28:32 +02:00
Bo Svensson
7f9beac3a7
refactors a case insensitive map ( #3184 )
...
This PR aims to spark the retirement of a questionable pattern I have found all over our code base. I will illustrate how this pattern encourages code duplication, lacks type safety, requires documentation and can be prone to bugs.
```
std::map<std::string, Object> mMap; // Stored in all lowercase for a case-insensitive lookup
std::string lowerKey = Misc::StringUtils::lowerCase(key);
mMap.emplace(lowerKey, object);
std::string lowerKey = Misc::StringUtils::lowerCase(key);
mMap.find(lowerKey);
mMap.find(key); // Not found. Oops!
```
An alternative approach produces no such issues.
```
std::unordered_map<std::string, Object, Misc::StringUtils::CiHash, Misc::StringUtils::CiEqual> mMap;
mMap.emplace(key, object);
mMap.find(key);
```
Of course, such an alternative will work for a `map` as well, but an `unordered_map` is generally preferable over a `map` with these changes because we have moved `lowerCase` into the comparison operator.
In this PR I have refactored `Animation::mNodeMap` accordingly. I have reviewed and adapted all direct and indirect usage of `Animation::mNodeMap` to ensure we do not change behaviour with this PR.
2021-10-25 09:18:26 +02:00
Bo Svensson
6fb376f1cf
templatise ptr.hpp ( #3185 )
...
With this PR we consolidate identical logic for Ptr and ConstPtr with the help of a template.
2021-10-25 09:08:50 +02:00
glassmancody.info
9cbbd2fff5
better transitions
2021-10-24 17:13:42 -07:00
Andrei Kortunov
107a9ecb17
Fix variables hiding
2021-10-24 18:45:04 +04:00
elsid
a58f1a94e3
Add helpers for binary serialization
...
To construct serializer from given entities:
* Data source/destination - any value that has to be serialized/deserialized,
usually already existing type.
* Format - functional object to define high level serialization logic to
define specific format and data schema. Like order of fields, allocation.
* Visitor - functional object to define low level serialization logic to
operator on given data part.
* BinaryWriter - copies given value into provided buffer.
* BinaryReader - copies value into given destination from provided buffer.
* SizeAccumulator - calculates required buffer size for given data.
2021-10-24 14:20:44 +02:00
glassmancody.info
1e40d27318
introduce sky shaders
2021-10-23 17:53:38 -07:00
Evil Eye
f70a154195
Merge branch 'place' of github.com:akortunov/openmw into master
2021-10-23 11:34:42 +02:00
psi29a
217d17adeb
Merge branch 'ugly_rounding' into 'master'
...
Prevent floating point issues accumulating
See merge request OpenMW/openmw!1306
2021-10-23 08:39:26 +00:00
Bo Svensson
c9c8d02332
fixes a crash ( #3183 )
...
This PR fixes a crash caused by the improperly ensured lifetime of RigGeometry::mSourceGeometry. mSourceGeometry was not adequate to ensure mSourceGeometry would outlive mGeometry because we extend mGeometrys lifetime beyond this lifetime by passing mGeometry to the draw traversal instead of this.
In addition,
We add important comments.
We detect and prevent generally unsafe operations in high level code.
We add a sprinkling of const to help clarify intentions.
2021-10-23 10:31:46 +02:00
Evil Eye
b5c876299d
Round to a power of two
2021-10-23 09:29:16 +02:00
wareya
e23b0edda4
Add pre-pass to collision trace function that traces over less distance if possible
2021-10-22 23:11:23 -04:00
psi29a
1ffa02b2fd
Merge branch 'fix_windows_tests' into 'master'
...
Fix tests on windows
See merge request OpenMW/openmw!1313
2021-10-22 12:35:10 +00:00
psi29a
a4899d72f4
Merge branch 'deduplicate_swim_speed' into 'master'
...
Deduplicate swim speed formula implementation
See merge request OpenMW/openmw!1310
2021-10-22 12:34:19 +00:00
psi29a
ed811176bc
Merge branch 'fix_esm_loader' into 'master'
...
Fix logic expression for not found value in EsmLoader::getModel
See merge request OpenMW/openmw!1308
2021-10-22 12:33:39 +00:00
psi29a
0d810fe41c
Merge branch 'init_gmst' into 'master'
...
Use lambda instead of bool to make sure GMST initialized once
See merge request OpenMW/openmw!1309
2021-10-21 21:41:29 +00:00
Alexei Kotov
156f2a471a
Merge branch 'self_target' into 'master'
...
Apply on self effects on projectiles to the target instead
Closes #6321
See merge request OpenMW/openmw!1312
2021-10-21 20:37:11 +00:00
elsid
b5f0057ac9
Fix tests on windows
2021-10-21 19:48:31 +02:00
Evil Eye
63fa6d3b7c
Apply on self effects on projectiles to the target instead
2021-10-21 17:28:36 +02:00
Evil Eye
31a7c83cc7
Fix a regression involving default arguments
2021-10-21 17:22:15 +02:00
elsid
68ed8487b5
Use lambda instead of bool to make sure GMST initialized once
...
This is less expensive than having 2 static variables and thread-safe.
2021-10-21 03:19:12 +02:00
elsid
2a0e1697b6
Deduplicate swim speed formula implementation
2021-10-21 01:25:09 +02:00
Bo Svensson
a854a6e04a
removes UnrefQueue ( #3181 )
...
Currently, we use an `UnrefQueue` which supposedly aims to transfer destruction costs to another thread. The implications of this unusual pattern can not be well understood because some allocators might free resources more efficiently if they are freed by the same thread that allocated them. In addition, `UnrefQueue` complicates the validation of thread safety in our engine. Lastly, our current usage of `UnrefQueue` triggers `ref()`, `unref()` atomic operations as objects are passed into the queue. These operations could be more expensive than the actual destruction.
With this PR we thus remove `UnrefQueue`. We can expect these changes to have a minor impact at most because we free most resources elsewhere in `ResourceSystem::updateCache`.
2021-10-20 23:02:15 +02:00
elsid
a3b6bc7263
Fix logic expression for not found value
2021-10-20 17:48:10 +02:00
Evil Eye
dd4d8b2649
Prevent floating point issues accumulating
2021-10-19 21:38:07 +02:00
psi29a
a5b9c9160d
Merge branch 'compression' into 'master'
...
Add functions to compress/decompress vector of bytes
See merge request OpenMW/openmw!1305
2021-10-19 08:07:22 +00:00
elsid
1da9c75692
Add missing initialization for Enchanting::mObjectType
2021-10-18 22:11:48 +02:00
elsid
e5413c0664
Add functions to compress/decompress vector of bytes
2021-10-18 20:46:22 +02:00
Petr Mikheev
17f7a1a2ea
Merge branch 'fix_lua_test' into 'master'
...
Fix LuaUtilPackageTest.Transform
See merge request OpenMW/openmw!1302
2021-10-18 07:16:10 +00:00
elsid
bb26ba30b6
Add progress reporter type
...
To log/report progress of long duration operations using given time period.
2021-10-18 01:26:10 +02:00
AnyOldName3
9be606a40d
Finish removing old Escape classes
2021-10-17 23:40:34 +01:00
elsid
23026caacc
Fix LuaUtilPackageTest.Transform
...
It can fail due to float arithmetic precision with error:
Expected equality of these values:
getAsString(lua, "moveAndScale")
Which is: "TransformM{ move(6, 22, 18) scale(0.5, 1, 0.5) rotation(angle=8.53284e-17, axis=(1, 0, 0)) }"
"TransformM{ move(6, 22, 18) scale(0.5, 1, 0.5) }"
2021-10-17 22:47:18 +02:00
psi29a
d8d16a52e1
Merge branch 'esm_loader' into 'master'
...
Add ESM data loader
See merge request OpenMW/openmw!1301
2021-10-17 19:21:32 +00:00
elsid
046b5f83ee
Add ESM data loader
...
A component to load ESM content files with limited support for record types and
selection which of them to load. Supported record types are:
ACTI, CELL, CONT, DOOR, GMST, LAND, STAT.
2021-10-17 19:55:29 +02:00
elsid
18d3102148
Do not use union to access FIXED_STRING<4> as int
...
https://en.cppreference.com/w/cpp/language/union :
> It's undefined behavior to read from the member of the union that wasn't most recently written.
2021-10-17 17:16:21 +02:00
Andrei Kortunov
362c124e8f
Allow to place levelled creatures to the game world (bug 6347)
2021-10-17 17:58:54 +04:00
psi29a
00b28d2665
Merge branch 'over_time' into 'master'
...
Fix particles and magnitudes for (damage) over time effects
See merge request OpenMW/openmw!1298
2021-10-17 12:12:22 +00:00
psi29a
2f0484f4fc
Merge branch 'clear_me_not' into 'master'
...
Do not clear depth buffer in first person (#6078 )
Closes #6078
See merge request OpenMW/openmw!1119
2021-10-17 09:30:30 +00:00
glassmancody.info
cc009d246f
do not clear depth buffer in first person
2021-10-16 18:37:34 -07:00
unknown
add6eb9c95
Fix particles and magnitudes for (damage) over time effects
2021-10-16 21:40:41 +02:00
psi29a
c051298848
Merge branch 'sqlite3_helpers' into 'master'
...
Add sqlite3 helpers
See merge request OpenMW/openmw!1299
2021-10-16 18:48:02 +00:00
elsid
c88367b6a6
Add sqlite3 helpers
2021-10-16 17:43:08 +02:00
elsid
501316a9f7
Add missing initialization in MWPhysics::Object
...
==16218== Conditional jump or move depends on uninitialised value(s)
==16218== at 0xCDBC27: MWPhysics::Object::commitPositionChange() (object.cpp:68)
==16218== by 0xCE5B64: MWPhysics::PhysicsTaskScheduler::updatePtrAabb(std::shared_ptr<MWPhysics::PtrHolder> const&) (mtphysics.cpp:446)
==16218== by 0xCE5CC3: operator() (mtphysics.cpp:432)
==16218== by 0xCE5CC3: for_each<std::_Rb_tree_const_iterator<std::shared_ptr<MWPhysics::PtrHolder> >, MWPhysics::PhysicsTaskScheduler::updateAabbs()::<lambda(const std::shared_ptr<MWPhysics::PtrHolder>&)> > (stl_algo.h:3820)
==16218== by 0xCE5CC3: MWPhysics::PhysicsTaskScheduler::updateAabbs() (mtphysics.cpp:431)
==16218== by 0xCE5E35: MWPhysics::PhysicsTaskScheduler::afterPreStep() (mtphysics.cpp:586)
==16218== by 0xCE6238: operator() (mtphysics.cpp:533)
==16218== by 0xCE6238: wait<MWPhysics::PhysicsTaskScheduler::doSimulation()::<lambda()> > (barrier.hpp:33)
==16218== by 0xCE6238: MWPhysics::PhysicsTaskScheduler::doSimulation() (mtphysics.cpp:533)
==16218== by 0xCE6377: MWPhysics::PhysicsTaskScheduler::worker() (mtphysics.cpp:464)
==16218== by 0x74523C3: execute_native_thread_routine (thread.cc:82)
==16218== by 0x76FF258: start_thread (in /usr/lib/libpthread-2.33.so)
==16218== by 0x78155E2: clone (in /usr/lib/libc-2.33.so)
==16218==
==16218== Conditional jump or move depends on uninitialised value(s)
==16218== at 0xCDBC30: MWPhysics::Object::commitPositionChange() (object.cpp:73)
==16218== by 0xCE5B64: MWPhysics::PhysicsTaskScheduler::updatePtrAabb(std::shared_ptr<MWPhysics::PtrHolder> const&) (mtphysics.cpp:446)
==16218== by 0xCE5CC3: operator() (mtphysics.cpp:432)
==16218== by 0xCE5CC3: for_each<std::_Rb_tree_const_iterator<std::shared_ptr<MWPhysics::PtrHolder> >, MWPhysics::PhysicsTaskScheduler::updateAabbs()::<lambda(const std::shared_ptr<MWPhysics::PtrHolder>&)> > (stl_algo.h:3820)
==16218== by 0xCE5CC3: MWPhysics::PhysicsTaskScheduler::updateAabbs() (mtphysics.cpp:431)
==16218== by 0xCE5E35: MWPhysics::PhysicsTaskScheduler::afterPreStep() (mtphysics.cpp:586)
==16218== by 0xCE6238: operator() (mtphysics.cpp:533)
==16218== by 0xCE6238: wait<MWPhysics::PhysicsTaskScheduler::doSimulation()::<lambda()> > (barrier.hpp:33)
==16218== by 0xCE6238: MWPhysics::PhysicsTaskScheduler::doSimulation() (mtphysics.cpp:533)
==16218== by 0xCE6377: MWPhysics::PhysicsTaskScheduler::worker() (mtphysics.cpp:464)
==16218== by 0x74523C3: execute_native_thread_routine (thread.cc:82)
==16218== by 0x76FF258: start_thread (in /usr/lib/libpthread-2.33.so)
==16218== by 0x78155E2: clone (in /usr/lib/libc-2.33.so)
==16218==
2021-10-16 00:43:50 +02:00
elsid
d06e697356
Initialize RenderingManager fields before use
...
PostProcessor is constructed before mNearClip, mViewDistance, mFieldOfView are
initialized and the constructor calls updateProjectionMatrix that uses these
fields.
==16218== Conditional jump or move depends on uninitialised value(s)
==16218== at 0x722EBE: min<float> (stl_algobase.h:235)
==16218== by 0x722EBE: MWRender::RenderingManager::updateProjectionMatrix() (renderingmanager.cpp:1183)
==16218== by 0x7D022F: MWRender::PostProcessor::PostProcessor(MWRender::RenderingManager&, osgViewer::Viewer*, osg::Group*) (postprocessor.cpp:144)
==16218== by 0x728B41: MWRender::RenderingManager::RenderingManager(osgViewer::Viewer*, osg::ref_ptr<osg::Group>, Resource::ResourceSystem*, SceneUtil::WorkQueue*, std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const&, DetourNavigator::Navigator&) (renderingmanager.cpp:452)
==16218== by 0xBB5E65: MWWorld::World::World(osgViewer::Viewer*, osg::ref_ptr<osg::Group>, Resource::ResourceSystem*, SceneUtil::WorkQueue*, Files::Collections const&, std::vector<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> >, std::allocator<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > > > const&, std::vector<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> >, std::allocator<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > > > const&, ToUTF8::Utf8Encoder*, int, std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const&, std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const&, std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const&, std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const&) (worldimp.cpp:190)
==16218== by 0xDEEA6F: OMW::Engine::prepareEngine(Settings::Manager&) (engine.cpp:789)
==16218== by 0xDF2068: OMW::Engine::go() (engine.cpp:959)
==16218== by 0xDE7B8F: runApplication(int, char**) (main.cpp:220)
==16218== by 0x1006593: wrapApplication(int (*)(int, char**), int, char**, std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const&) (debugging.cpp:205)
==16218== by 0x7152C3: main (main.cpp:232)
==16218==
==17455== Conditional jump or move depends on uninitialised value(s)
==17455== at 0x4F8613F: osg::Matrixd::makeFrustum(double, double, double, double, double, double) (Matrix_implementation.cpp:916)
==17455== by 0x4EC0E11: osg::Camera::setProjectionMatrixAsPerspective(double, double, double, double) (Matrixd:580)
==17455== by 0x722DDA: MWRender::RenderingManager::updateProjectionMatrix() (renderingmanager.cpp:1167)
==17455== by 0x7D01EF: MWRender::PostProcessor::PostProcessor(MWRender::RenderingManager&, osgViewer::Viewer*, osg::Group*) (postprocessor.cpp:144)
==17455== by 0x728BA1: MWRender::RenderingManager::RenderingManager(osgViewer::Viewer*, osg::ref_ptr<osg::Group>, Resource::ResourceSystem*, SceneUtil::WorkQueue*, std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const&, DetourNavigator::Navigator&) (renderingmanager.cpp:453)
==17455== by 0xBB5E25: MWWorld::World::World(osgViewer::Viewer*, osg::ref_ptr<osg::Group>, Resource::ResourceSystem*, SceneUtil::WorkQueue*, Files::Collections const&, std::vector<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> >, std::allocator<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > > > const&, std::vector<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> >, std::allocator<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > > > const&, ToUTF8::Utf8Encoder*, int, std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const&, std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const&, std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const&, std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const&) (worldimp.cpp:190)
==17455== by 0xDEEA3F: OMW::Engine::prepareEngine(Settings::Manager&) (engine.cpp:789)
==17455== by 0xDF2038: OMW::Engine::go() (engine.cpp:959)
==17455== by 0xDE7B5F: runApplication(int, char**) (main.cpp:220)
==17455== by 0x1006563: wrapApplication(int (*)(int, char**), int, char**, std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const&) (debugging.cpp:205)
==17455== by 0x7152C3: main (main.cpp:232)
==17455==
2021-10-16 00:43:31 +02:00
psi29a
ac3c02496c
Merge branch 'terrainselectionoptimize' into 'master'
...
Terrain selection optimizations
See merge request OpenMW/openmw!1261
2021-10-15 20:46:20 +00:00
Chris Djali
9c040d1ff7
Merge pull request #3175 from bosvensson1/patch-52
...
removes sky bounds
2021-10-15 20:12:32 +01:00
unelsson
14c4bba4a3
Remove unused include
2021-10-15 21:54:00 +03:00
unelsson
28278e9a82
Drawing duplicate lines is faster than iterating through big containers
2021-10-15 21:54:00 +03:00
unelsson
55456a19fc
Only iterate through temporary selection when using toggle
2021-10-15 21:54:00 +03:00
unelsson
46960825ef
Various terrain selection and editmode dragging fixes
2021-10-15 21:54:00 +03:00
unelsson
89a20b6ea5
Call dragEnded instead of pressed also after aborted operation
2021-10-15 21:54:00 +03:00
unelsson
3df9ceda03
Remove measurement code
2021-10-15 21:54:00 +03:00
unelsson
7602d677fa
Terrain selection optimizations, measurements, renderBin change
2021-10-15 21:54:00 +03:00
psi29a
ed1953b811
Merge branch 'actor_souls_only' into 'master'
...
Don't hit the ground
Closes #6339
See merge request OpenMW/openmw!1295
2021-10-14 17:15:02 +00:00
Evil Eye
5805c0114a
Don't hit the ground
2021-10-14 17:40:03 +02:00
psi29a
29082ff658
Merge branch 'morrowland_the_musical' into 'master'
...
Stop trying to play non-existent music files started by scripts
See merge request OpenMW/openmw!1293
2021-10-14 15:25:11 +00:00
psi29a
787da4891c
Merge branch 'actor_souls_only' into 'master'
...
Check if the target is an actor before updating magic effects
Closes #6339
See merge request OpenMW/openmw!1294
2021-10-14 15:19:16 +00:00
psi29a
89077af3ff
Merge branch 'getters' into 'master'
...
Move getters to header in order to allow inlining (performance optimization)
See merge request OpenMW/openmw!1289
2021-10-14 15:17:08 +00:00
Evil Eye
bba80b07a2
Check if the target is an actor
2021-10-14 16:49:30 +02:00
Bo Svensson
db3d938ee9
cleans up BSAFile ( #3177 )
...
We currently build a large map of a BSAFile's contents unused by Open MW. We already map archive contents in VFS. With this PR we remove the map from BSAFile and reimplement its only current use in BSATool.
2021-10-14 14:46:44 +02:00
psi29a
e86b9a7b89
Merge branch 'add_comment' into 'master'
...
Add comment for MWWorld::Ptr::getType() because it is not obvious.
See merge request OpenMW/openmw!1291
2021-10-14 12:44:04 +00:00
Evil Eye
4a6464ea67
Stop trying to play non-existent music files started by scripts
2021-10-13 22:40:07 +02:00
Evil Eye
ec6451e93a
Merge branch 'recordtype' into 'master'
...
Avoid copying std::string in MWWorld::Ptr::getTypeDescription()
See merge request OpenMW/openmw!1290
2021-10-13 17:04:32 +00:00
Bo Svensson
fc9ab97950
sky.cpp
2021-10-13 10:08:28 +00:00
Petr Mikheev
4e9d691715
Add comment for MWWorld::Ptr::getType() because it is not obvious.
2021-10-12 21:30:37 +02:00
Evil Eye
6b482d0b52
Merge branch 'openmw-tradeglitch' into master
2021-10-12 18:19:19 +02:00
psi29a
6ec66edb7c
Merge branch 'soulful' into 'master'
...
Fix soul trapping for one shot kills
Closes #6337
See merge request OpenMW/openmw!1288
2021-10-12 07:59:44 +00:00
psi29a
67fa8413f3
Merge branch 'physics_heightfield' into 'master'
...
Replace float type for arguments to create heightfield with int
See merge request OpenMW/openmw!1285
2021-10-12 07:58:34 +00:00
psi29a
207a7245bc
Merge branch 'navigator_settings' into 'master'
...
Initialize navigator max climb and max slope settings in makeSettingsFromSettingsManager
See merge request OpenMW/openmw!1283
2021-10-12 07:02:08 +00:00
psi29a
444765e304
Merge branch 'navmesh_agent_half_extents' into 'master'
...
Define default actor half extents in settings
See merge request OpenMW/openmw!1282
2021-10-12 07:01:13 +00:00
Petr Mikheev
a8acc19988
Avoid copying std::string in MWWorld::Ptr::getTypeDescription()
2021-10-12 00:18:23 +02:00
elsid
405e814190
Move btCollisionObject creation for MWPhysics::Object into components
2021-10-11 23:14:02 +02:00
Evil Eye
ae4578f566
Fix soul trapping for one shot kills
2021-10-11 21:46:15 +02:00
Petr Mikheev
fec65acd18
Move getters to header in order to allow inlining
2021-10-11 21:33:35 +02:00
elsid
144862aa35
Define default actor half extents in settings
...
Player's half extents may change over time when wolfskin model is used for
example. Having it in settings is a more presistent approach.
2021-10-11 19:41:43 +02:00
elsid
7c5a590890
Replace float type for arguments to create heightfield with int
...
To reduce amount of computations on the caller side and restrict possible
values.
* verts can't be non-int because it's a number of things.
* worldsize is initially defined as int by ESM::Land::REAL_SIZE.
* Put function to calculate heightfied shift into components to be able to
reuse by other binaries.
2021-10-11 19:28:08 +02:00
elsid
6986feb81b
Initialize navigator max climb and max slope settings in makeSettingsFromSettingsManager
...
To avoid having multiple places to initialize them when they will be required
by multiple binaries.
2021-10-11 18:50:26 +02:00
Bo Svensson
d6613d3677
mostly reverts MWLua changes ( #3170 )
...
We just can no longer use the former ptr.getTypeName() as a fallback, but I do not suppose it matters. This value was an implementation defined string that usually contained a garbled mess.
Probably we should additionally refactor Lua types completely now that we have Ptr::getType(). I will leave this up to MWLua developers.
2021-10-11 16:56:26 +02:00
Bo Svensson
5cf9995a31
fixes windows build
2021-10-11 13:28:37 +00:00
Bo Svensson
ef906cbfa8
improves MWClass mapping ( #3166 )
...
Currently, we use a peculiar mapping of ESM classes by their std::type_info::name. This mapping is an undefined behaviour because std::type_info::name is strictly implementation defined. It could return a non-unique value on some platforms. With this PR we use the unsigned int sRecordId of the ESM class as a more efficient lookup type that does not build on undefined behaviour. We can expect marginally faster save-game loading with these changes as well.
2021-10-11 13:46:21 +02:00
Bo Svensson
98f8295765
allows to skip ComputeLightSpaceBounds traversal ( #3152 )
...
Currently, we always traverse the scene graph an additional time with a ComputeLightSpaceBounds visitor during shadow casting. ComputeLightSpaceBounds is only useful when the shadow casting mask allows us to shrink the bounds of the rendered scene, so we guard its traversal with a check against getCastsShadowTraversalMask. In practice, this guard never works because we build the traversal mask inclusively.
With this PR we limit the getCastsShadowTraversalMask check to relevant masks. This new check allows us to skip a superfluous ComputeLightSpaceBounds traversal with most settings.
2021-10-11 11:27:50 +02:00
psi29a
66a6b80df9
Merge branch 'thrust_into_the_light' into 'master'
...
Detect keys and enchanted items in containers without custom data
Closes #6326
See merge request OpenMW/openmw!1265
2021-10-11 09:13:31 +00:00
psi29a
f9124ccea6
Merge branch 'recast_mesh_slope' into 'master'
...
Use different colors for walkable and non-walkable recast mesh triangles
See merge request OpenMW/openmw!1277
2021-10-11 08:56:04 +00:00
psi29a
3e2694dde9
Merge branch 'catch_me' into 'master'
...
Remove active effects from spells that no longer exist
See merge request OpenMW/openmw!1273
2021-10-11 08:53:48 +00:00
psi29a
d3bad2dba2
Merge branch 'stripperiffic_werewolves' into 'master'
...
Remove magic effects before saving stats when turning into a werewolf
Closes #6330
See merge request OpenMW/openmw!1270
2021-10-11 08:52:46 +00:00
psi29a
21c4504d35
Merge branch 'max_slope' into 'master'
...
Change max walkable slope angle to 46 degrees
See merge request OpenMW/openmw!1280
2021-10-11 08:22:35 +00:00
Bo Svensson
cbcdd705ee
minor objectpaging.cpp scene graph optimisations ( #3155 )
...
We now use PositionAttitudeTransform for unmerged nodes because I have been informed PositionAttitudeTransform's scene graph performance is measurably faster than MatrixTransform's. We still need to use MatrixTransform for merged nodes because the Optimizer has limited support for non-MatrixTransform nodes. These MatrixTransforms will be removed in the merging process anyway.
2021-10-11 10:09:01 +02:00
AnyOldName3
18869c2c75
Add some extra tests
...
The behaviour here is unchanged, but was previously untested.
2021-10-11 00:02:33 +01:00
AnyOldName3
7fb5b773dd
Remove obsolete tests
...
The old behaviour was basically a bug and @ doesn't mean anything special now
2021-10-11 00:01:58 +01:00
AnyOldName3
1b83b08d80
Merge remote-tracking branch 'upstream/master' into detain-hash
...
Tests which no longer work are commented out.
Some of these don't work because they're effectively testing for the
presence of bugs in the old implementation.
Others don't work because we're no longer accidentally disabling the
boost::program_options feature where it generates an error if only part
of a token gets consumed.
These will be fixed by later commits.
2021-10-10 23:50:50 +01:00
elsid
ff9aabafd1
Change max walkable slope angle to 46 degrees
...
This is the value used by vanilla Morrowind engine. At this angle player
character starts sliding down the slope.
This fixes navigation and movement issue in Mournhold, Godsreach.
2021-10-10 18:25:05 +02:00
Bo Svensson
af759683b8
enables std::move in keywordsearch.hpp ( #3163 )
...
For some reason we have commented std::move keywords in keywordsearch.hpp while they are quite beneficial. openmw_test_suite for keywordsearch.hpp takes 30% less time with these changes.
2021-10-10 18:15:40 +02:00
elsid
0c8a811ad5
Render only cached recast mesh
...
To avoid waiting while recast mesh is generating.
Remove redundant continue.
2021-10-10 13:13:57 +02:00
Evil Eye
3d5950f790
Remove active effects from spells that no longer exist
2021-10-09 12:27:17 +02:00
AnyOldName3
af0d399103
Purge all uses of Escape Hash types
2021-10-09 01:49:08 +01:00
Evil Eye
ec735529da
Remove active effects from the player when transforming
2021-10-08 17:32:41 +02:00
Evil Eye
f6eeee3ad5
Detect keys and enchanted items in containers without custom data
2021-10-08 16:51:30 +02:00
psi29a
7af245d205
Merge branch 'sync_sync_with_async' into 'master'
...
Merge logic of sync and async physics simulation
See merge request OpenMW/openmw!1250
2021-10-08 09:35:32 +00:00
psi29a
ae31138686
Merge branch 'options_tests' into 'master'
...
Add tests for openmw options
See merge request OpenMW/openmw!1253
2021-10-08 08:02:40 +00:00
psi29a
9c47fdcf7e
Merge branch 'flip_sign' into 'master'
...
Fix regression #6328
Closes #6328
See merge request OpenMW/openmw!1267
2021-10-08 06:47:57 +00:00
psi29a
1332e57195
Merge branch 'outside_means_outside' into 'master'
...
Make StayOutside only block teleportation from exteriors to interiors
Closes #6323
See merge request OpenMW/openmw!1268
2021-10-08 06:46:42 +00:00
psi29a
fc7e13d76a
Merge branch 'omwaddon_dep' into 'master'
...
Allow creating omwaddons without a dependency on an omwgame
See merge request OpenMW/openmw!1243
2021-10-08 06:40:43 +00:00
Evil Eye
caafd0c667
Remove CE enchantments before saving stats when turning into a werewolf
2021-10-07 21:09:43 +02:00
psi29a
1f62fd3b56
Merge branch 'Fix_Keyword_Report_to_caius' into 'master'
...
Fix keyword search when the keyword is preceded by a non whitespace non alpha character
Closes #6308
See merge request OpenMW/openmw!1266
2021-10-07 13:26:40 +00:00
florent teppe
e5abadc234
Fix keyword search when the keyword is preceded by a non whitespace non alpha character
2021-10-07 13:26:40 +00:00
psi29a
555224a0fb
Merge branch 'fixes' into 'master'
...
Make compilers happy and fix the changelog
See merge request OpenMW/openmw!1260
2021-10-07 10:17:27 +00:00
Evil Eye
dfc72e9b7e
Make StayOutside only block teleportation from exteriors to interiors
2021-10-06 18:25:28 +02:00
Evil Eye
7540265432
Fix regression #6328
2021-10-06 17:14:00 +02:00
Bo Svensson
787f91211d
resets state updater to apply light settings ( #3141 )
...
resets state updater to apply light settings
With this PR we achieve the same effect with fewer lines of code.
2021-10-06 11:21:30 +02:00
psi29a
c3f5e8f968
Merge branch 'lua_transform' into 'master'
...
3D transforms in Lua
See merge request OpenMW/openmw!1235
2021-10-06 09:21:21 +00:00
elsid
035307b012
Add tests for openmw options
...
In attempt to document current behaviour. Add commented out checks as desired
behaviour.
2021-10-05 22:51:12 +02:00
Kindi
ce54edf011
Update tradewindow.cpp
...
Additional check
2021-10-05 18:00:53 +00:00
Bo Svensson
442a0e8434
avoids two transforms in sky.cpp ( #3150 )
...
As we discovered in #3148 , `Transform` nodes and their low level equivalence `pushModelViewMatrix` are somewhat costly involving a `Matrix::invert` operation per frame.
With this PR we avoid one `Transform` node for sun flashes and avoid another `pushModelViewMatrix` call in case the sun is fully visible.
2021-10-05 16:00:30 +02:00
fredzio
3b174d72d8
Introduce 3 scoped mutex wrappers to allow to conditionally skip taking
...
mutexes in synchronous case.
2021-10-05 15:52:27 +02:00
fredzio
21dbe314bf
Use common function for sync and async case. Now both cases follow the
...
same flow, synchronous simulation is just a special case.
2021-10-05 15:44:20 +02:00
Frederic Chardon
499b161e7b
Merge handleFall() and updateMechanics() into updateActor(). It remove gratuitious differences between sync and async cases. Also, it will make the after simulation update logic easier to follow when projectiles move into the simulation thread.
2021-10-05 15:44:20 +02:00
Bret Curtis
0d1d3e67bc
Merge pull request #3149 from bosvensson1/patch-24
...
With this PR we fix a -Wreorder warning.
2021-10-05 15:07:02 +02:00
Bo Svensson
4b1c009ffd
use StateSet define for translucentFramebuffer ( #3138 )
...
With this PR we test out osg's shader define system for a somewhat harmless feature. As we can see, our code becomes more concise and efficient in this case. Most importantly, we no longer create unneeded vertex shader objects.
2021-10-05 14:37:08 +02:00
Bo Svensson
b2af81bc18
converts remaining osg::NodeCallback ( #3147 )
...
With this PR we convert remaining instantiations of the deprecated osg::NodeCallback in Open MW to SceneUtil::NodeCallback.
2021-10-05 14:21:12 +02:00
Bo Svensson
9f58616aa0
fixes -Wreorder warning
2021-10-05 12:02:49 +00:00
Bo Svensson
8e9851c97c
npcanimation.cpp ( #3148 )
2021-10-05 13:52:19 +02:00
Kindi
d9b254178f
Update tradewindow.hpp
...
remover redundant
2021-10-04 20:47:45 +00:00
Kindi
f28d6738bf
Update tradewindow.cpp
2021-10-04 20:44:56 +00:00
Bo Svensson
e4a9eefc2a
uses a bitfield in refdata.hpp ( #3143 )
...
* uses a bitfield in refdata.hpp
With this simple change we pack boolean values to reduce the memory requirements of game objects.
* refdata.hpp [ci skip]
* refdata.cpp
2021-10-04 12:12:00 +02:00
Bo Svensson
aaf7b423d6
adds a replacement for osg::NodeCallback ( #3144 )
...
* nodecallback.hpp
* lightmanager.hpp
* lightmanager.cpp
* lightmanager.hpp
* nodecallback.hpp
* nodecallback.hpp
* [ci skip]
* lightmanager.hpp
* nodecallback.hpp
* nodecallback.hpp
* lightmanager.cpp
* lightmanager.cpp
* nodecallback.hpp
* [ci skip]
* [ci skip]
* controller.cpp
* [ci skip]
* osgacontroller.cpp
* keyframe.hpp
* controller.hpp
* keyframe.hpp
* [ci skip]
* keyframe.hpp
* animation.hpp
* [ci skip]
* weaponanimation.cpp
* nodecallback.hpp
2021-10-04 10:56:55 +02:00
Kindi
0c1b78c42a
Update tradewindow.cpp curly
2021-10-04 02:16:01 +00:00
kuyondo
071793eeb3
Merge branch 'master' of https://gitlab.com/Kuyondo/openmw
2021-10-04 08:12:56 +08:00
kuyondo
49da33a129
comiit
2021-10-04 08:12:15 +08:00
Evil Eye
d680aa26e9
Disallow switch fallthrough
2021-10-03 21:58:10 +02:00
psi29a
0e07fc38e5
Merge branch 'opencs-ui-tweaks' into 'master'
...
Minor UI tweaks all around OpenMW-CS
See merge request OpenMW/openmw!1212
2021-10-03 19:13:51 +00:00
Matjaž Lamut
1c9f06f742
Minor UI tweaks all around OpenMW-CS
2021-10-03 19:13:51 +00:00
psi29a
2c8c36fe5d
Merge branch 'master' into 'effective_magic'
...
# Conflicts:
# CHANGELOG.md
2021-10-01 21:20:08 +00:00
psi29a
bd866cf210
Merge branch 'fix_infidelities' into 'master'
...
Fix Infidelities quest from Tribunal (#6307 )
Closes #6307
See merge request OpenMW/openmw!1248
2021-10-01 21:12:15 +00:00
psi29a
1d342f80ed
Merge branch 'cursorspeedmerge' into 'master'
...
Updated: Change cursor speed with settings.cfg (#6312 )
Closes #6312
See merge request OpenMW/openmw!1255
2021-10-01 11:23:53 +00:00
psi29a
f6b27f610d
Merge branch 'revert_and_twist' into 'master'
...
Revert and restore the cell grid size with alternate fix
See merge request OpenMW/openmw!1259
2021-10-01 11:21:06 +00:00
Bret Curtis
52a10a4bc0
remove one last assert
2021-10-01 12:24:29 +02:00
Bo Svensson
2568f119a4
reapplies PR without npe ( #3137 )
...
* avoids creating empty statesets on drawables
Currently, we attempt to skip creating state on drawable nodes when this state matches the default state. This attempt is incomplete because we still create an avoidable empty stateset in the default case.
* renderingmanager.cpp
* nifloader.cpp
* nifloader.cpp
* shadervisitor.cpp
2021-10-01 10:11:00 +02:00
psi29a
9cf9da9cbd
Merge branch 'fix' into 'master'
...
Resolve warning: lambda capture 'defaultCollisionType' is not required to be captured for this use
See merge request OpenMW/openmw!1247
2021-10-01 08:02:17 +00:00
andrewapp
b5af192888
gamepad cursor speed fix
2021-10-01 09:19:26 +10:00
Bret Curtis
8309910d9d
Restore the cell grid to its former non-exorbitant size, reducing stutter and also threw in a simple alternative fix for the actor position adjustment issue.
2021-09-30 22:58:40 +02:00
Evil Eye
2de7b8e2fb
Allow non-biped creatures using weapons to open doors
2021-09-29 21:21:52 +02:00
Evil Eye
4abcb0d7b9
Remove applied magnitude instead of min magnitude
2021-09-29 19:25:12 +02:00
Evil Eye
63a9203dde
Fix icon magnitude
2021-09-29 19:25:12 +02:00
Evil Eye
43074347e8
Prevent spell duplication
2021-09-29 19:25:11 +02:00
Evil Eye
b8e4f18751
Clear temporary effects before unloading actors to prevent absorb effects becoming permanent
2021-09-29 19:25:11 +02:00
Evil Eye
161e042e2a
Prevent iterator invalidation when cleaning up summons
2021-09-29 19:25:11 +02:00
Evil Eye
dc1fe62dde
Overhaul magic effects to work with onApply and onEnd events
2021-09-29 19:25:10 +02:00
Andrei Kortunov
e109d86489
Revert "avoids creating empty statesets on drawables ( #3132 )"
...
This reverts commit 957c25a491
.
2021-09-29 21:01:22 +04:00
Bo Svensson
d8707a763f
fixes build ( #3134 )
...
* quadtreeworld.cpp
* renderingmanager.cpp [ci skip]
* quadtreeworld.hpp
* cellborder.hpp
* cellborder.cpp
2021-09-29 17:10:58 +02:00
Bret Curtis
803195a05f
add back some explicit includes
2021-09-29 16:29:10 +02:00
Bo Svensson
8358418555
set the correct program link parameters ( #3110 )
...
* shadermanager.hpp setProgramTemplate
* shadermanager.hpp
* shadermanager.cpp setProgramTemplate
* shadervisitor.hpp setProgramTemplate
* shadervisitor.cpp setProgramTemplate
* scenemanager.cpp setProgramTemplate
* scenemanager.hpp setProgramTemplate
* renderingmanager.cpp
* groundcover.cpp setProgramTemplate
* groundcover.hpp
* groundcover.cpp
* shadervisitor.cpp
* util.cpp
* lightmanager.cpp
* scenemanager.cpp
* scenemanager.hpp
* lightmanager.cpp
* lightmanager.cpp
* lightmanager.cpp
* scenemanager.hpp [ci skip]
* water.cpp
* groundcover.cpp
* shadermanager.hpp
2021-09-29 15:40:37 +02:00
Andrei Kortunov
1109cc3ac7
Remove unused data field ( #3133 )
2021-09-29 12:08:51 +02:00
Bo Svensson
957c25a491
avoids creating empty statesets on drawables ( #3132 )
...
* avoids creating empty statesets on drawables
Currently, we attempt to skip creating state on drawable nodes when this state matches the default state. This attempt is incomplete because we still create an avoidable empty stateset in the default case.
* renderingmanager.cpp
* nifloader.cpp
2021-09-29 09:58:19 +02:00
Andrei Kortunov
fc2076db1a
Fix MSVC warnings about local variables redeclaration ( #3130 )
2021-09-29 09:36:05 +02:00
elsid
c0ef4417c3
Check AiTravel destination for other actors presence
...
Use faster aabbTest but without destance filter. To avoid dependency on a
specific constant and correctly handle situations when there is a big
difference between actors sizes.
2021-09-29 01:05:23 +02:00
elsid
9950132a5f
Allow travelling actors find path over pathgrid navmesh area type
...
In addition to other navmesh areas. This makes actors behaviour closer to
vanilla when pathgrid is correct.
2021-09-29 01:05:23 +02:00
elsid
163968f578
Normalize area cost factor
...
Recastnavigation uses path cost and heuristic based on distance to find
shortest path by A* algorithm. Using raw speed values makes cost much lower
value than heuristic (1000 times less at maximum). Heuristic is defined as
distance from node to target * 0.999 that means area cost should never be less
than 0.999 or 1 for simplicity.
Use max speed to make lowest possible cost factor equal to 1.
2021-09-29 01:03:24 +02:00
Petr Mikheev
48538d5cef
3D transforms in Lua
2021-09-28 20:37:47 +02:00
Petr Mikheev
eb2f863b7d
Resolve unused-lambda-capture
warnings
2021-09-28 13:02:45 +02:00
Petr Mikheev
fb3917fc1a
Lua callbacks
2021-09-28 09:36:23 +02:00
Petr Mikheev
0bd1c22e24
Raycasting in Lua
2021-09-28 09:36:23 +02:00
Bret Curtis
fd251dfe55
remove unused member variable
2021-09-28 09:19:48 +02:00
Bo Svensson
5fde6867a2
removes unused code ( #3129 )
...
* scenemanager.cpp
* scenemanager.hpp
* scenemanager.cpp
* stats.cpp
* renderingmanager.cpp
2021-09-28 09:07:49 +02:00
Evil Eye
77a23dab09
Only add enabled objects to the scene
2021-09-27 22:23:00 +02:00
Petr Mikheev
e760a6c7e6
Merge branch 'forlua' into 'master'
...
Simple Physics API modification for Lua
See merge request OpenMW/openmw!1216
(cherry picked from commit d88494c90b501d0832ae0330a0ca81d8b8e5aa50)
02dd055a Save hitObject in castSphere() just like in castRay()
0793d0bf Allow to override collision mask and group for castSphere() as for castRay()
2021-09-27 19:50:57 +00:00
Bo Svensson
01cc61087b
improves paging preloader ( #3126 )
...
* Return check for distance when we try to reuse data
* [ci skip]
* [ci skip]
* [ci skip]
* [ci skip]
* [ci skip]
* cellpreloader.cpp
* [ci skip]
* [ci skip]
* [ci skip]
* [ci skip]
* [ci skip]
* [ci skip]
* [ci skip]
* [ci skip]
* quadtreeworld.cpp
* chunkmanager.cpp
* chunkmanager.cpp
* cellpreloader.cpp
* jvoisin
* whitespace
* whitespace
2021-09-27 21:32:18 +02:00
psi29a
782e0710af
Merge branch 'OpenCS-preserve-blocked' into 'master'
...
OpenCS - Preserve "blocked" record flags when saving. #6288
Closes #6288
See merge request OpenMW/openmw!1052
2021-09-27 19:21:20 +00:00
psi29a
908d196fee
Merge branch 'master' into 'undead_intelligence'
...
# Conflicts:
# CHANGELOG.md
2021-09-27 19:12:13 +00:00
psi29a
ade6cd0127
Merge branch 'editor_columns_filtering' into 'master'
...
Toggling table columns visibility. Partially implements #890
Closes #890
See merge request OpenMW/openmw!1232
2021-09-27 19:02:19 +00:00
psi29a
2cee222e73
Merge branch 'explosion_at_impact' into 'master'
...
Bring arrow behaviour in line with vanilla (#6233 and other change)
See merge request OpenMW/openmw!1188
2021-09-27 19:00:53 +00:00
Bo Svensson
c6f7137ee1
fixes bugs with share state ( #3111 )
...
* optimizer.cpp merge fix
* objectpaging.cpp
* optimizer.hpp setSharedStateManager
* optimizer.cpp shareState
* scenemanager.cpp shareState
* scenemanager.cpp
* optimizer.cpp
* optimizer.cpp
* scenemanager.cpp
* optimizer.cpp
2021-09-27 20:41:24 +02:00
Evil Eye
233bb287e1
Merge branch 'refactoring2' into 'master'
...
Minor refactoring: use Misc::normalizeAngle in worldimp.cpp
See merge request OpenMW/openmw!1242
2021-09-27 16:01:31 +00:00
Evil Eye
30c998f34e
Merge branch 'test_cells' into 'master'
...
Use same logic for testing cell as for loading cell
See merge request OpenMW/openmw!1240
2021-09-27 15:24:00 +00:00
Evil Eye
34cf66139a
Make GetCurrentAIPackage return -1 for non-actors and dead actors
2021-09-26 22:15:43 +02:00
Evil Eye
2f4df12b2e
Merge branch 'Fix_ASCII' into 'master'
...
Fixed an issue where keyword search expected the text to be all ASCII characters
See merge request OpenMW/openmw!1227
2021-09-26 20:08:55 +00:00
Petr Mikheev
413ac067ec
Allow creating omwaddons without a dependency on an omwgame
2021-09-26 17:44:28 +02:00
Petr Mikheev
83e0d9aeef
Minor refactoring: use Misc::normalizeAngle in worldimp.cpp
2021-09-26 17:28:51 +02:00
psi29a
e2e5161d81
Merge branch 'optimizebrushdraw' into 'master'
...
Optimize terrain editing brush drawing performance
Closes #6285
See merge request OpenMW/openmw!1226
2021-09-26 15:14:55 +00:00
elsid
5878b1fce6
Use same logic for testing cell as for loading cell
...
Having different branches makes testing less useful. If something fails in
regular executing it should fail in testing. To make it possible there should
be none differences in the execution paths.
2021-09-24 22:24:07 +02:00
elsid
d36595e09e
Make sure PathFinder::getClosestPoint is not called with failing precondition
...
Pathgrid should be not nullptr and points should be not empty.
2021-09-23 01:48:54 +02:00
Pi03k
e641bea606
Toggling table columns visibility
2021-09-22 10:47:08 +02:00
Petr Mikheev
5893b88409
Ignore time to destination when giving way ( #6296 )
2021-09-22 01:46:04 +02:00
Bo Svensson
b22fb7a7bf
consolidate node mask checks ( #3125 )
...
* consolidate node mask checks
This PR simplifies a few checks against node masks in object paging by using the osg provided `setTraversalMask`.
* objectpaging.cpp
2021-09-21 22:39:31 +02:00
Evil Eye
786b6b7c9a
Merge branch 'lua_util' into 'master'
...
Move LuaState::makeReadOnly(sol::table) out of the class
See merge request OpenMW/openmw!1229
2021-09-21 15:14:09 +00:00
florent.teppe
d9c3ba03f4
Uses limits instead of climits
2021-09-20 21:01:28 +02:00
Bo Svensson
99df1c695c
fixes wireframe is broken ( #3123 )
...
* renderingmanager.cpp [ci skip]
* groundcover.hpp [ci skip]
* groundcover.cpp
* renderingmanager.cpp [ci skip]
* renderingmanager.hpp
2021-09-20 20:17:55 +02:00
florent.teppe
2d32954888
Replaced Assert_true with expect_eq
2021-09-20 19:56:47 +02:00
psi29a
15bcbb5844
Merge branch 'getsquareroot' into 'master'
...
Remove duplicate GetSquareRoot implementation
See merge request OpenMW/openmw!1231
2021-09-19 19:49:55 +00:00
Evil Eye
831055f878
Merge branch 'OpenCS-fix-modify' into 'master'
...
OpenCS - Re-implement the fix for Issue #6067 .
See merge request OpenMW/openmw!1173
2021-09-19 19:23:30 +00:00
florent.teppe
0e06e9b221
Removed useless comment and converted the file to UTF8 to keep special characters
2021-09-19 20:31:22 +02:00
Evil Eye
6d7cb38834
Remove duplicate GetSquareRoot implementation
2021-09-19 19:53:38 +02:00
florent.teppe
c1c501ca35
Added test to make sure keyword search works even with non ascii characters
2021-09-19 15:05:48 +02:00
florent.teppe
bcb0526268
Added climits, it compiled on VS2019, but not with g++
2021-09-19 15:00:51 +02:00
Petr Mikheev
2f25257a3e
Move LuaState::makeReadOnly(sol::table) out of the class because it doesn't need to access LuaState internals.
2021-09-19 14:38:27 +02:00
Petr Mikheev
f1e3c55ea3
Fix deadlock in Lua worker thread ( #6286 )
2021-09-19 11:32:52 +02:00
florent.teppe
76be2e91e5
Fixed an issue where keyword search expected the text to be all ASCII characters
2021-09-18 18:25:04 +02:00
psi29a
68db9869f5
Merge branch 'DistantTerrainDebugChunks' into 'master'
...
Debug terrain chunks
See merge request OpenMW/openmw!1169
2021-09-18 15:21:26 +00:00
psi29a
18f5762a76
Merge branch 'master' into 'OpenCS-preserve-blocked'
...
# Conflicts:
# CHANGELOG.md
2021-09-18 15:20:26 +00:00
unelsson
70e210735a
Optimize terrain editing brush drawing performance
2021-09-18 15:57:00 +03:00
Pi03k
4ff5a04e9b
Remove redundant qt-related cmake macros
2021-09-17 14:41:04 +02:00
Bo Svensson
f62adab43a
Avoid the terrain sync completely in most cases ( #3103 )
...
We can take elsid's commit 605cb8d
further by avoiding the terrain sync completely in most cases. Currently in changeCellGrid we wait for a new preloading task to ensure the getPagedRefnums for the new active cells have been filled in by object paging. This is usually not necessary because we have already completed a preload in the past containing these active cells. With this PR we remember what we preloaded and skip the terrain sync if it is not needed.
2021-09-16 22:11:19 +02:00
psi29a
2be3a76b6a
Merge branch 'spin_me_right_round' into 'master'
...
Reset rotation when respawning actors
Closes #6273
See merge request OpenMW/openmw!1219
2021-09-15 08:27:25 +00:00
psi29a
24d1c2b5fa
Merge branch 'recurse_directory_iterator' into 'master'
...
VFS manager refactoring
See merge request OpenMW/openmw!1218
2021-09-15 07:20:52 +00:00
Cédric Mocquillon
6817282097
Move getFileExtension to common header and use instead of repeating same code
2021-09-14 18:09:55 +02:00
Cédric Mocquillon
c2df0949e2
Change normalizeFilename signature
2021-09-14 18:09:55 +02:00
Cédric Mocquillon
d4e26746a3
Use recurse subdirectory iterator to iterate over the VFS without exposing internal details
2021-09-14 18:09:54 +02:00
Evil Eye
60298cd66d
Reset rotation when respawning actors
2021-09-14 16:53:57 +02:00
pi03k
e4eeb9cce9
Remove 'no relevant classes' moc warning
2021-09-14 11:20:18 +02:00
Bo Svensson
b6f572578e
Groundcover optimisation ( #3101 )
...
* groundcover.cpp share state
* groundcover.hpp share state
2021-09-13 12:20:00 +02:00
psi29a
0ab8a7ddd7
Merge branch 'create-objects-menu' into 'master'
...
OpenMW-CS: Usability changes to the drop-down menu when creating a new object.
See merge request OpenMW/openmw!1210
2021-09-12 14:15:11 +00:00
psi29a
c40f921396
Revert "actoranimation.cpp faster getbonebyname ( #3099 )"
...
This reverts commit c284d0cf5c
2021-09-12 07:56:20 +00:00
Cédric Mocquillon
080c909c28
Merge the 'debug chunks' and 'object paging debug batches' settings into a single one
2021-09-11 21:53:05 +02:00
Bo Svensson
e2d0e86020
cellpreloader.cpp unused variable ( #3102 )
2021-09-11 20:58:42 +02:00
AnyOldName3
7b482bc2e2
Maybe force dedicated GPU on dual-AMD machines
2021-09-11 19:23:27 +01:00
psi29a
f8c7664234
Merge branch 'copy_before_move' into 'master'
...
Maybe fix #6259
Closes #6259
See merge request OpenMW/openmw!1197
2021-09-11 09:32:50 +00:00
Bo Svensson
ac72f3d636
reduces virtual function calls in a hotspot of cache retrieval ( #3100 )
...
* chunkmanager.cpp static_cast [ci skip]
* groundcover.cpp static_cast [ci skip]
* Update objectpaging.cpp
objectpaging.cpp static_cast [ci skip]
2021-09-10 17:58:57 +02:00
Bret Curtis
1edeffbafc
constify getBoneByName
2021-09-09 23:57:20 +02:00
Bo Svensson
9d661359a1
Groundcover consolidation ( #3096 )
...
* chunkmanager.hpp viewdistance
* chunkmanager.cpp viewdistance
* chunkmanager.hpp viewdistance
* quadtreeworld.cpp viewdistance
* quadtreeworld.cpp consolidate
* quadtreeworld.hpp consolidate
* renderingmanager.cpp groundcover consolidate
* renderingmanager.hpp groundcover consolidate
* renderingmanager.cpp updater move
* renderingmanager.hpp updater move
* groundcover.hpp activegrid consolidation
* groundcover.cpp activegrid consolidation
* settings-default.cfg dead settings remove
* viewdata.cpp revert
* wrong file paste mistake
* wrong file paste mistake
* wrong file paste mistake
* renderingmanager.cpp updatecallback fix
* renderingmanager.cpp namespace fix
* groundcover.hpp redefinition fix
* groundcover.cpp redefinition fix
* renderingmanager.cpp crash fix
* renderingmanager.cpp euclidean groundcover distance
* viewdata.hpp getreusedistance
* quadtreeworld.cpp reusedistance
* groundcover.rst [ci skip]
2021-09-09 23:10:22 +02:00
Bo Svensson
c284d0cf5c
actoranimation.cpp faster getbonebyname ( #3099 )
2021-09-09 23:04:38 +02:00
Bo Svensson
147ed39900
This PR solves a crash with Robert's bodies logged on your bugtracker. ( #3095 )
...
* attach.cpp [ci skip]
* attach.cpp [ci skip]
* attach.cpp [ci skip]
* npcanimation.cpp [ci skip]
* attach.hpp [ci skip]
* attach.cpp [ci skip]
* creatureanimation.cpp [ci skip]
* creatureanimation.cpp [ci skip]
* cellpreloader.cpp
* npcanimation.cpp
* attach.cpp
* make android adk happy
* make android adk happy
* changelog.md [ci skip]
* authors.md [ci skip]
2021-09-09 22:56:57 +02:00
Lamoot
6e6214bc43
In OpenMW-CS, when creating a new object, sort the entries in the drop-down menu alphabetically. Also have the menu be tall enough to show all of them at once (without scroll bars).
2021-09-09 20:46:27 +02:00
elsid
6b7434ca69
Pass std::string_view instead of const std::string&
...
* Starting with Actor::getBodyPartMesh and ending with
Misc::StringUtils::ciEqual.
* Add tests for Misc::StringUtils::ciEqual.
2021-09-09 18:39:50 +02:00
psi29a
149241daae
Merge branch 'dead_animation_code_removal' into 'master'
...
Dead animation code removal
Closes #6264
See merge request OpenMW/openmw!1198
2021-09-08 10:07:54 +00:00
JanuarySnow
bdbc6c0cba
Dead animation code removal
2021-09-08 10:07:54 +00:00
psi29a
4bf22f3ca0
Merge branch 'fix_pathgrid_path' into 'master'
...
Use pathgrid path when destination is closer to different graph component node
See merge request OpenMW/openmw!1155
2021-09-08 09:55:42 +00:00
elsid
605cb8db7c
Make sync terrain preloading sleep free
...
This reduces average time spent on in. 5 milliseconds as a base precision is
quite a lot considering that for 60 FPS frame time is 1000/16 = ~16.67 ms
when it's a cell loading frame and there is more important work to do rather
than sleeping.
2021-09-07 14:52:42 +02:00
psi29a
aef6ec464c
Merge branch 'optimize_add_item' into 'master'
...
Optimize ContainerStore::stacks (attempt #2 )
See merge request OpenMW/openmw!1200
2021-09-07 08:40:02 +00:00
elsid
403f0a72f0
Do not copy RefId when need to compare
...
Makes ContainerStore::stacks ~4x times faster when adding 4k different items
in a single frame.
2021-09-06 22:52:09 +02:00
elsid
e910dd7a25
Rename CellRef::getRefIdPtr -> getRefIdRef and return reference
...
Return value can't be nullptr. Pointer complicates the code because has to be
dereferenced.
Also move function definition to hpp to make it easier for compiler to optimize
calls.
2021-09-06 22:52:08 +02:00
elsid
b0f772af40
Define dependency to OSG plugins in one place
...
Each binary depending on components library requires OSG plugins to be linked.
Duplicating dependecies for each binary does not give benefits and brings
problems when new binary is added.
2021-09-06 22:44:52 +02:00
Frederic Chardon
7b26058fa5
moveObject() has side effects that might invalidate iterators from mActors. Instead of iterating over mActors, make a copy of needed data and iterate over the copies.
2021-09-06 12:51:25 +02:00
psi29a
6170971ea3
Merge branch 'bettermoveinstance' into 'master'
...
Set instance movement based on camera zoom
See merge request OpenMW/openmw!1186
2021-09-06 09:48:30 +00:00
elsid
a8c16071dc
Fix -Wreturn-local-addr warning
...
/home/elsid/dev/openmw/apps/opencs/model/world/actoradapter.cpp: In member function ‘const string& CSMWorld::ActorAdapter::ActorData::getPart(ESM::PartReferenceType) const’:
/home/elsid/dev/openmw/apps/opencs/model/world/actoradapter.cpp:142:20: error: returning reference to temporary [-Werror=return-local-addr]
142 | return "";
| ^~
2021-09-04 18:04:45 +02:00
Petr Mikheev
76320aae45
Merge branch 'const_ret_val' into 'master'
...
Don't use `const` for objects returned by value.
See merge request OpenMW/openmw!1183
2021-09-04 12:41:52 +00:00
psi29a
a57b5674e5
Merge branch 'hash_actors' into 'master'
...
Replace std::map with std::unordered_map and use constant Ptr.mRef as a key
See merge request OpenMW/openmw!1129
2021-09-03 15:16:14 +00:00
psi29a
a0201feb97
Merge branch 'lua_tostring' into 'master'
...
Function LuaUtil::toString
See merge request OpenMW/openmw!1187
2021-09-03 13:09:17 +00:00
fredzio
d20730458d
Replace std::map with std::unordered_map for mActors and mObjects.
...
Use Ptr.mRef as a key instead of Ptr: it is constant for the lifetime of
the object.
2021-09-03 13:14:05 +02:00
fredzio
0bce6c09e1
Change projectile behaviour to be like in vanilla wrt. water plane:
...
- enchanted arrow explode upon hit the water plane
- non enchanted arrow disappear (or more accurately, they hit nothingness)
- enchanted arrow shot underwater explode immediately
- non enchanted arrow disappear immediately
Also, solve a bug that occured previously and could theoritically still happens where we use the last tested collision position for instead of the last registered hit:
Use the hit position as saved inside Projectile::hit() instead of the last position saved inside the callback.
If a projectile collides with several objects (bottom of the sea and water surface for instance), the last collision tested won't necessarily be the impact position as we have no control over the order in which the tests are performed.
2021-09-03 10:24:05 +02:00
jvoisin
d4e3575f1d
Don't use const
for objects returned by value.
...
This prevents the usage of std::move semantics,
and makes clang-tidy sad.
2021-09-01 22:23:50 +02:00
unelsson
f876ff2c14
Clear temporary movement data at the end of the drag
2021-09-01 02:04:04 +03:00
unelsson
53d315c862
XYZ-locking, mouse wheel move fix
2021-09-01 02:04:04 +03:00
unelsson
23fe3d74ab
Use floats, not doubles
2021-09-01 02:04:04 +03:00
unelsson
840e7615f5
Store object origins and move difference
2021-09-01 02:04:04 +03:00
unelsson
0d511da615
Test of basic mouse-plane use
2021-09-01 02:04:04 +03:00
fredzio
d1a5bc207b
Iterate over mInactiveCells when unloading cells in TestCells / TestInteriorCells. Otherwise we dereference an invalid iterator after deactiveCell().
2021-08-31 16:53:52 +02:00
elsid
0daf6f5d0b
Merge branch 'comma' into 'master'
...
Don't use comma where there is no need to.
See merge request OpenMW/openmw!1179
2021-08-31 12:33:15 +00:00
Petr Mikheev
33d4d88447
Function LuaUtil::toString
2021-08-31 09:41:58 +02:00
Evil Eye
18f51e1026
Merge branch 'nonull' into 'master'
...
Don't pass a nullptr to a std::string constructor
See merge request OpenMW/openmw!1178
2021-08-30 18:59:06 +00:00
Evil Eye
06e1b17cc1
Merge branch 'unnecessary_copy' into 'master'
...
Dont copy-construct from a const-ref when used only as a const-ref
See merge request OpenMW/openmw!1184
2021-08-29 19:39:51 +00:00
jvoisin
db4fe11a44
Don't pass a nullptr to a std::string constructor
...
This is undefined behaviour.
2021-08-29 20:41:15 +02:00
jvoisin
deb2af6acc
Dont copy-construct from a const-ref when used only as a const-ref
...
This also makes clang-tiny a bit happier
2021-08-29 20:22:34 +02:00
jvoisin
a15cca5763
Use reserve
on vectors for fixed loops
...
This is a bit useless, but has the merit of appeasing clang-tiday
2021-08-29 20:18:49 +02:00
jvoisin
a6b1e38eab
Don't use comma where there is no need to.
2021-08-29 14:12:14 +02:00
cc9cii
0a5571f19e
Disable editing for blocked records in both table and dialogue edit widget.
2021-08-29 15:27:59 +10:00
Evil Eye
b4486992f0
Allow Rieklings and Goblins to attack again
2021-08-28 10:45:00 +02:00
cc9cii
b0d5ca386d
Update original cell column and do not modify the refnum when moving a reference to another cell with 3D editing.
2021-08-28 16:12:40 +10:00
cc9cii
2eb210f31a
Partially undo commit 71be4cdd20
so that moved references retain the original refnum. This is consistent with vanilla CS's behaviour.
2021-08-28 16:12:40 +10:00
cc9cii
b2bd97f283
A different implementation to MR 1051 to fix Issue #6067 .
...
This MR doesn't delete the original record, but instead the original record is updated with the moved record when loading.
Issue #4752 is no longer addressed in this MR.
2021-08-28 14:09:55 +10:00
cc9cii
7264a10c07
Partially revert commit dab1a9e7fb
2021-08-28 09:49:45 +10:00
cc9cii
7227a83e60
Preserve "blocked" record flags when saving with OpenCS. This will help outputs of OpenCS to be used with vanilla Morrowind.
...
Sample use case: users are using the Morrowind Code Patch feature that allows modders to enable this flag to differentiate editor-made potions from player crafted potions for tooltips.
2021-08-28 09:42:54 +10:00
psi29a
66f028c4a1
Merge branch 'correctcommandimplementation' into 'master'
...
Don't do storage in constructors of the commands
See merge request OpenMW/openmw!1126
2021-08-27 07:30:45 +00:00
psi29a
d852b10227
Merge branch 'Map-door-markers-flicker-in-some-cells' into 'master'
...
Do not update doors markers at each frame, only when needed
Closes #6214
See merge request OpenMW/openmw!1168
2021-08-26 15:06:38 +00:00
psi29a
fff35dcb03
Merge branch 'Ignore-empty-pgrd' into 'master'
...
Do not store empty PGRD records. Should resolve Issue #6209 .
See merge request OpenMW/openmw!1121
2021-08-26 14:29:49 +00:00
psi29a
e8057d9fd1
Merge branch 'aipursue_path' into 'master'
...
Make AiPursue path destination to be as close as possible to target (#6211 )
Closes #6211
See merge request OpenMW/openmw!1154
2021-08-26 07:55:12 +00:00
psi29a
b585aad81e
Merge branch 'offset-bullet-debug' into 'master'
...
glPolygonOffset for Bullet debug geometry
See merge request OpenMW/openmw!684
2021-08-25 07:26:21 +00:00
Thunderforge
42ce22f568
Adding saveSettingInt() and loadSettingInt()
...
Convenience methods for saving and loading integer settings. Versions for QSpinBox and QComboBox are included. Right now, only simple settings are used for it; we have some additional settings that include validation that aren't using these new methods.
2021-08-23 18:31:52 -05:00
unelsson
de3497d291
Fix undo-redo crash
2021-08-22 23:42:27 +03:00
unelsson
890ce1eefb
Reverse action order for redo and undo
2021-08-22 23:42:27 +03:00
unelsson
0cfabd6f3b
Move mapToSource back to constructor
2021-08-22 23:42:27 +03:00
unelsson
b2fe591590
Don't do any storing in the constructor
2021-08-22 23:42:27 +03:00
unelsson
45549da0f5
For most commands, set mOld in redo, not in constructor
2021-08-22 23:42:27 +03:00
psi29a
716eebe616
Merge branch 'terrainselectioncrashfix' into 'openmw-47'
...
Fix terrain selection crash
See merge request OpenMW/openmw!1165
(cherry picked from commit ec4e3b04a7
)
b84e41bd
Avoid storing ref, dynamic cast worldspacewidget for safety
d62ddc00
Use QPointer to detect object existence, less verbose debug messages
cb42b528
Remove friend, make getEditMode public to allow editmode testing.
4b148180
Restucture code
08f7c73e
Fix text
2021-08-22 19:22:54 +00:00
psi29a
855f491196
Merge branch 'splintercell' into 'master'
...
Clean up text key extraction
See merge request OpenMW/openmw!1163
2021-08-22 14:51:54 +00:00
Alexei Dobrohotov
0922d0b105
Clean up text key extraction
2021-08-22 05:56:30 +03:00
Petr Mikheev
3771e523f1
More object bindings
2021-08-21 17:18:11 +02:00
Alexei Dobrohotov
31e70f2ecc
Merge branch 'minor_factorisation' into 'master'
...
Minor factorisation in apps/openmw/mwmechanics/actors.cpp
See merge request OpenMW/openmw!1143
2021-08-21 06:22:17 +00:00
cc9cii
28ad139464
Check if deleted, just in case.
2021-08-21 07:20:10 +10:00
psi29a
d09c807a40
Merge branch 'fixbadcast' into 'master'
...
Fix std::bad_cast
Closes #6217
See merge request OpenMW/openmw!1130
2021-08-20 20:36:44 +00:00
unelsson
7801f42005
Don't do mapToSource at executeModify
2021-08-20 22:32:41 +03:00
psi29a
9751717b35
Merge branch 'components_qt' into 'master'
...
Do no link binaries with Qt where it's not used
See merge request OpenMW/openmw!1157
2021-08-20 19:29:42 +00:00
elsid
e9b8933b2f
Do no link binaries with Qt where it's not used
...
Define components_qt static library with all qt dependent components that also
depends on other components. Link only cs, wizard and launcher with qt
dependent components.
2021-08-20 19:02:09 +02:00
psi29a
77e58abf0d
Merge branch 'lua_input' into 'master'
...
Lua package 'openmw.input'
See merge request OpenMW/openmw!1073
2021-08-20 11:44:42 +00:00
elsid
193be0d5d1
Merge branch 'some_small_changes' into 'master'
...
Fix coverity warning and build on some osg
See merge request OpenMW/openmw!1153
2021-08-19 23:40:14 +00:00
cc9cii
bd3ef506cd
Empty Pathgrid record is considered as the modder's intention to delete any existing record.
2021-08-19 19:30:01 +10:00
cc9cii
802a202455
Remove warning log messages as they are more suitable for OpenCS.
2021-08-19 12:45:09 +10:00
cc9cii
8244ba8957
Erase old record instead (i.e. assume an empty Pathgrid record was placed in purpose)
2021-08-19 12:31:49 +10:00
cc9cii
1d925154f2
Do not store (or worse, overwrite) empty PGRD records. Should resolve Issue #6209 .
2021-08-19 12:31:49 +10:00
glassmancody.info
a6c7fcd436
don't pingpong depth function on character preview update
2021-08-18 15:46:25 -07:00
elsid
fea4fb6e69
Make AiPursue path destination to be as close as possible to target
...
Even when target is not reachable actor will try to run there either because
target navmesh polygon is selected within extended area or because partial path
is built to the closest possible polygon.
2021-08-18 23:44:36 +02:00
elsid
9112c65afc
Use pathgrid path when destination is closer to different graph component node
...
Partially revert d863267d5c
to restore 0.46
behaviour for pathgrid based pathfinding.
2021-08-18 19:52:10 +02:00
glassmancody.info
d63eb3325f
fix coverity warning and build on some osg
2021-08-17 17:45:50 -07:00
psi29a
6595c731f7
Merge branch 'fix_rc_poly_mesh_flags_length' into 'master'
...
Fix flags length for rcPolyMesh
See merge request OpenMW/openmw!1134
2021-08-17 09:19:32 +00:00
psi29a
faa3e04494
Merge branch 'const_reff' into 'master'
...
Sprinkle some const-ref
See merge request OpenMW/openmw!1145
2021-08-17 08:20:13 +00:00
cc9cii
b1fb3e2313
Add missing includes.
2021-08-17 13:53:14 +10:00
cc9cii
47a841d3b7
Fix/workaround for Issue #3246
...
OpenMW save file assumes the presence of NPC/Creature data but the vanilla save file provides only the delta changes in most situations. The base data are not available without loading all the relevant dependency content files. Duplicating that code in the ESSImporter is not desirable.
Ideally a flag should be set but that will mean a change in the save file format. For a minor change such as this doing so seems like an overkill. So a temporary workaround is introduced where the gold carried by the NPC/Creature is used as an indicator as the lack of ACDT data.
2021-08-17 12:29:28 +10:00
jvoisin
39cd679ca9
Minor factorisation in apps/openmw/mwmechanics/actors.cpp
2021-08-16 13:13:44 +02:00
Alexei Dobrohotov
6c1ac9ed9f
Merge branch 'init_sky' into 'master'
...
Use an initialization list in WrapAroundOperator's constructor
See merge request OpenMW/openmw!1146
2021-08-16 01:19:28 +00:00
Alexei Dobrohotov
7665ebfa67
Merge branch 'another_fix' into 'master'
...
Fix #6219
Closes #6219
See merge request OpenMW/openmw!1137
2021-08-16 01:15:52 +00:00
Alexei Dobrohotov
873e16ae93
Merge branch 'emp' into 'master'
...
Use an emplace instead of an insert
See merge request OpenMW/openmw!1144
2021-08-16 01:14:36 +00:00
elsid
f966fdb65e
Merge branch 'noweak' into 'master'
...
use shared_ptr inside the physics simulation to simplify the code
See merge request OpenMW/openmw!1141
2021-08-15 21:59:47 +00:00
jvoisin
ff2a51a484
Use an initialization list in WrapAroundOperator's constructor
2021-08-15 19:57:20 +02:00
jvoisin
7a015d24c6
Sprinkle some const-ref
2021-08-15 19:50:28 +02:00
jvoisin
0792bb212a
Use an emplace instead of an insert
2021-08-15 18:57:33 +02:00
glassmancody.info
ed72f3335b
silence compiler warning
2021-08-15 08:02:00 -07:00
fredzio
ec871e6bf7
Use shared_ptr instead of weak_ptr for actors handle inside the
...
simulation
The purpose of weak_ptr is to avoid performing the simulation on deleted
Actor by promoting it to a shared_ptr via a lock() call. This clutter
the code with a lot of branches, whereas the overwhelmingly common case is for the call to succeed.
Since the simulation is decoupled from the engine state, we can use a shared_ptr instead of a weak_ptr.
This allow us to ignore (ie not handle) the rarer case where the actor is delete from the scene. This means that the simulation
will run for one frame more than before for each actor, whereas the rest of the engine
will be ignorant of this.
2021-08-15 16:21:16 +02:00
AnyOldName3
7400050b38
Merge branch 'character_preview_alpha_fix' into 'master'
...
Fix transparent objects being invisible in character doll
See merge request OpenMW/openmw!1140
2021-08-15 00:01:23 +00:00
glassmancody.info
6cc71745ac
ensure character preview is using standard depth
2021-08-14 14:50:33 -07:00
Mads Buvik Sandvei
d40c18234a
Double buffering the water's node position uniform
2021-08-14 17:41:58 +00:00
fredzio
713f612bdb
Partially revert !1046 : the player is added before the scene exists, so we need to check again the grounded state, as it correctly was.
2021-08-13 18:01:16 +02:00
jvoisin
b01ef2629c
Fix two Wreorder clang warnings
2021-08-13 13:59:57 +02:00
Alexei Dobrohotov
839cf36bdd
Merge branch 'hidden_markers' into 'master'
...
Use common implementation to filter hidden markers
See merge request OpenMW/openmw!1132
2021-08-12 22:29:20 +00:00
elsid
54a676f2e3
Add functions to get length of recast type arrays
...
To avoid duplicating same formulas in multiple places.
2021-08-12 22:43:01 +02:00
elsid
05258ed644
Remove redundant TileCachedRecastMeshManager::hasTile function
...
It's used only for tests. getMesh is a valid replacement.
2021-08-12 22:40:06 +02:00
elsid
3caf45807f
Use common implementation to filter hidden markers
2021-08-12 22:35:16 +02:00
Cédric Mocquillon
b0b60b05b8
Do not update doors markers at each frame, only when needed
2021-08-12 22:10:45 +02:00
unelsson
298db2ef76
Initialize and check pointer.
2021-08-12 22:31:37 +03:00
unelsson
f1d05a93bf
Get index and model from proxy
2021-08-12 22:28:16 +03:00
jvoisin
bcdd0f55da
Merge branch 'bc_refnum' into 'master'
...
Always print object refnum
See merge request OpenMW/openmw!1123
2021-08-12 10:18:55 +00:00
elsid
e84a177a91
Always print object refnum
...
Also print content file index even when it's negative. To be able to identify
the object unambiguously.
2021-08-12 02:02:25 +02:00
fredzio
de9ee2f196
Revert "Calls directly MovementSolver::traceDown instead of"
...
This reverts commit c1e50f530b
.
2021-08-11 21:53:04 +02:00
Petr Mikheev
0e6fbbc126
Lua package 'openmw.input'
2021-08-10 19:00:52 +03:00
psi29a
45b45b3560
Merge branch 'fix_op_bzzt_whoopsie' into 'master'
...
resolve issue of OP meshes that cross boundaries
See merge request OpenMW/openmw!1117
2021-08-10 15:50:33 +00:00
Bret Curtis
c99bddc8dc
Revert "Move reference to the right cell according to its geographical position"
...
This reverts commit d0677c3f07
.
2021-08-09 22:11:00 +02:00
Bret Curtis
7dfaef7644
resolve issue of meshes that cross boundaries; should only be calculating the maxBound, not the minBound of y; also fix it in groundcover as it was copied blindly over;
2021-08-09 22:05:12 +02:00
Cédric Mocquillon
bfc9ea9e32
Fix warning on MSVC convertion from double to float
2021-08-09 19:43:35 +02:00
Cédric Mocquillon
b0e30e4bb6
Change setting to clamp the local viewing distance to fix value (instead of coeff)
2021-08-09 19:43:34 +02:00
Cédric Mocquillon
b27de8f188
Disable zooming when setting is off
2021-08-09 19:43:34 +02:00
Alexei Dobrohotov
73e83fd3d8
Merge branch 'dontcrash' into 'master'
...
Fix #6208 (hopefully)
Closes #6208
See merge request OpenMW/openmw!1113
2021-08-09 17:10:11 +00:00
fredzio
8e3984ae5a
Clear mActors when reseting the simulation. Otherwise during next run we can try to read past the end of mActorsFrameData.
2021-08-09 14:46:41 +02:00
jvoisin
586d8684d0
Fix two coverity issues about uninitialised variables
2021-08-09 12:43:30 +02:00
psi29a
cb7a4d20dd
Merge branch 'killmutex' into 'master'
...
Remove mutex from PtrHolder
See merge request OpenMW/openmw!1110
2021-08-08 19:45:16 +00:00
psi29a
3afa9829b3
Merge branch 'tracedown' into 'master'
...
Correct calls to traceDown in addActor
See merge request OpenMW/openmw!1109
2021-08-08 19:41:53 +00:00
fredzio
c1e50f530b
Calls directly MovementSolver::traceDown instead of
...
PhysicsSystem::traceDown before inserting into mActors.
The latter does nothing until the actor is inserted into mActors.
We can't move the call after the insertion either because then
the actor is part of the simulation, and we'd have a race.
2021-08-08 18:26:35 +02:00
AnyOldName3
8d93748f87
Fix rebase issue
2021-08-08 17:25:57 +01:00
AnyOldName3
cf15803e67
Disable triangle detection workaround when Bullet actually uses triangles
2021-08-08 16:53:14 +01:00
AnyOldName3
8b4c2d205d
WIP-ish glPolygonOffset for Bullet debug geometry
2021-08-08 16:53:08 +01:00
fredzio
b4dd9e6b4d
Avoid division by zero in movementsolver when an actor is immobile and
...
in a storm
2021-08-08 17:19:18 +02:00
fredzio
ee09f3095f
At last kill PtrHolder mutex
2021-08-08 15:05:07 +02:00
fredzio
07fa1803f7
Use btCollisionObject* instead of MWWorld::Ptr inside of Projectile
...
collision handling and castRay() to avoid calling getPtr(). It is a step forward
removing the mutex inside of PtrHolder.
Do the same for DeepestNotMeContactTestResultCallback. It is used
only for not-ranged combat for now, but do it anyway for parity with all
other callback. This way, once the PtrHolder mutex is gone one will not
have to worry about wether it is safe to use the callback in a specific
context.
To avoid use-after-free with projectile / projectile collision, defer deletion of projectile.
Since instead of storing a copy of target Ptr we have a pointer to its collision object,
we can't delete projectiles until after we finished iterating over the loops.
2021-08-08 15:05:07 +02:00
fredzio
e88b94d0b0
Move btCollisionObject* into PtrHolder
...
Remove unused function
2021-08-08 15:05:07 +02:00
psi29a
8ad3d3d792
Merge branch 'freezeandcool' into 'master'
...
Don't use FreezeOnCull for any particle system (#4744 )
Closes #4744
See merge request OpenMW/openmw!1103
2021-08-08 12:35:26 +00:00
psi29a
8c81191d09
Merge branch 'schneller' into 'master'
...
Optimize actors physics simulation
See merge request OpenMW/openmw!1048
2021-08-08 12:27:53 +00:00
Alexei Dobrohotov
1fc7cb8191
Don't use FreezeOnCull for any particle system ( #4744 )
2021-08-08 03:36:35 +03:00
fredzio
5fc3b80406
Don't query actor halfextent in a tight loop, use the already existing
...
variable. These repeated calls become costly with > 150 actors.
2021-08-07 13:38:24 +02:00
fredzio
7dd5e715d7
Compute and store actor half extents. This is faster for 2 reasons:
...
- half extents changes when actor scale is modified, which is very rare
- we don't need to protect them by the actor mutex.
2021-08-07 13:38:24 +02:00
fredzio
bcd6541d3e
Reorganize ActorFrameData members:
...
- constify all read-only variables
- order them so that all variables modified as aprt of the simulation
fits in one cache line
2021-08-07 13:38:24 +02:00
fredzio
0c5cf6ec19
Store the btCollisionObject* of the object we're standing on instead of
...
MWWorld::Ptr:
- they are equivalent
- btCollisionObject* is readily available from the simulation, it saves
a call to a mutex
- btCollisionObject* is smaller
2021-08-07 13:38:24 +02:00
fredzio
26d9052b8c
Move the weak_ptr<Actor> outside of ActorFrameData.
2021-08-07 13:38:24 +02:00
fredzio
f68273c3c0
Remove Actor* from ActorFrameData
2021-08-07 13:38:24 +02:00
fredzio
9e911cc8b5
Introduce helper function to write back updated values inside parent Actor class
2021-08-07 13:38:24 +02:00
fredzio
b04c958410
Modify the way swimming is handled:
...
- compute the swimming state instead of storing it, it changes as part of the simulation and was not updated, so it was wrong anyway.
- store the swim level in ActorFrameData, it is constant per Actor so no need to compute it inside the simulation
2021-08-07 13:38:24 +02:00
fredzio
6e51a9a512
Simplify a bit the solver
2021-08-07 13:38:24 +02:00
fredzio
51514e44cc
Handle jump as part of the simulation preparation (inside of
...
PhysicsSystem) instead of inside the simulaiton.
For mechanics, we don't care how the jump is handled, just that it will be.
2021-08-07 13:38:24 +02:00
fredzio
1bfaf353be
Explicitely store all the potential states an Actor can have into the
...
ActActorFrameData structure. It makes it easier to reason about the
simulation (and hopefully simplify it).
Remove atomics from Actor class as a side effect.
Rename mFloatToSurface to mInert to make is explicit what it represent, not what it is used for
Store the Actor rotation (1 Vec2) instead of the whole ESM::Position (2 Vec3)
2021-08-07 13:38:24 +02:00
fredzio
9472728fa4
Do not generate data for immobile actors instead of early out from the solver
2021-08-07 13:38:24 +02:00
Evil Eye
29921bf9fa
Don't stack cast packages
2021-08-07 10:06:56 +02:00
psi29a
b770373491
Merge branch 'OpenCS-enforce-str-length' into 'master'
...
OpenCS - Disallow entry of strings longer than the lengths allowed by the file format (#3066 )
See merge request OpenMW/openmw!1088
2021-08-06 21:08:09 +00:00
glassmancody.info
09e03fde2e
refactor and fix wobbly shores
2021-08-04 17:49:57 -07:00
glassmancody.info
cad0b151cb
enable shaders path and dehardcode depth formats
2021-08-04 17:39:11 -07:00
glassmancody.info
d89e37d689
add framebuffer extension check and fix issues with manual screenshots
2021-08-04 17:39:11 -07:00
glassmancody.info
70fac33940
initial reverse-z depth implementation
2021-08-04 17:39:11 -07:00
Petr Mikheev
a94072243b
Lua command core.quit
2021-08-04 19:14:24 +03:00
cc9cii
8aee84c46e
Disallow entry of strings longer than the lengths allowed by the file format.
...
It is possible to allow longer strings but that will require an extension in the omwaddon format as well as changes to the reader to handle that extension. Such changes should be a separate MR.
(applied the patch in https://gitlab.com/OpenMW/openmw/-/issues/3066 )
2021-08-04 09:39:18 +10:00
psi29a
9fa7521fc5
Merge branch 'OpenCS-no-charconv' into 'master'
...
OpenCS - Avoid the inclusion of charconv header
See merge request OpenMW/openmw!1087
2021-08-03 23:32:40 +00:00
psi29a
9b7e14ec00
Merge branch 'OpenCS-moved-reference' into 'master'
...
OpenCS - Fix moved reference - Issues #3514 and #4752
See merge request OpenMW/openmw!1051
(cherry picked from commit 2bee171c7990522da33c2667f7d079fa35f4ede0)
36c30f7f Fix for Issue #3514 where moving a reference to another cell is not handled properly.
40327681 Update the changelog.
2021-08-03 23:29:05 +00:00
psi29a
e10e9c0005
Merge branch 'navmesh_reduce_lock_wait' into 'master'
...
Reduce waiting duration on locks when updating navmesh object in the main thread (#6193 )
Closes #6193
See merge request OpenMW/openmw!1079
2021-08-03 23:05:39 +00:00
psi29a
16d04cf76c
Merge branch 'fixtexindex' into 'master'
...
Fix texture index search bug
See merge request OpenMW/openmw!1080
2021-08-03 23:00:33 +00:00
cc9cii
bf06898a79
Retain the use of std::string_view in the function signature.
2021-08-04 08:23:22 +10:00
cc9cii
99e691fbe3
Avoid the inclusion of <charconv> header due to Ubuntu Bionic (18.04) which as gcc version less than 8.1
...
Partially reverts commit fd67ebde25
2021-08-04 06:47:14 +10:00
Petr Mikheev
3ce5e9e680
Improve error messages in components/lua/serialization.cpp
2021-08-03 16:42:26 +03:00
Petr Mikheev
0f7f5ce140
Remove Lua command "self:setDirectControl"
2021-08-03 14:36:51 +03:00
elsid
c8987bda2f
Store reference to BulletShapeInstance for btCollisionShape
...
To keep btCollisionShape lifetime.
2021-08-03 12:21:56 +02:00
elsid
4574e5f565
Remove redundant Navigator API functions
2021-08-03 12:21:55 +02:00
psi29a
bd1bf4ec73
Merge branch 'donoteraseme' into 'master'
...
#6192 : Stop crashing in moveActors()
See merge request OpenMW/openmw!1085
2021-08-03 07:53:13 +00:00
fredzio
bc738c5640
Use extract/insert instead of erase/emplace
...
When we call moveObject(), we might trigger a change of cell for the
actor, which in turn triggers updatePtr(). The erase/emplace
construct invalidate references, whereas extract/insert do not.
The reason is was working before !1075 is because we were always
"refreshing" the reference by a call to getActor().
2021-08-03 07:00:42 +02:00
unelsson
09ee2a0a36
fix texture brush index search
2021-08-01 19:42:41 +03:00
psi29a
4b48e62b64
Merge branch 'fixandclean' into 'master'
...
Fix opencs build and remove some clang warnings
See merge request OpenMW/openmw!1078
2021-08-01 12:11:17 +00:00
fredzio
1391194152
Remove unneeded return statement
2021-08-01 13:14:32 +02:00
fredzio
9ba459662d
Remove unneeded std::move
...
[19/199] Building CXX object apps/opencs/CMakeFiles/openmw-cs.dir/model/world/commands.cpp.o
../../../apps/opencs/model/world/commands.cpp:298:12: warning: moving a temporary object prevents copy elision [-Wpessimizing-move]
mOld = std::move(model.getRecord (id).clone());
^
../../../apps/opencs/model/world/commands.cpp:298:12: note: remove std::move call here
mOld = std::move(model.getRecord (id).clone());
^~~~~~~~~~ ~
../../../apps/opencs/model/world/commands.cpp:333:12: warning: moving a temporary object prevents copy elision [-Wpessimizing-move]
mOld = std::move(model.getRecord (id).clone());
^
../../../apps/opencs/model/world/commands.cpp:333:12: note: remove std::move call here
mOld = std::move(model.getRecord (id).clone());
^~~~~~~~~~ ~
2 warnings generated.
2021-08-01 13:14:32 +02:00
fredzio
36e33b0cf2
Add missing override
2021-08-01 13:14:32 +02:00
fredzio
bede1ea1ec
Fix build
2021-08-01 13:14:32 +02:00
psi29a
15d278de55
Merge branch 'opt-out-compose' into 'master'
...
Make it possible to opt out of composing variables
Closes #6186
See merge request OpenMW/openmw!1076
2021-08-01 08:53:52 +00:00
cc9cii
67cad2c515
Fix CSMWorld::InfoCollection::getTopicRange()
returning one too many.
2021-08-01 15:53:00 +10:00
AnyOldName3
04e9b6d242
Abort on duplicate content file
2021-08-01 03:04:12 +01:00
AnyOldName3
4727ae4b3b
Make it possible to opt out of composing variables
2021-08-01 02:47:10 +01:00
psi29a
547bc4a252
Merge branch 'notonlyactors' into 'master'
...
Refactor the physics simulation to make it not actor centric.
See merge request OpenMW/openmw!1075
2021-07-31 23:39:22 +00:00
psi29a
a3a079acc1
Merge branch 'projstats' into 'master'
...
Add projectiles number to the resources stats
See merge request OpenMW/openmw!1074
2021-07-31 23:12:14 +00:00
psi29a
4c5e6beb75
Merge branch 'canyouseeme' into 'master'
...
Solve actor awareness check without async physics
See merge request OpenMW/openmw!1071
2021-07-31 22:18:35 +00:00
fredzio
35928cf4d3
Refactor a bit the physics simulation to make it not actor centric:
...
- inline PhysicsSystem::applyQueuedMovements() into PhysicsSystem::stepSimulation()
- rename PhysicsTaskScheduler::moveActors() to PhysicsTaskScheduler::applyQueuedMovements()
- move the actor movement code from World::doPhysics() to
PhysicsSystem::moveActors() (analogically to the projectile manager)
2021-07-31 23:39:04 +02:00
psi29a
141095b850
Merge branch 'OpenCS-loading-opt' into 'master'
...
OpenCS loading time improvements
See merge request OpenMW/openmw!1044
2021-07-31 21:27:29 +00:00
fredzio
c76387162b
Add projectiles number to the resources stats
2021-07-31 23:08:50 +02:00
psi29a
ca011927f3
Merge branch 'ObjectPagingDisappearingTexture' into 'master'
...
Move reference to the right cell according to its geographical position
See merge request OpenMW/openmw!1065
2021-07-31 10:58:20 +00:00
Evil Eye
5cdf1e7e6b
Merge branch 'vec3_vs_xyz' into 'master'
...
Use Vec3f instead of x,y,z in World API
See merge request OpenMW/openmw!730
2021-07-31 10:36:11 +00:00
fredzio
a7b190ad29
Change rotateObject() to take a osg::Vec3f argument instead of 3 floats
...
for readability.
2021-07-30 23:24:53 +02:00
fredzio
88a5ca440b
Change moveObject() to take a osg::Vec3f argument instead of 3 floats
...
for readability.
2021-07-30 23:24:49 +02:00
fredzio
4e7c128d25
The LOS cache is now unconditionally used without async physics as well
...
with a TTL of 0 frame. It helps performance when several subsystems
request the same LOS in the same frame (combat, headtracking, etc).
Except it doesn't work if the cache is never trimmed.
2021-07-30 22:23:42 +02:00
Cédric Mocquillon
d0677c3f07
Move reference to the right cell according to its geographical position
2021-07-30 18:28:29 +02:00
psi29a
8c36eb56cf
Merge branch 'stereo_friendly_water' into 'master'
...
Stereo friendly water and statesetupdater
See merge request OpenMW/openmw!563
2021-07-30 11:00:49 +00:00
psi29a
c5d49b44ba
Merge branch 'lua_settings' into 'master'
...
Add Lua package 'openmw.settings'
See merge request OpenMW/openmw!1017
2021-07-30 10:47:15 +00:00
Evil Eye
779795734f
Remove calm/rally/demoralize and turn undead from the wrong targets
2021-07-29 18:23:45 +02:00
Evil Eye
a366a85c4e
Merge branch 'noalloc_dance_for_npcanimation' into 'master'
...
Don't do an unnecessarily complex memory allocation dance in npcanimation.cpp
See merge request OpenMW/openmw!1042
2021-07-28 17:25:28 +00:00
Evil Eye
88d207b0cd
Merge branch 'land' into 'master'
...
Correct creature landing sound type (bug #6118 )
Closes #6118
See merge request OpenMW/openmw!1054
2021-07-28 16:18:44 +00:00
psi29a
ea05b958b8
Merge branch 'FixIssueWithTRData' into 'master'
...
Fix issue with Tamriel Data landscapes
See merge request OpenMW/openmw!1064
2021-07-28 10:16:55 +00:00
psi29a
292e6f1a9e
Merge branch 'seducer_ice_queen' into 'master'
...
Prevent a missing weapon animation from partially freezing actors
See merge request OpenMW/openmw!1060
2021-07-28 09:06:13 +00:00
Cédric Mocquillon
c98b0f713d
If same area is defined in multiple plugin the last must wins
2021-07-28 10:29:16 +02:00
elsid
6adf7b10ae
Fix removing heightfield from navigator
...
It's added not as object so it shouldn't be removed as it.
2021-07-27 20:11:22 +02:00
Petr Mikheev
2938aaf05c
Rename API_VERSION
-> API_REVISION
in Lua API.
2021-07-27 20:06:04 +02:00
Petr Mikheev
3e4c0b775d
Add Lua package 'openmw.settings'
2021-07-27 20:06:04 +02:00
Petr Mikheev
68b8a148d7
Initialize Lua packages in LuaManager::init rather than in constructor.
2021-07-27 19:52:17 +02:00
Evil Eye
977f717f8b
Prevent a missing weapon animation from partially freezing actors
2021-07-27 16:33:07 +02:00
Alexei Dobrohotov
536dc6a0c6
Correct creature landing sound type (bug #6118 )
2021-07-27 07:39:21 +03:00
psi29a
5a434aebe0
Merge branch 'SortedStaticLands' into 'master'
...
Replace land static container from vector to flat_set
See merge request OpenMW/openmw!853
2021-07-26 18:29:07 +00:00
Cédric Mocquillon
7772f5111b
std::set version
2021-07-26 18:30:06 +02:00
madsbuvi
41c08b1c3b
Stereo friendly StateSetUpdater
...
(cherry picked from commit 496b3aef88b8fd867dcdd23a6ca43144573b1b2f)
Stereo friendly water
(cherry picked from commit 0e22c55e48a7f965367d3d430c1bef5357b22748)
Option to disable per view mapping.
Include memory header
De-hardcode settings and buffers.
formatting error
Update water.cpp (whitespace)
Update water.cpp (more whitespace)
include render order
c array -> c++ array
2021-07-26 14:01:02 +02:00
psi29a
44ceb9572a
Merge branch 'recast_mesh_heightfield' into 'master'
...
Reduce navmesh cache size by special handling for heightfields
See merge request OpenMW/openmw!1032
2021-07-26 11:49:30 +00:00
glassmancody.info
166e23a6d9
fix CI artifacts, missing header
2021-07-25 20:49:17 -07:00
elsid
9a5ec5fd03
Store heightfields as array of heights instead of triangles
...
To reduce size of RecastMesh and therefore cache size.
2021-07-26 00:22:21 +02:00
elsid
28b2f769c2
Update navmeshtilescache benchmark generators
2021-07-26 00:22:21 +02:00
elsid
fdee9db20c
Consider RecastMeshManager not empty when there is water
2021-07-26 00:22:21 +02:00
elsid
5d6c93566d
Rename DetourNavigator::Water -> Cell
2021-07-26 00:22:21 +02:00
elsid
753767d6d9
Store only water shift
...
Rotation is not used.
2021-07-26 00:22:20 +02:00
elsid
a1549321d7
Move Water struct out of RecastMesh class
2021-07-26 00:22:20 +02:00
elsid
d60edb36aa
Make RecastMesh independent from recast scale factor
...
To avoid scaling until it's required by delaying coordinates conversion until
navmesh generation.
2021-07-26 00:22:20 +02:00
elsid
af7059373c
Make RecastMesh independent from the order of RecastMeshBuilder calls
...
To make sure RecastMesh objects are equal if built with the same data but in
different order. Will be used later when there will be more than one place
building RecasMesh objects.
2021-07-26 00:22:20 +02:00
elsid
100cba6260
Use navigator field in Scene
2021-07-26 00:22:03 +02:00
psi29a
6949dd89c2
Merge branch 'gui_shaders' into 'master'
...
Add shader path for mygui (#6162 )
See merge request OpenMW/openmw!1019
2021-07-25 21:37:39 +00:00
psi29a
b92c6985cd
Merge branch 'auto_in_most_apps' into 'master'
...
Using auto keyword in most apps
See merge request OpenMW/openmw!885
2021-07-25 21:23:26 +00:00
psi29a
7d7427015e
Merge branch 'removing_unused_launcher_imports' into 'master'
...
Removing unused imports in the Launcher
See merge request OpenMW/openmw!884
2021-07-25 21:18:25 +00:00
Petr Mikheev
200ccfab69
Merge branch 'Allow-Zoom-levels-on-the-World-Map' into 'master'
...
Allow Zoom levels on the World Map
See merge request OpenMW/openmw!275
2021-07-25 20:19:11 +00:00
fredzio
7145ef4ce0
Update AABB also in sync cases
2021-07-25 18:00:48 +02:00
Petr Mikheev
e371831086
Merge branch 'esmstore_infix' into 'master'
...
Use prefix increment for iterators in esmstore.cpp
See merge request OpenMW/openmw!1041
2021-07-25 13:28:18 +00:00
jvoisin
ce8c30bf07
Minor code simplification in npcanimation.cpp
2021-07-25 14:20:37 +02:00
Cédric Mocquillon
1051745f29
[Launcher] Add new setting 'allow zooming' to advanced tab in the launcher
2021-07-25 14:17:10 +02:00
CedricMocquillon
9fee9dbc9c
[Global map] Regroup markers when the zoom out
2021-07-25 14:17:10 +02:00
CedricMocquillon
18f5853279
[Global <-> Local] Auto switch between local and global map when zoom in/out
2021-07-25 14:17:09 +02:00
CedricMocquillon
8c87defddf
[Local map] Use the distance view in the local map
2021-07-25 14:17:08 +02:00
CedricMocquillon
ed04ebe9ff
[Local map] Allow zoom on local map
2021-07-25 14:17:08 +02:00
CedricMocquillon
9fadbd5b7a
[Global map] Allow zoom on global map
2021-07-25 14:17:07 +02:00
CedricMocquillon
99cd4b6742
[Refactoring] Several refactorings:
...
[Refactoring] Add marker size method instead of using magic constant
[Refactoring] Simplify worldPosToImageSpace and cellTopLeftCornerToImageSpace usage
[Refactoring] Add a missing 'f' to specify the float type
[Refactoring] Make cellTopLeftCornerToImageSpace more homogenous with worldPosToImageSpace
[Refactoring] Extract createmakrercoords method
[Refactoring] Use worldPosToImageSpace instead of cellTopLeftCornerToImageSpace
Remove cellTopLeftCornerToImageSpace as it is not used anymore
Remove getCellSize as it is not used anymore
[Refactoring] Extract new method createMarker
[Refactoring] Extract new method getMarkerCoordinates
[Refactoring] Extract new method getPosition
[Refactoring] Extract new method centerView
[Refactoring] Extract new method createDoorMarker
[Refactoring] Simplify for loop
[Refactoring] Make the test before the loop
2021-07-25 14:17:06 +02:00
cc9cii
33dcd7585a
OpenCS - Jump To Modified
2021-07-24 20:00:25 +00:00
psi29a
2eea590762
Merge branch 'spawn_fix' into 'master'
...
Fix #6173
Closes #6173
See merge request OpenMW/openmw!1046
2021-07-24 12:04:20 +00:00
cc9cii
3e466699c8
A better way to plug a potential memory leak in the event of an exception during push_back().
2021-07-24 21:23:03 +10:00
cc9cii
fd67ebde25
Changes based on review comments, including:
...
* replace murmurhash with std::unordered_map
* plug potential leak from unique_ptr release
* replacing some sections with cleaner code
2021-07-24 09:17:48 +10:00
fredzio
f348b70733
Set mCanWaterWalk and mOnGround when adding Actor to the scene.
...
mCanWaterWalk was set to false and updated during next frame's simulation
mOnGround is set to true but then was updated as part of the scene
loading logic.
2021-07-23 18:04:58 +02:00
cc9cii
ee3361a118
Fix table being sorted twice (at least it appeared that way according to the sample profiler)
...
- Quoting Qt-4.8: "Note: . Setting the property to true with setSortingEnabled() immediately triggers a call to sortByColumn() with the current sort section and order."
(copied the changes from commit SHA-1: 77394fce99
)
2021-07-23 23:18:11 +10:00
cc9cii
725d689e8a
Call push_back() if inserting to the end of the vector. It seems MSVC may be generating different code compared to insert().
...
(copied the changes from commit SHA-1: 257126ed69
)
2021-07-23 23:17:16 +10:00
cc9cii
44a333b6db
Don't attempt to open files yet to be created.
2021-07-23 21:25:35 +10:00
Petr Mikheev
ec79f26320
Merge branch 'minor' into 'master'
...
Minor code cleanup
See merge request OpenMW/openmw!1038
2021-07-23 11:20:37 +00:00
cc9cii
5c504e4d22
Convert the CellRef record index lookup maps to use integer keys rather than strings.
...
- Morrowind load over 300,000 references, so even small inefficiencies add up to longer loading times.
- std::map is used, but should try others, std::unordered_map or even std::vector
(copied the changes from commit SHA-1: 86945d1912
)
2021-07-23 19:07:56 +10:00
cc9cii
10c6304a1f
Fix typo from commit cfdbd0d471
.
2021-07-23 18:12:09 +10:00
cc9cii
fc2f68a465
Change the loader's top progress bar to show total number of records processed rather than the number of files.
...
(copied the changes from commit SHA-1: ff072441fd
)
2021-07-23 17:34:27 +10:00
cc9cii
5fffcab94f
Performance improvements for loading Info records.
...
- The order of info records with the same topic are maintained in Collection::mRecords
- The index lookup data structure are not ordered. The topic string is hashed. The infos for the topic are simply placed in a vector.
- The index values for appending or inserting a record takes prev/next values (if exist)
- FIXME: prev/next values are not adjusted for adding or removing records
- FIXME: undo after reordering does not reset the modified flag
(copied the changes from commit SHA-1: 06f9922822
)
2021-07-23 16:05:58 +10:00
cc9cii
66bda84240
Convert RefNum index map to use find().
...
(copied the changes from commits 68e16b6cee
and 0de223c637
)
NOTE: it is unclear how this change affects commit 61a4a0807b
2021-07-23 15:30:33 +10:00
cc9cii
be45092e55
Use std::unique_ptr to store records in collections, RefidCollection and RefIdData.
...
(copied the changes from commit 23e7e3c165
)
2021-07-23 14:21:21 +10:00
glassmancody.info
e8c6f31e0c
add shader path for mygui ( #6162 )
2021-07-22 15:55:30 -07:00
jvoisin
73c20be29a
Use prefix increment for iterators in esmstore.cpp
...
See https://pvs-studio.com/en/docs/warnings/v803/
for the rationale.
2021-07-22 22:03:59 +02:00
jvoisin
74fab99b89
Use a const-ref for an osg::Quat
...
Since an osg::Quat contains at least 4 floats,
it should be worth it to use a const-ref instead
of passing it by value.
2021-07-22 21:33:18 +02:00
jvoisin
f86ddef4db
Minor code cleanup
2021-07-22 15:15:41 +02:00
psi29a
469cc44ef7
Merge branch 'tweaks' into 'master'
...
Change settings for async physics
See merge request OpenMW/openmw!778
2021-07-22 07:18:41 +00:00
jvoisin
5e3f000b66
Add a std::noboolalpha to a std::boolalpha
2021-07-21 14:40:54 +02:00
Nuri
36657698fb
Added checks for paralysis, knocked down, and death when picking up items from inventory. Fixes #6165
2021-07-21 07:46:02 +00:00
psi29a
cc642b5335
Merge branch 'slimfast' into 'master'
...
Reduce size of physics objects by 1/3
See merge request OpenMW/openmw!1024
2021-07-20 19:03:14 +00:00
Alexei Dobrohotov
e5f96ab4ae
Merge branch 'lol_so_random' into 'master'
...
Set the ptr's custom data before filling the store so leveled lists have access to the level
See merge request OpenMW/openmw!1028
2021-07-18 14:02:06 +00:00
Evil Eye
b95cf4fd00
Set the ptr's custom data before filling the store so leveled lists have access to the level
2021-07-18 15:04:25 +02:00
elsid
f92843e3d2
Fix UB: reference binding to misaligned address in Lua tests
...
/home/elsid/dev/openmw/apps/openmw_test_suite/lua/test_serialization.cpp:166:34: runtime error: reference binding to misaligned address 0x562ea892076c for type 'const struct TestStruct1', which requires 8 byte alignment
0x562ea892076c: note: pointer points here
00 74 73 31 00 00 00 00 00 00 f8 3f 00 00 00 00 00 00 04 40 21 79 4b 08 00 00 00 74 65 73 74 5f
^
#0 0x562ea6462b8e in deserialize /home/elsid/dev/openmw/apps/openmw_test_suite/lua/test_serialization.cpp:166
#1 0x562ea68b7402 in deserializeImpl /home/elsid/dev/openmw/components/lua/serialization.cpp:172
#2 0x562ea68b7bf6 in deserializeImpl /home/elsid/dev/openmw/components/lua/serialization.cpp:204
#3 0x562ea68b86ea in LuaUtil::deserialize(sol::state&, std::basic_string_view<char, std::char_traits<char> >, LuaUtil::UserdataSerializer const*) /home/elsid/dev/openmw/components/lua/serialization.cpp:251
#4 0x562ea6464d96 in TestBody /home/elsid/dev/openmw/apps/openmw_test_suite/lua/test_serialization.cpp:197
#5 0x562ea6d9dac6 in void testing::internal::HandleSehExceptionsInMethodIfSupported<testing::Test, void>(testing::Test*, void (testing::Test::*)(), char const*) /home/elsid/dev/googletest/googletest/src/gtest.cc:2607
#6 0x562ea6d9dac6 in void testing::internal::HandleExceptionsInMethodIfSupported<testing::Test, void>(testing::Test*, void (testing::Test::*)(), char const*) /home/elsid/dev/googletest/googletest/src/gtest.cc:2643
#7 0x562ea6d92e25 in testing::Test::Run() /home/elsid/dev/googletest/googletest/src/gtest.cc:2682
#8 0x562ea6d92e25 in testing::Test::Run() /home/elsid/dev/googletest/googletest/src/gtest.cc:2672
#9 0x562ea6d93024 in testing::TestInfo::Run() /home/elsid/dev/googletest/googletest/src/gtest.cc:2861
#10 0x562ea6d93728 in testing::TestInfo::Run() /home/elsid/dev/googletest/googletest/src/gtest.cc:2834
#11 0x562ea6d93728 in testing::TestSuite::Run() /home/elsid/dev/googletest/googletest/src/gtest.cc:3015
#12 0x562ea6d94142 in testing::TestSuite::Run() /home/elsid/dev/googletest/googletest/src/gtest.cc:2994
#13 0x562ea6d94142 in testing::internal::UnitTestImpl::RunAllTests() /home/elsid/dev/googletest/googletest/src/gtest.cc:5855
#14 0x562ea6d9e096 in bool testing::internal::HandleSehExceptionsInMethodIfSupported<testing::internal::UnitTestImpl, bool>(testing::internal::UnitTestImpl*, bool (testing::internal::UnitTestImpl::*)(), char const*) /home/elsid/dev/googletest/googletest/src/gtest.cc:2607
#15 0x562ea6d9e096 in bool testing::internal::HandleExceptionsInMethodIfSupported<testing::internal::UnitTestImpl, bool>(testing::internal::UnitTestImpl*, bool (testing::internal::UnitTestImpl::*)(), char const*) /home/elsid/dev/googletest/googletest/src/gtest.cc:2643
#16 0x562ea6d93140 in testing::UnitTest::Run() /home/elsid/dev/googletest/googletest/src/gtest.cc:5438
#17 0x562ea5d3fdc6 in RUN_ALL_TESTS() /home/elsid/dev/googletest/build/gcc/release/install/include/gtest/gtest.h:2490
#18 0x562ea5d3fc6f in main /home/elsid/dev/openmw/apps/openmw_test_suite/openmw_test_suite.cpp:11
#19 0x7fe3938d0b24 in __libc_start_main (/usr/lib/libc.so.6+0x27b24)
#20 0x562ea5d3fb7d in _start (/home/elsid/dev/openmw/build/gcc/ubsan/openmw_test_suite+0x173eb7d)
/home/elsid/dev/openmw/apps/openmw_test_suite/lua/test_serialization.cpp:176:34: runtime error: reference binding to misaligned address 0x562ea892078f for type 'const struct TestStruct2', which requires 4 byte alignment
0x562ea892078f: note: pointer points here
75 63 74 32 04 00 00 00 03 00 00 00 04 00 6e 64 69 74 69 6f 6e 73 00 73 68 61 70 65 00 51 00 00
^
#0 0x562ea6462df9 in deserialize /home/elsid/dev/openmw/apps/openmw_test_suite/lua/test_serialization.cpp:176
#1 0x562ea68b7402 in deserializeImpl /home/elsid/dev/openmw/components/lua/serialization.cpp:172
#2 0x562ea68b7bf6 in deserializeImpl /home/elsid/dev/openmw/components/lua/serialization.cpp:204
#3 0x562ea68b86ea in LuaUtil::deserialize(sol::state&, std::basic_string_view<char, std::char_traits<char> >, LuaUtil::UserdataSerializer const*) /home/elsid/dev/openmw/components/lua/serialization.cpp:251
#4 0x562ea6464d96 in TestBody /home/elsid/dev/openmw/apps/openmw_test_suite/lua/test_serialization.cpp:197
#5 0x562ea6d9dac6 in void testing::internal::HandleSehExceptionsInMethodIfSupported<testing::Test, void>(testing::Test*, void (testing::Test::*)(), char const*) /home/elsid/dev/googletest/googletest/src/gtest.cc:2607
#6 0x562ea6d9dac6 in void testing::internal::HandleExceptionsInMethodIfSupported<testing::Test, void>(testing::Test*, void (testing::Test::*)(), char const*) /home/elsid/dev/googletest/googletest/src/gtest.cc:2643
#7 0x562ea6d92e25 in testing::Test::Run() /home/elsid/dev/googletest/googletest/src/gtest.cc:2682
#8 0x562ea6d92e25 in testing::Test::Run() /home/elsid/dev/googletest/googletest/src/gtest.cc:2672
#9 0x562ea6d93024 in testing::TestInfo::Run() /home/elsid/dev/googletest/googletest/src/gtest.cc:2861
#10 0x562ea6d93728 in testing::TestInfo::Run() /home/elsid/dev/googletest/googletest/src/gtest.cc:2834
#11 0x562ea6d93728 in testing::TestSuite::Run() /home/elsid/dev/googletest/googletest/src/gtest.cc:3015
#12 0x562ea6d94142 in testing::TestSuite::Run() /home/elsid/dev/googletest/googletest/src/gtest.cc:2994
#13 0x562ea6d94142 in testing::internal::UnitTestImpl::RunAllTests() /home/elsid/dev/googletest/googletest/src/gtest.cc:5855
#14 0x562ea6d9e096 in bool testing::internal::HandleSehExceptionsInMethodIfSupported<testing::internal::UnitTestImpl, bool>(testing::internal::UnitTestImpl*, bool (testing::internal::UnitTestImpl::*)(), char const*) /home/elsid/dev/googletest/googletest/src/gtest.cc:2607
#15 0x562ea6d9e096 in bool testing::internal::HandleExceptionsInMethodIfSupported<testing::internal::UnitTestImpl, bool>(testing::internal::UnitTestImpl*, bool (testing::internal::UnitTestImpl::*)(), char const*) /home/elsid/dev/googletest/googletest/src/gtest.cc:2643
#16 0x562ea6d93140 in testing::UnitTest::Run() /home/elsid/dev/googletest/googletest/src/gtest.cc:5438
#17 0x562ea5d3fdc6 in RUN_ALL_TESTS() /home/elsid/dev/googletest/build/gcc/release/install/include/gtest/gtest.h:2490
#18 0x562ea5d3fc6f in main /home/elsid/dev/openmw/apps/openmw_test_suite/openmw_test_suite.cpp:11
#19 0x7fe3938d0b24 in __libc_start_main (/usr/lib/libc.so.6+0x27b24)
#20 0x562ea5d3fb7d in _start (/home/elsid/dev/openmw/build/gcc/ubsan/openmw_test_suite+0x173eb7d)
2021-07-17 17:41:41 +02:00
fredzio
44f822da56
Do not store a btTransform into Projectile class: reduce its size by 112 bytes
2021-07-17 13:11:41 +02:00
fredzio
f02d01ef0c
Do not store btTransform into Object class: reduce its size by 104 bytes
2021-07-17 13:11:41 +02:00
fredzio
62ef708910
Do not store a btTransform into Actor class: reduce its size by 128 bytes
2021-07-17 13:11:39 +02:00
psi29a
42e50e487a
Merge branch 'cleaning' into 'master'
...
Improve save cleaning
See merge request OpenMW/openmw!1015
2021-07-16 08:53:06 +00:00
psi29a
22068eed6b
Merge branch 'navmesh_cache_without_off_mesh' into 'master'
...
Do not use off mesh connections as a part of navmesh cache key
See merge request OpenMW/openmw!1016
2021-07-16 08:40:56 +00:00
psi29a
6d08a1d731
Merge branch 'skip_async' into 'master'
...
Don't put player in the air after going out of tcl
See merge request OpenMW/openmw!1009
2021-07-16 07:50:26 +00:00
Evil Eye
087e933326
Close windows using Ptrs that are about to be deleted
2021-07-15 22:31:26 +02:00
elsid
beeb882ea8
Do not use off mesh connections as a part of navmesh cache key
...
To reduce cache size and make it more flexible.
Adding off mesh connections to the navmesh is the last step of navmesh
generation and it's very fast comparing to other steps (microseconds vs
milliseconds). Having less cache size makes get and set operations almost 2x
times faster that also have an order of microseconds. So in total there is
no performance impact.
2021-07-14 12:19:17 +02:00
elsid
6128fcfc82
Use empty off mesh connections in benchmark
...
To get proper comparison with the next change removing it from the cache key.
2021-07-14 00:01:46 +02:00
Evil Eye
1e1ebb049e
Workaround clang and actually erase from the vector
2021-07-13 21:18:24 +02:00
Evil Eye
86c50ece92
Improve save cleaning
2021-07-12 20:51:13 +02:00
elsid
5c9af1742a
Dump moved cell refs in esmtool
2021-07-12 18:56:45 +02:00
elsid
cfdbd0d471
Indicate moved cell refs explicitly
...
This is less error prone approach than use of MovedCellRef fields.
Also make separate functions for skipping and reading moved cell refs to avoid
passing special flags logic and null pointers for unused arguments.
2021-07-12 18:56:42 +02:00
elsid
f90c4ae22f
Add yaml-like separator between cell refs
...
To be able to separate records visually.
2021-07-12 18:48:49 +02:00
psi29a
cd9fb2adad
Merge branch 'dial_me_maybe' into 'master'
...
Change disposition to work like vanilla
Closes #5100 and #5842
See merge request OpenMW/openmw!599
2021-07-12 14:22:26 +00:00
psi29a
6475082095
Merge branch 'lifetime' into 'master'
...
Maybe fix #6071
Closes #6071
See merge request OpenMW/openmw!1010
2021-07-12 14:11:14 +00:00
psi29a
223216733d
Merge branch 'coverity_fix' into 'master'
...
Fix some coverity issues
See merge request OpenMW/openmw!1013
2021-07-12 14:06:44 +00:00
Petr Mikheev
8ff8ec4abd
Fix coverity issues
2021-07-12 12:51:25 +02:00
elsid
153cd9a20c
Avoid redundant search for existing element
2021-07-12 11:41:21 +02:00
elsid
eece47f70e
Avoid copying osg::ref_ptr when adding or removing item from work queue
...
Copy constructor does refcounting, and move constructor doesn't.
2021-07-12 11:41:21 +02:00
elsid
b8fcd6d3ba
Manage work item lifetime on the client side
...
Instead of explicit work queue stop before any possibly used engine manager
is destructed. Based on an assumption that any engine manager can be destructed
independently from the work queue destruction. This model is already used in
CellPreloader that conflicts with explicit work queue stop.
After the work queue is requested to be stopped, any client waiting for a not
started work item to be done will wait forever because the work item is dropped
from the queue. Therefore either clients should not wait for own work items to
be completed in destructor or the work queue should not drop items before
clients are destructed. Other approaches are possible but are not considered
due to increasing complexity.
CellPreloader already tries to wait for all created work items to be done so
keep it that way and extend the model to AsyncScreenCaptureOperation and Scene.
Additionally abort all scheduled work items when owner is destructed. This
prevents a long exit when multiple screenshots are scheduled right before
exiting the game.
2021-07-12 11:41:14 +02:00
glassmancody.info
389b830046
fix black objects with OP batch debug due to unitialized uniform
2021-07-11 23:03:55 -07:00
fredzio
1650dabed8
Assign the return value of weak_ptr::lock() to a variable, so that the
...
shared object lifetime is properly extended. Otherwise there is a
possibility that the Actor gets destroyed during call to unstuck().
2021-07-11 18:01:20 +02:00
fredzio
643a64cb2f
Change some settings for async physics:
...
- default to 1 thread
- default to always use defered aabb update, remove option
- always keep a cache of LOS request for at least the current frame.
This decreases number of raycast, especially when a lot of actors are
involved and "NPCs avoid collisions" is on
2021-07-11 17:07:39 +02:00
fredzio
6ad2cf8e4f
Skip simulation result after calling Actor::updatePosition(). Otherwise
...
when going out of tcl the player would go back to previous position for
one frame.
2021-07-11 16:42:45 +02:00
elsid
73639a93b6
Avoid CTAD to fix macOS build
...
../../../apps/openmw/engine.cpp:706:23: error: no viable constructor or deduction guide for deduction of template arguments of 'function'
? std::function(ScheduleNonDialogMessageBox {})
^
/Applications/Xcode.app/Contents/Developer/Toolchains/XcodeDefault.xctoolchain/usr/bin/../include/c++/v1/functional:1430:48: note: candidate template ignored: could not match 'function<_Fp>' against '(anonymous namespace)::ScheduleNonDialogMessageBox'
template<class _Fp> class _LIBCPP_TEMPLATE_VIS function; // undefined
^
/Applications/Xcode.app/Contents/Developer/Toolchains/XcodeDefault.xctoolchain/usr/bin/../include/c++/v1/functional:1430:48: note: candidate function template not viable: requires 0 arguments, but 1 was provided
../../../apps/openmw/engine.cpp:707:23: error: no viable constructor or deduction guide for deduction of template arguments of 'function'
: std::function(IgnoreString {})
^
/Applications/Xcode.app/Contents/Developer/Toolchains/XcodeDefault.xctoolchain/usr/bin/../include/c++/v1/functional:1430:48: note: candidate template ignored: could not match 'function<_Fp>' against '(anonymous namespace)::IgnoreString'
template<class _Fp> class _LIBCPP_TEMPLATE_VIS function; // undefined
^
2021-07-11 13:26:21 +02:00
Cédric Mocquillon
269cd31059
Use same world coordinates to compute distances
2021-07-10 19:04:46 +02:00
Petr Mikheev
c2280ada1d
OpenMW Lua, API_VERSION=0
2021-07-09 20:48:54 +02:00
Petr Mikheev
85c441ec9a
Refactoring and minor fixes related to active/inactive object state
2021-07-09 20:48:54 +02:00
Petr Mikheev
43b7e6964a
Add function World::isCellActive
2021-07-09 20:48:54 +02:00
Petr Mikheev
702eb19271
Fixes and refactoring
2021-07-09 20:48:54 +02:00
Petr Mikheev
cc7dbabd19
Change argument of onKeyPress
2021-07-09 20:48:54 +02:00
Petr Mikheev
b1a6441c23
Add LocalScripts::LocalEngineEvent. Add OnConsume
engine handler.
2021-07-09 20:48:54 +02:00
Petr Mikheev
1268597676
Make loaded but inactive objects available in Lua scripts.
2021-07-09 20:48:54 +02:00
Petr Mikheev
403d31313c
New setting "lua num threads". Thread syncronization is changed from std: 🧵 :yield to std::condition_variable.
2021-07-09 20:48:54 +02:00
Petr Mikheev
a8f76260bc
A possibility to view actor controls from lua scripts without disabling AI.
2021-07-09 20:48:54 +02:00
Petr Mikheev
c463f52390
Add Cell Lua bindings
2021-07-09 20:48:54 +02:00
Petr Mikheev
de349962d1
Engine handlers onActive/onInactive and a function self:isActive()
2021-07-09 20:32:53 +02:00
Petr Mikheev
d5cda61855
Console command "reload lua"
2021-07-09 20:24:56 +02:00
Petr Mikheev
9d09ecf8ca
Add mwlua/actions
2021-07-09 20:24:56 +02:00
Petr Mikheev
f5722f9ba0
Inventory bindings
2021-07-09 20:24:56 +02:00
Petr Mikheev
bdccf161c4
Add lua package 'openmw.query'
2021-07-09 20:24:56 +02:00
Petr Mikheev
32218f6dd5
More Lua bindings
2021-07-09 20:24:56 +02:00
Petr Mikheev
87b5afb9bf
Control active Lua scripts from openmw.cfg
2021-07-09 20:24:56 +02:00
Petr Mikheev
8c6d303730
Saving/loading for Lua scripts (saves format is changed)
2021-07-09 20:24:56 +02:00
Petr Mikheev
914e604e06
Interactions between LuaManager and other parts of OpenMW
2021-07-09 20:24:56 +02:00
Petr Mikheev
f2d0a702e9
Add Lua timers
2021-07-09 20:24:51 +02:00
Petr Mikheev
3d7e306064
Add apps/openmw/mwlua
2021-07-09 20:03:27 +02:00
Petr Mikheev
7df500c385
Put RefData move constructor to cpp file
2021-07-09 20:03:27 +02:00
Petr Mikheev
6db2450c90
Initial support of generated RefNums with negative mContentFile.
2021-07-09 20:03:27 +02:00
Petr Mikheev
b53667d555
Queries. Data structures and lua bindings.
2021-07-09 20:03:27 +02:00
Petr Mikheev
479856f812
Add components/lua/scriptscontainer and components/esm/luascripts
2021-07-09 20:03:27 +02:00
Petr Mikheev
8dbaf6022c
Add components/lua/serilalization
2021-07-09 20:03:27 +02:00
Petr Mikheev
4b068b27ca
Add components/lua/luastate and components/lua/utilpackage
2021-07-09 20:03:27 +02:00
Petr Mikheev
9e168fd9cc
Add Lua/LuaJit and sol3 to openmw
2021-07-09 19:27:00 +02:00
psi29a
c94339f248
Merge branch 'OpenMW_Bug6067_take3' into 'master'
...
Make Object Paging to ignore moved references. (Issue #6139 )
See merge request OpenMW/openmw!1001
2021-07-09 16:05:53 +00:00
psi29a
d8bed73ada
Merge branch 'local_crache' into 'master'
...
Cache failed compilation when getting locals
Closes #6123
See merge request OpenMW/openmw!988
2021-07-08 22:16:15 +00:00
psi29a
c774a68439
Merge branch 'system_benchmark' into 'master'
...
Support system Google Benchmark
See merge request OpenMW/openmw!1000
2021-07-08 22:15:26 +00:00
elsid
d8cd5b361a
Hide message boxes when HUD is hidden
2021-07-08 21:14:01 +02:00
elsid
4259f7f230
Add setting to enable/disabled notification for saved screenshots
2021-07-08 21:14:01 +02:00
elsid
5103120eef
Notify about saved screenshot
...
Show message about saved screenshot via schedule message box. Since screenshot
saving happens not in the main thread calling messageBox directly is unsafe.
WindowManager::scheduleMessageBox delays message box showing until next update
in the main thread.
2021-07-08 21:14:01 +02:00
elsid
f7a6be053d
Stop engine work queue before destructing environment
...
To avoid access to null and dangling pointers from active work items on
quitting.
2021-07-08 21:14:01 +02:00
elsid
f8e02000ec
Write screenshots to file asynchronously
2021-07-08 21:13:57 +02:00
elsid
33aa4d0822
Move WriteScreenshotToFileOperation to components
2021-07-08 20:27:19 +02:00
elsid
8d2d24ce65
Store screen capture operation as osg::ref_ptr
2021-07-08 20:27:19 +02:00
psi29a
6cc5dc5bf0
Merge branch 'halp' into 'master'
...
Implement the help command
Closes #2780
See merge request OpenMW/openmw!1002
2021-07-07 20:49:41 +00:00
Evil Eye
eced6f2126
Implement the help command
2021-07-07 18:48:25 +02:00
psi29a
103f5943cf
Merge branch 'endl' into 'master'
...
Remplace a ton of std::endl with \n
See merge request OpenMW/openmw!978
2021-07-07 10:42:52 +00:00
cc9cii
16e1398819
Quick solution to add logic to getNextRef() calls so that moved references are ignored. Currently it is assumed that MVRF records have been all read before the ESM reader context was saved, which is false assumption. Should resolve Issue #6139 .
2021-07-07 08:18:38 +10:00
elsid
d85cbe4069
Support system Google Benchmark
2021-07-06 19:33:26 +02:00
Evil Eye
1196e0cfe6
Change disposition to work like vanilla
2021-07-06 17:03:56 +02:00
psi29a
126cf40848
Merge branch 'filter' into 'master'
...
Add a default filter to CS tables
See merge request OpenMW/openmw!958
2021-07-06 14:16:45 +00:00
psi29a
3c0a0ba9e1
Merge branch 'master' into 'touch_my_crank'
...
# Conflicts:
# CHANGELOG.md
2021-07-06 09:18:12 +00:00
psi29a
c372c239a6
Merge branch 'master' into 'OpenCS_Bug6017'
...
# Conflicts:
# CHANGELOG.md
2021-07-06 07:52:49 +00:00
psi29a
cda0c7ed44
Merge branch 'ghd' into 'master'
...
Great House Dagoth
See merge request OpenMW/openmw!638
2021-07-06 07:22:29 +00:00
cc9cii
ae4ddd810f
More dead code removal.
2021-07-06 14:45:45 +10:00
cc9cii
ec457a09c3
Fix Npc edit widget index out of bounds due to a removed column.
2021-07-06 13:45:58 +10:00
cc9cii
f68c81e631
Merge branch 'master' into 'OpenCS_Bug6017'
2021-07-06 03:10:46 +00:00
cc9cii
4b3de46bfa
Use enums in place of magic numbers. Ensure Creature and NPC cell references are always saved as persistent.
2021-07-06 12:37:02 +10:00
cc9cii
1f5b20ef7d
test fix for missing refs
2021-07-06 11:43:30 +10:00
Evil Eye
796617fa0c
Allow activators to be activated using telekinesis
2021-07-05 22:00:43 +02:00
Evil Eye
18f297a4e0
Allow a missing implicit argument for GetDistance
2021-07-05 18:34:09 +02:00
Evil Eye
0a15d7740a
Delay physics for objects created by scripts
2021-07-05 18:34:06 +02:00
jvoisin
3925c0fecf
Remplace a ton of std::endl with \n
...
endl is calling flush, which is really nuking performances,
and I care about esmtool's performances because I'm
using it for fuzzing.
2021-07-05 18:27:43 +02:00
psi29a
7cc4e5afa1
Merge branch 'more_magical_stamina' into 'master'
...
Make fatigue and magicka recalculation behave the same way
Closes #6107
See merge request OpenMW/openmw!968
2021-07-05 13:24:09 +00:00
elsid
7498a86abe
Remove redundant semicolons
2021-07-05 13:11:54 +02:00
psi29a
3588bfcb17
Merge branch 'OpenMW_Bug6067' into 'master'
...
Support moved references records in any order. (Issue #6067 )
See merge request OpenMW/openmw!982
2021-07-05 08:20:37 +00:00
psi29a
6a4eeeb39b
Merge branch 'fix_door_freeze' into 'master'
...
Fix slow AiPackage::getTarget calls (#6136 )
Closes #6136
See merge request OpenMW/openmw!990
2021-07-05 08:17:46 +00:00
psi29a
9123db3a59
Merge branch 'fix_navmesh_update' into 'master'
...
Fix navmesh update on opening/closing door
See merge request OpenMW/openmw!995
2021-07-05 07:30:32 +00:00
elsid
c7c0d11cab
Trigger navmesh update when any navigator object has been updated
...
Set World::mShouldUpdateNavigator to true when this happens. Previously
assignment to true was missing for object rotation and moving.
2021-07-05 00:20:57 +02:00
elsid
09f9075842
Use RecastMeshBuilder once to create RecastMesh
...
This allows to move all data out of the object instead of copying.
2021-07-04 22:18:05 +02:00
elsid
8d1eb7e2e6
Fix slow AiPackage::getTarget calls
...
Assume there are no cell refs with empty ref id.
2021-07-04 14:09:11 +02:00
Evil Eye
9a7c07173d
Cache failed compilation when getting locals
2021-07-04 10:58:12 +02:00
Andreas Stöckel
b1fa0e9560
Fix Avatar Preview Coordinate Transformations in the Inventory (Issues #6129 , #6131 )
2021-07-04 08:36:59 +00:00
cc9cii
42bcbe34de
Cell references that teleport (Doors) should be placed in the "persistent" group when saving.
2021-07-04 16:18:47 +10:00
NeveHanter
6bb030aa55
Ignore actors siding with player in awarness check to allow training the sneaking or knowing whether player is detected by other actors in the siding actor line of sight
2021-07-03 13:40:36 +02:00
Evil Eye
5e4beb217a
Make fatigue and magicka recalculation behave the same way
2021-07-03 10:47:26 +02:00
Dobrohotov Alexei
3cab69c389
Fix ShowMap partial match filtering (bug #6115 )
2021-07-03 01:04:22 +03:00
psi29a
07c3ed16d0
Merge branch 'base64-fixes' into 'master'
...
Base64 fixes
Closes #6111
See merge request OpenMW/openmw!965
2021-07-02 06:27:17 +00:00
jvoisin
2cb9482893
Use a std::vector instead of a std::list in hypertextparser.cpp
2021-07-01 23:09:08 +00:00
elsid
5624fe1911
Consider path not found when there is navmesh query error
...
Fix a specific case when the guard at the start of the game fails to find path
due to failed getPolyHeight call that results into a partial path to the
target.
2021-06-30 20:13:27 +02:00
cc9cii
6575b95448
Support moved references (i.e. with MVRF sub-records) that do not occur at the beginning of the cell references block.
2021-06-30 15:34:40 +10:00
cc9cii
2d8dd9be32
Fix using incorrect id to search for record flags. Eliminate inefficient double-loop in saving cell references.
2021-06-30 10:46:51 +10:00
cc9cii
47ef98ca1b
Clean up RefIdData code for better legibility.
2021-06-30 10:09:56 +10:00
cc9cii
f2a301653c
Remove redundant mPersistent member from ESM::NPC and ESM::Creature, replaced by mRecordFlags. Fixed the editing of the persistence flag value.
2021-06-30 08:20:29 +10:00
cc9cii
2a76634f5f
Moved persistence flag from references to the header flags of referenceables (e.g. Static, Weapon, etc). Editing widget is not fully working.
2021-06-29 23:25:26 +10:00
cc9cii
f6eab52a1b
Added "Persistent" column to references table.
2021-06-29 19:45:02 +10:00
cc9cii
024ad3276b
Partial fix for #6017 . The persistence flag of the references are saved but it is not yet possible to modify it via OpenCS.
2021-06-29 19:20:01 +10:00
Evil Eye
4f264af5a9
Merge branch 'staticsload' into 'master'
...
Loads statics before actors II (#5379 )
See merge request OpenMW/openmw!588
2021-06-28 20:25:51 +00:00
psi29a
67f32263b2
Merge branch 'fix_malexa_escape' into 'master'
...
Inscribe physical bounding box into navmesh agent cylinder (#6114 )
Closes #6114
See merge request OpenMW/openmw!967
2021-06-28 14:26:08 +00:00
fredzio
c795e0bce6
Some actors are supposed to spawn on an object that belongs to an adjacent cell.
...
Since actors can be active in 3x3 grid around the player, we need to
first load all objects in a 5x5 grid around the player.
Split load and unloading in 2 phases. Add an mInactiveCells set into the
scene, which contains all cells inside the aforementioned 5x5 grid.
These cells contains only heightfields and non-animated physics objects.
Animated objects are tied to the scene graph, which doesn't exists yet
in these cells, so we skip them.
2021-06-28 09:36:04 +02:00
elsid
8d2cdedc87
Show number of pathgrid node in a tooltip
...
To allow users faster understand what node it is.
2021-06-28 00:34:49 +02:00
elsid
84d6dea277
Inscribe physical bounding box into navmesh agent cylinder
...
To disallow too narrow navmesh for a bounding box.
2021-06-27 13:44:38 +02:00
AnyOldName3
d38126ef1c
Pack default CS config
...
*Technically* it was already being loaded as if it were packed, but it
made no difference because it's supposed to be empty.
2021-06-26 20:00:25 +01:00
Evil Eye
1f658209f8
Merge branch 'DoNotCopyFullDialogue' into 'master'
...
Do not copy full dialogue as we only want to return its id
See merge request OpenMW/openmw!856
2021-06-26 11:59:37 +00:00
Alexey Sokolov
ec576b36f1
Add a default filter to CS tables
...
This fixes the single most annoying issue of OpenMW-CS: inability for
users to filter records in the table if they don't happen to know by
heart the syntax of the very powerful filter engine. Because simply
typing the text into the search field did not work. Now, existence of .*
suggests that regex is used, and users still can replace the text with a
custom filter if they wish.
2021-06-25 11:45:43 +01:00
psi29a
7d8949ec3f
Merge branch 'positively_glowing' into 'master'
...
Detach objects from the active grid when attempting to get their animation
Closes #6105
See merge request OpenMW/openmw!951
2021-06-25 09:20:25 +00:00
Evil Eye
2be27da791
Merge branch 'const_refs' into 'master'
...
Add a ton of const refs
See merge request OpenMW/openmw!954
2021-06-24 18:57:41 +00:00
Evil Eye
9f7980ecd7
Merge branch 'refenreces' into 'master'
...
Sprinkle some references where it makes sense
See merge request OpenMW/openmw!952
2021-06-24 17:40:36 +00:00
Evil Eye
7e9785941c
Merge branch 'default' into 'master'
...
Use `default` instead of empty constructors/destructors
See merge request OpenMW/openmw!957
2021-06-24 17:19:02 +00:00
jvoisin
cf11870b1c
Sprinkle some references where it makes sense
2021-06-24 00:28:09 +02:00
jvoisin
5840279f16
Use default
instead of empty constructors/destructors
...
See https://pvs-studio.com/en/docs/warnings/v832/ for details
2021-06-24 00:26:15 +02:00
jvoisin
b2c170efa0
Use initialization lists where possible
2021-06-23 23:36:43 +02:00
jvoisin
1123dc46ee
Add a ton of const refs
2021-06-23 23:13:59 +02:00
Evil Eye
692615fd3c
Detach objects from the active grid when attempting to get their animation
2021-06-23 18:08:49 +02:00
Evil Eye
7377568f01
Merge branch 'modernize_use_override_openmw_cs' into 'master'
...
Using override keyword in OpenMW CS
See merge request OpenMW/openmw!888
2021-06-22 18:04:40 +00:00
Evil Eye
f264a8d90a
Merge branch 'vfx' into 'master'
...
Calculate magic VFX vertical offset (bug #5453 )
Closes #5453
See merge request OpenMW/openmw!909
2021-06-22 17:15:29 +00:00
Alexey Yaryshev
2577047b59
Fixed an issue #6101 ( https://gitlab.com/OpenMW/openmw/-/issues/6101 )
2021-06-22 14:51:49 +00:00
Dobrohotov Alexei
870cdd0130
Calculate magic VFX vertical offset (bug #5453 )
2021-06-21 23:29:45 +03:00
psi29a
9c3117d2d4
Merge branch 'fix_smooth_movement' into 'master'
...
Validate almost straight shortcuts by navmesh raycast (#6102 )
Closes #6102
See merge request OpenMW/openmw!947
2021-06-21 19:54:17 +00:00
Evil Eye
b2acb322af
Merge branch 'modernize_use_override_for_most_apps' into 'master'
...
Using override keyword in most apps
See merge request OpenMW/openmw!886
2021-06-21 18:47:45 +00:00
elsid
e7d68d3d1b
Validate almost straight shortcuts by navmesh raycast
...
Check whether it's possible to actually move over navmesh by such shortcut.
2021-06-21 18:50:45 +02:00
Léo Peltier
5c4e1252e9
Handle AutoCalc flag when getting spell cost
...
Fixes #5483
This only applies to "base game" spells.
When adding an AutoCalc spell with TES:CS its cost is computed and
stored inside game files. This stored cost was being used by OpenMW and
the actual cost was never recomputed at runtime whereas Morrowind.exe
discards the stored cost.
While this worked fine in vanilla, mods can update AutoCalc spell
effects without ever updating the stored cost.
The formula was mostly there already but there was a few differences,
namely a 1 second offset in duration.
2021-06-20 13:42:28 +02:00
psi29a
6a9f2fdb17
Merge branch 'underground' into 'master'
...
Get The Underground 2 running
See merge request OpenMW/openmw!608
2021-06-19 21:06:15 +00:00
Evil Eye
690e5ef757
Don't resolve a script's target just to get the ID
2021-06-19 19:26:57 +02:00
Evil Eye
67c8d73fe0
Allow scripts to fail per target
2021-06-19 19:26:55 +02:00
Evil Eye
879e66a043
Don't autoequip items when implicitely adding an item using equip
2021-06-19 19:26:53 +02:00
Evil Eye
382d458f9c
Ignore wrong reference class for SetHello
2021-06-19 19:26:53 +02:00
elsid
e5e04b85c1
Consider time to destination when try to avoid collision
...
Actor may reach destination before collision. Get next path point from active
packet pathfinder and use point tolerance to reduce distance.
Use maximum of last destination tolerance and DEFAULT_TOLERANCE because
there are 2 checks made for path completion. First checks whether actor is
close enough to the destination and second drop last path point when actor is
closer than DEFAULT_TOLERANCE.
2021-06-19 14:11:20 +02:00
elsid
56e6305345
Revert "Merge branch 'fix_new_game_guard' into 'master'"
...
This reverts commit a487295d39
.
2021-06-19 14:06:46 +02:00
psi29a
b7886bc036
Merge branch 'SpeedUpInteriorCheck' into 'master'
...
Speedup searching for exterior cells
See merge request OpenMW/openmw!857
2021-06-19 00:29:47 +00:00
psi29a
047d993cf4
Merge branch 'at' into 'master'
...
Use operator[] instead of at() when the idx is checked
See merge request OpenMW/openmw!916
2021-06-19 00:26:48 +00:00
psi29a
f66196588c
Merge branch 'object_paging_min_size_combo_box' into 'master'
...
Adding Object Paging Min Size combo box to Advanced -> Visuals
See merge request OpenMW/openmw!917
2021-06-19 00:20:29 +00:00
psi29a
5aa1f7b3d0
Merge branch 'remove_useless' into 'master'
...
Remove some useless variables from esmtool
See merge request OpenMW/openmw!925
2021-06-19 00:17:58 +00:00
psi29a
3794e6d4b2
Merge branch 'fix-ffmpeg-api-const' into 'master'
...
Fix future FFMpeg API changes
See merge request OpenMW/openmw!922
2021-06-19 00:15:16 +00:00
psi29a
4d95855dd5
Merge branch 'reduce_esmreader' into 'master'
...
Reduce a bit std::stringstream's code bloat in hot/small functions
See merge request OpenMW/openmw!933
2021-06-18 22:53:25 +00:00
psi29a
071786aff6
Merge branch 'UseSameDistanceForAllLodsOfTheCurrentChunk' into 'master'
...
Use same distance for all lods of the current chunk
Closes #6061
See merge request OpenMW/openmw!940
2021-06-16 11:47:30 +00:00
psi29a
329ec8f044
Merge branch 'dont_bury_me_plz' into 'master'
...
Don't unsummon creatures not found within the active cells
Closes #6070
See merge request OpenMW/openmw!926
2021-06-16 09:43:53 +00:00
psi29a
c39c0266a9
Merge branch 'free_from_bondage' into 'master'
...
Do not assume the bound item cache is valid after loading a save
Closes #6069
See merge request OpenMW/openmw!931
2021-06-16 09:43:14 +00:00
jvoisin
22153cca7b
Reduce a bit the code bloat in hot paths/small functions
...
There is no need to bloat hot/small functions with
a ton of function calls and involving locales
for simple error messages.
2021-06-15 17:57:14 +02:00
unknown
7d756d997e
Rebuild the cache in readState
2021-06-12 18:18:52 +02:00
CedricMocquillon
7fa67ff675
Use same distance for all lod instances of a chunk
2021-06-12 15:34:15 +02:00
fredzio
7d0483d7ad
Cast spell even if target Ptr is empty. It happens when enchanted arrows
...
hit water or ground.
2021-06-11 05:55:37 +02:00
Evil Eye
90fa8dca35
Do not assume the bound item cache is valid after loading a save
2021-06-06 18:10:55 +02:00
Evil Eye
89e0bfd1a4
Purge summon effects on dispose
2021-06-06 12:45:42 +02:00
Evil Eye
004660be3d
Don't unsummon creatures not found within the active cells
2021-06-02 20:33:29 +02:00
jvoisin
d651f9e60c
Remove some useless variables from esmtool
2021-06-02 19:04:46 +02:00
Dan Church
70a0229010
Fix future FFMpeg API changes
...
avcodec_find_decoder now returns const AVCodec*.
2021-06-01 10:56:48 -05:00
Alexey Sokolov
3e4340338f
Update IRC links to libera
...
In README, in OpenCS about dialog, in Travis notification
2021-05-31 21:15:26 +01:00
psi29a
a487295d39
Merge branch 'fix_new_game_guard' into 'master'
...
Consider time to destination when try to avoid collision
See merge request OpenMW/openmw!914
2021-05-30 11:52:48 +02:00
Thunderforge
89950e5528
Preventing type conversion of double to float for objectPagingMinSize
2021-05-29 16:27:23 -05:00
Thunderforge
9f2f5174d4
Adding Object Paging Min Size combo box to Advanced -> Visuals
...
Requested in Discord by CMAugust and hammered out with a few other users.
2021-05-29 16:17:30 -05:00
jvoisin
8695b6fbc5
Use operator[] instead of at() when the idx is checked
2021-05-29 15:31:32 +02:00
Evil Eye
b8472e1303
Use modified paralyze magnitude to fall and float
2021-05-28 16:55:54 +02:00
psi29a
9dfba37ce9
Merge branch 'fix_big_object_navmesh_update' into 'master'
...
Fix overwhelming recast mesh and navmesh updates for big rotating objects (#6060 )
Closes #6060
See merge request OpenMW/openmw!911
2021-05-27 21:08:33 +00:00
elsid
e9433a91fb
Add more tests for TileCachedRecastMeshManager
2021-05-27 20:18:52 +02:00
psi29a
825ac6100f
Merge branch 'fix_loading_screen' into 'master'
...
Always center loading screen progress bar by height when there is active message box (#6059 )
See merge request OpenMW/openmw!910
2021-05-27 16:45:49 +00:00
Evil Eye
1a1085272a
Use ciEqual to determine actor-specific answers
2021-05-27 17:13:04 +02:00
elsid
4a6961b365
Trigger navmesh update on moved player only when player tile has been changed
2021-05-27 16:52:42 +02:00
elsid
d122e184cc
Report navmesh change for not posted tiles
...
Corresponding recast mesh tiles can be updated but navmesh tiles may never
appear for them. Report back zero navmesh version to allow oscillating recast
objects detection to work. This version is always less than any generated
navmesh tile version so any report for generated navmesh will override it.
If zero navmesh version is reported after recast mesh tile got report about
generated navmesh tile it is a no-op since generated version is always greater
than zero.
2021-05-27 12:40:00 +02:00
elsid
3915e5d2cc
Always center loading screen progress bar by height when there is active message box
...
To fix all possible situations when active message box overlaps with loading
screen progress.
The only used condition to center loading screen progress by height is
number of message boxes > 0. No need to pass it through interface.
LoadingScreen can check it inside setLabel function.
2021-05-26 23:29:37 +02:00
Mads Buvik Sandvei
d906ec773a
Fix hangup on savegame after manual screenshots.
2021-05-24 17:57:39 +00:00
psi29a
dff4b83d9d
Merge branch 'stop_threading' into 'master'
...
Stop osg viewer threading before destructing engine
See merge request OpenMW/openmw!901
2021-05-22 08:52:44 +00:00
elsid
375372981c
Stop osg viewer threading before destructing engine
...
To avoid rendering while engine parts are destructing.
2021-05-21 23:16:15 +02:00
elsid
105cd5b06f
Add more checks to NavMeshTilesCache tests
2021-05-21 19:33:42 +02:00
fredzio
b13afd758c
Remove both racy and useless code.
...
Actor's position can be determined in 3 ways:
1/ as a result of physics simulation
2/ after a script require a relative position change (SetPos, Move)
3/ absolutely set from games mechanics event (teleport) or script
(PositionCell)
In case 1/, RefData::mPosition is updated with the physics simulation result
In case 2/, when RefData::mPosition is updated, physics simulation is informed of the change and update accordingly
In case 3/, when RefData::mPosition is updated, the physics simulation state is reset
In all 3 cases, we don't need to check the RefData::mPosition to get a
correct behaviour.
TSAN reported the following data race:
Read of size 4 at 0x7b50005b75b0 by thread T12 (mutexes: write M656173, write M84859534346343880):
#0 ESM::Position::asVec3() const /build/openmw/openmw/master2/.build/freebsd/TSAN/../../.././components/esm/defs.hpp:55:27 (openmw+0xb809d5)
#1 MWPhysics::Actor::updateWorldPosition() /build/openmw/openmw/master2/.build/freebsd/TSAN/../../../apps/openmw/mwphysics/actor.cpp:131:59 (openmw+0xb809d5)
#2 MWPhysics::Actor::setPosition(osg::Vec3f const&) /build/openmw/openmw/master2/.build/freebsd/TSAN/../../../apps/openmw/mwphysics/actor.cpp:177:5 (openmw+0xb809d5)
#3 MWPhysics::PhysicsTaskScheduler::updateActorsPositions() /build/openmw/openmw/master2/.build/freebsd/TSAN/../../../apps/openmw/mwphysics/mtphysics.cpp:524:28 (openmw+0xb91ac0)
#4 MWPhysics::PhysicsTaskScheduler::afterPostStep() /build/openmw/openmw/master2/.build/freebsd/TSAN/../../../apps/openmw/mwphysics/mtphysics.cpp:614:13 (openmw+0xb915e7)
#5 MWPhysics::PhysicsTaskScheduler::worker()::$_5::operator()() const /build/openmw/openmw/master2/.build/freebsd/TSAN/../../../apps/openmw/mwphysics/mtphysics.cpp:498:45 (openmw+0xb915e7)
#6 void Misc::Barrier::wait<MWPhysics::PhysicsTaskScheduler::worker()::$_5>(MWPhysics::PhysicsTaskScheduler::worker()::$_5&&) /build/openmw/openmw/master2/.build/freebsd/TSAN/../../.././components/misc/barrier.hpp:30:21 (openmw+0xb915e7)
#7 MWPhysics::PhysicsTaskScheduler::worker() /build/openmw/openmw/master2/.build/freebsd/TSAN/../../../apps/openmw/mwphysics/mtphysics.cpp:498:31 (openmw+0xb915e7)
#8 MWPhysics::PhysicsTaskScheduler::PhysicsTaskScheduler(float, btCollisionWorld*, MWRender::DebugDrawer*)::$_0::operator()() const /build/openmw/openmw/master2/.build/freebsd/TSAN/../../../apps/openmw/mwphysics/mtphysics.cpp:162:45 (openmw+0xb92630)
#9 decltype(std::__1::forward<MWPhysics::PhysicsTaskScheduler::PhysicsTaskScheduler(float, btCollisionWorld*, MWRender::DebugDrawer*)::$_0>(fp)()) std::__1::__invoke<MWPhysics::PhysicsTaskScheduler::PhysicsTaskScheduler(float, btCollisionWorld*, MWRender::DebugDrawer*)::$_0>(MWPhysics::PhysicsTaskScheduler::PhysicsTaskScheduler(float, btCollisionWorld*, MWRender::DebugDrawer*)::$_0&&) /usr/include/c++/v1/type_traits:3899:1 (openmw+0xb92630)
#10 void std::__1::__thread_execute<std::__1::unique_ptr<std::__1::__thread_struct, std::__1::default_delete<std::__1::__thread_struct> >, MWPhysics::PhysicsTaskScheduler::PhysicsTaskScheduler(float, btCollisionWorld*, MWRender::DebugDrawer*)::$_0>(std::__1::tuple<std::__1::unique_ptr<std::__1::__thread_struct, std::__1::default_delete<std::__1::__thread_struct> >, MWPhysics::PhysicsTaskScheduler::PhysicsTaskScheduler(float, btCollisionWorld*, MWRender::DebugDrawer*)::$_0>&, std::__1::__tuple_indices<>) /usr/include/c++/v1/thread:280:5 (openmw+0xb92630)
#11 void* std::__1::__thread_proxy<std::__1::tuple<std::__1::unique_ptr<std::__1::__thread_struct, std::__1::default_delete<std::__1::__thread_struct> >, MWPhysics::PhysicsTaskScheduler::PhysicsTaskScheduler(float, btCollisionWorld*, MWRender::DebugDrawer*)::$_0> >(void*) /usr/include/c++/v1/thread:291:5 (openmw+0xb92630)
Previous write of size 8 at 0x7b50005b75b0 by main thread:
#0 memcpy /wrkdirs/usr/ports/devel/llvm-devel/work-default/llvm-project-3f6753efe1990a928ed120bd907940a9fb3e2fc3/compiler-rt/lib/tsan/../sanitizer_common/sanitizer_common_interceptors.inc:827:5 (openmw+0x55a057)
#1 MWWorld::RefData::setPosition(ESM::Position const&) /build/openmw/openmw/master2/.build/freebsd/TSAN/../../../apps/openmw/mwworld/refdata.cpp:216:19 (openmw+0xa3de1c)
#2 MWWorld::World::moveObject(MWWorld::Ptr const&, MWWorld::CellStore*, float, float, float, bool) /build/openmw/openmw/master2/.build/freebsd/TSAN/../../../apps/openmw/mwworld/worldimp.cpp:1130:26 (openmw+0xa57300)
#3 MWWorld::World::moveObject(MWWorld::Ptr const&, float, float, float, bool, bool) /build/openmw/openmw/master2/.build/freebsd/TSAN/../../../apps/openmw/mwworld/worldimp.cpp:1253:16 (openmw+0xa580c8)
#4 MWWorld::World::doPhysics(float, unsigned long long, unsigned int, osg::Stats&) /build/openmw/openmw/master2/.build/freebsd/TSAN/../../../apps/openmw/mwworld/worldimp.cpp:1530:17 (openmw+0xa5af8f)
#5 MWWorld::World::updatePhysics(float, bool, unsigned long long, unsigned int, osg::Stats&) /build/openmw/openmw/master2/.build/freebsd/TSAN/../../../apps/openmw/mwworld/worldimp.cpp:1862:13 (openmw+0xa61a7c)
#6 OMW::Engine::frame(float) /build/openmw/openmw/master2/.build/freebsd/TSAN/../../../apps/openmw/engine.cpp:333:42 (openmw+0xcce9e7)
#7 OMW::Engine::go() /build/openmw/openmw/master2/.build/freebsd/TSAN/../../../apps/openmw/engine.cpp:935:14 (openmw+0xcd86ed)
#8 runApplication(int, char**) /build/openmw/openmw/master2/.build/freebsd/TSAN/../../../apps/openmw/main.cpp:296:17 (openmw+0xcbffac)
#9 wrapApplication(int (*)(int, char**), int, char**, std::__1::basic_string<char, std::__1::char_traits<char>, std::__1::allocator<char> > const&) /build/openmw/openmw/master2/.build/freebsd/TSAN/../../../components/debug/debugging.cpp:205:15 (openmw+0x1335442)
#10 main /build/openmw/openmw/master2/.build/freebsd/TSAN/../../../apps/openmw/main.cpp:308:12 (openmw+0xcc008a)
:wqa
2021-05-20 20:46:44 +02:00
psi29a
3920477618
Merge branch 'moving_lighting_method_to_graphics' into 'master'
...
Moving Lighting Method from Advanced -> Visuals to Graphics -> Lighting
See merge request OpenMW/openmw!883
2021-05-19 05:09:24 +00:00
psi29a
c4fde03542
Merge branch 'ObjectPagingMergeIssue' into 'master'
...
Share state
See merge request OpenMW/openmw!879
2021-05-19 05:08:12 +00:00
Thunderforge
945f1aad20
Using override keyword in OpenMW CS
...
Detected by clang-tidy's modernize-use-override
2021-05-18 19:53:55 -05:00
Thunderforge
efcdb2dfdd
Using override keyword in most apps
...
Detected by clang-tidy's modernize-use-override
Future MRs can be created to run this on OpenMW and OpenMW CS
2021-05-18 19:42:24 -05:00
Thunderforge
ded7bd92e6
Using auto keyword in most apps
...
Detected by clang-tidy's modernize-use-auto
2021-05-18 19:20:59 -05:00
Thunderforge
6ba23a028c
Removing unused imports in the Launcher
2021-05-18 18:23:16 -05:00
Thunderforge
4a15868c0e
Moving Lighting Method from Advanced -> Visuals to Graphics -> Lighting
...
The plan is to add additional options to this new tab, and since it's of similar status as the Shaders settings, it makes sense to put them next to them on the Graphics page.
2021-05-18 18:05:54 -05:00
CedricMocquillon
d11a6bd92c
Share state
2021-05-18 17:57:47 +02:00
Atahualpa
3a1243a5d0
Rebased branch, reduced code duplication, added comments, adjusted formatting.
2021-05-18 17:53:00 +02:00
Atahualpa
ca80aeaaea
Fix vertex calculation for cell-border drawing.
2021-05-18 15:05:26 +02:00
Atahualpa
356efa15a2
Fixes #6035 (circle brush selects outside of circle) and #6036 (some corner vertices not selected).
2021-05-18 15:04:01 +02:00
Atahualpa
7be891b440
Directly use Geometry instead of Geode; fix for loop; add size_t type-cast.
2021-05-18 14:56:03 +02:00
Atahualpa
73949d5bd0
Updating the CMake file isn't a bad idea either...
2021-05-18 14:56:03 +02:00
Atahualpa
6c49074765
Remove old references to Cell class.
2021-05-18 14:56:03 +02:00
Atahualpa
008bf64dd9
Second step toward fixing terrain selection issues.
2021-05-18 14:56:03 +02:00
Atahualpa
18ea4d8eb2
First step toward fixing terrain selection issues.
2021-05-18 14:56:02 +02:00
Bret Curtis
373f8636b7
Merge pull request #3092 from akortunov/master
...
Do not trigger in-game bindings via mouse buttons when controls are disabled
2021-05-18 10:47:45 +02:00
psi29a
ae66afb219
Merge branch 'less_verbose' into 'master'
...
Make the code less verbose.
See merge request OpenMW/openmw!874
2021-05-18 08:30:50 +00:00
psi29a
e9fbd76e9b
Merge branch 'windows_tests' into 'master'
...
Support running tests and benchmarks for windows
See merge request OpenMW/openmw!839
2021-05-18 08:12:22 +00:00
psi29a
4bc7012104
Merge branch 'pack-default-settings' into 'master'
...
Pack default settings
Closes #5925
See merge request OpenMW/openmw!822
2021-05-18 08:11:13 +00:00
elsid
3ef1b27099
Add missing includes
2021-05-18 01:21:42 +02:00
psi29a
f1f1703441
Merge branch 'fix_navmesh_wait' into 'master'
...
Fix redundant waiting until navmesh is generated
See merge request OpenMW/openmw!861
2021-05-17 10:54:23 +00:00
Andrei Kortunov
c11774f278
Do not trigger in-game bindings via mouse buttons when controls are disabled (bug #6047 )
2021-05-17 12:23:56 +04:00
AnyOldName3
c2e4eda825
Merge branch '6013-fix' into 'master'
...
Retain draw callback
Closes #6013 and #5967
See merge request OpenMW/openmw!875
2021-05-16 17:30:38 +00:00
madsbuvi
f3e17e7c52
Don't redundantly call notify on every frame.
2021-05-16 18:09:48 +02:00
Frederic Chardon
62c7adc87b
Merge branch 'no_at_boundaries' into 'master'
...
Don't use at() instead [] when length is checked/known
See merge request OpenMW/openmw!866
2021-05-16 11:58:14 +00:00
Frederic Chardon
38db2f8810
Merge branch 'includes_mwgui' into 'master'
...
Remove some useless includes from apps/openmw/mwgui
See merge request OpenMW/openmw!870
2021-05-16 11:46:13 +00:00
madsbuvi
5b9a2b73b0
Retain final draw callback as a member variable in ScreenshotManager, and do not call setFinalDrawCallback after init.
2021-05-16 13:04:30 +02:00
Frederic Chardon
807c7a2025
Merge branch 'useless_includes_mwmechanics' into 'master'
...
Remove some useless headers in apps/openmw/mwmechanics
See merge request OpenMW/openmw!871
2021-05-16 10:51:43 +00:00
fredzio
5b63019719
Embed actor velocity inside its class. It makes the code simpler.
2021-05-16 12:42:17 +02:00
fredzio
c55db790f3
Make the code less verbose / more readable using for range loop and
...
structured binding.
No functional changes.
2021-05-16 12:42:16 +02:00
Frederic Chardon
730f1fe2a7
Merge branch 'useless_includes_mwphysics' into 'master'
...
Remove some useless includes in apps/openmw/mwphysics
See merge request OpenMW/openmw!872
2021-05-16 10:37:33 +00:00
jvoisin
9373e4ada7
Remove some useless includes in apps/openmw/mwphysics
2021-05-15 23:13:46 +02:00
jvoisin
9522a64e7d
Remove some useless includes from apps/openmw/mwgui
2021-05-15 22:15:46 +02:00
jvoisin
1cd15613a6
Remove some useless headers in apps/openmw/mwmechanics
2021-05-15 22:14:08 +02:00
psi29a
3d61d7ec9a
Merge branch 'optimize_initial_load' into 'master'
...
Optimize engine initial loading time
See merge request OpenMW/openmw!867
2021-05-15 18:48:17 +00:00
Evil Eye
6cb6461cba
Merge branch 'const_ref_it' into 'master'
...
Use const references when possible in for loops
See merge request OpenMW/openmw!869
2021-05-15 18:47:03 +00:00
jvoisin
7deb6a6ffd
Use const references when possible in for loops
...
No need for useless copies.
2021-05-15 19:50:01 +02:00
jvoisin
c1e3869f25
Remove an unused struct
2021-05-15 19:49:15 +02:00
elsid
1e2aae8095
Use stable sort+unique to collect RefIDs for ESMStore records counting
...
The idea is to avoid std::map lookup for each CellRef. Instead generate a
sequence of added and removed RefNums into a vector then order them by RefNum
using a stable sort that preserves relative order of elements with the same
RefNum. RefIDs are stored in a different vector to avoid std::string move ctor
calls when swapping elements while sorting. Reversed iteration over added and
removed RefNums for each unique RefNum is an equivalent to what map-based
algorithm produces. The main benefit from sorting a vector is a data locality
that means less cache misses for each access. Reduces ESMStore::countRecords
perf cycles by 25%.
2021-05-15 18:45:22 +02:00
elsid
9938af2289
Use unordered_map for ref count
...
Reduces ESMStore::countRecords time by 8%.
2021-05-15 18:45:22 +02:00
elsid
6248dc72cb
Convert to lower case only when needed
2021-05-15 18:45:21 +02:00
elsid
f2188d2533
Reduce temporary allocations on ESM loading
...
By moving objects instead of copying when possible.
2021-05-15 18:45:21 +02:00
Bret Curtis
8a315b01ae
Merge pull request #3089 from xyzz/fix-journalbooks-ub
...
Fix out-of-bounds access in JournalBooks::createCyrillicJournalIndex
2021-05-15 17:25:47 +02:00
Ilya Zhuravlev
13f060623f
Fix out-of-bounds access in JournalBooks::createCyrillicJournalIndex
2021-05-15 10:45:39 -04:00
jvoisin
690d85d0e9
Don't use at() instead [] when length is checked/known
2021-05-15 15:38:17 +02:00
Andrei Kortunov
b63f53f5bb
Disable shield animation when we launch a torch one (bug #6043 )
2021-05-15 11:31:08 +04:00
AnyOldName3
5d83de189a
Merge branch 'insert_or_assign' into 'master'
...
Use insert_or_assign() instead of hand rolled version.
See merge request OpenMW/openmw!862
2021-05-14 22:57:07 +00:00
fredzio
fb344d27e0
Use insert_or_assign() instead of hand rolled version.
2021-05-14 23:38:39 +02:00
elsid
59f89d22f8
Apply min distance only for not present tiles
...
To avoid waiting when navmesh update is triggered by transformed object for
already present tiles.
2021-05-14 22:41:11 +02:00
Bret Curtis
66a527c3de
Merge pull request #3075 from akortunov/warnfix
...
Fix MSVC's C4244 and C4267 warnings
2021-05-14 21:28:56 +02:00
psi29a
3944648f0b
Merge branch 'opencs_remove_inclde' into 'master'
...
Remove some superfluous includes in the opencs
See merge request OpenMW/openmw!829
2021-05-14 13:33:06 +00:00
jvoisin
06ae26037f
Remove some superfluous includes in the opencs
2021-05-14 10:57:31 +02:00
CedricMocquillon
1d362029ce
Do not copy full dialogue as we only want ot return its id
2021-05-13 23:02:26 +02:00
CedricMocquillon
ccaa581f39
According to the comment, an interior cell must have (0,0) but as there is an exterior cell
...
with these coordinates it is not sufficient but it is necessary so I added it
2021-05-13 22:29:52 +02:00
CedricMocquillon
f81be5b463
Replace land static container from vector to flat_set
...
I use a ordered container to fix the "is there any other way to speed this up?".
The flat_set allow to have the same locality when searching an element.
I use the is_transparent C++14 feature to avoid to create a dummy Land when searching
I use a unique_ptr to avoid to manualy manage the memory
2021-05-13 20:13:53 +02:00
psi29a
6a5a9fbde4
Merge branch 'static-access' into 'master'
...
[Launcher] Replacing static method access through instances
See merge request OpenMW/openmw!834
2021-05-13 17:06:44 +00:00
psi29a
fd89582e0c
Merge branch 'navmesh_wait' into 'master'
...
Wait until navmesh is generated within given distance around player (#5500 )
Closes #5500
See merge request OpenMW/openmw!819
2021-05-13 16:56:39 +00:00
Andrei Kortunov
963e1b8b3f
Fix MSVC's C4244 warnings
2021-05-12 10:34:40 +04:00
Andrei Kortunov
f9d42ed396
Fix MSVC's C4267 warnings
2021-05-12 10:34:39 +04:00
Andrei Kortunov
49a744b65a
Make groundcover to use rendering distance in units instead of cells
2021-05-12 09:29:25 +04:00
elsid
4d7e5245a3
Support benchmarks for windows
...
Don't run the binary because gitlab can't execute it successfully due to
unknown reason.
2021-05-11 13:16:59 +02:00
psi29a
f7b8c817f8
Merge branch 'performance-faster-string-find' into 'master'
...
Fixing performance-faster-string-find issues
See merge request OpenMW/openmw!842
2021-05-11 08:42:01 +00:00
Thunderforge
339d347aea
Fixing performance-faster-string-find issues
...
This addresses the Clang Tidy check [performance-faster-string-find](https://clang.llvm.org/extra/clang-tidy/checks/performance-faster-string-find.html ).
2021-05-10 22:44:07 -05:00
Bret Curtis
08059247b8
Merge pull request #3081 from akortunov/master
...
Skip hidden nodes for ObjectPaging
2021-05-10 09:19:47 +02:00
psi29a
13fd0e11ff
Merge branch 'no_time_to_talk' into 'master'
...
Don't stop and turn to the player while sneaking or jumping
Closes #6016
See merge request OpenMW/openmw!838
2021-05-10 06:51:49 +00:00
AnyOldName3
09f39b29f0
Load defaults.bin instead of settings-default.cfg. Do not decode yet.
2021-05-09 21:14:06 +01:00
AnyOldName3
92325976e9
Update documentation to refer to defaults.bin
2021-05-09 21:13:34 +01:00
AnyOldName3
0d737a3501
Create defaults.bin at configure time
2021-05-09 21:00:49 +01:00
Evil Eye
c5aa3d4f77
Don't stop and turn to the player while sneaking or jumping
2021-05-09 19:55:27 +02:00
Evil Eye
ffd84502f9
Remove unimplemented method declaration
2021-05-09 19:07:15 +02:00
Andrei Kortunov
132fedf290
Analyze only used LOD levels in ObjectPaging
2021-05-09 15:43:13 +04:00
Andrei Kortunov
a939cb6692
Skip hidden nodes for ObjectPaging
2021-05-09 14:10:35 +04:00
Thunderforge
ead51784dc
[Launcher] Replacing static method access through instances
...
This addresses the Clang Tidy check [readability-static-accessed-through-instance](https://clang.llvm.org/extra/clang-tidy/checks/readability-static-accessed-through-instance.html ). It also simplifies the code by reducing the number of parameters we're passing around.
2021-05-08 23:28:29 -05:00
Frederic Chardon
caf382c19f
Merge branch 'barrier' into 'master'
...
Do not store callback inside Misc::Barrier
See merge request OpenMW/openmw!821
2021-05-07 22:21:44 +00:00
psi29a
08e1a8e0fb
Merge branch 'esm_opti' into 'master'
...
Teensy optimisation for esmtool
See merge request OpenMW/openmw!826
2021-05-07 14:21:37 +00:00
psi29a
9b017ef04d
Merge branch 'internal_includes_openmw' into 'master'
...
Clean up some internal includes of the openmw component
See merge request OpenMW/openmw!796
2021-05-07 10:53:25 +00:00
Andrei Kortunov
a0582caa26
Fix uninitialized variable
2021-05-07 10:41:14 +04:00
jvoisin
e97e4d07dd
Teensy optimisation for esmtool
...
- Use an unordered_set instead of a list to
keep track of skipped records.
- Reduce the number of conditions when parsing 4-letters
records by using a switch-case instead of cascading conditions.
- Add a const
2021-05-06 22:41:20 +02:00
elsid
00de80c884
Merge branch 'deadcode' into 'master'
...
GC some unused code, simplify some other
See merge request OpenMW/openmw!820
2021-05-06 11:03:14 +00:00
fredzio
e99b61d362
Simplify the code
2021-05-06 06:15:00 +02:00
elsid
626e032931
Do not store callback inside Misc::Barrier
...
The only wait method can be provided with it so pass it as a template
parameter there.
2021-05-05 23:42:47 +02:00
fredzio
00de540a31
Remove unused function.
2021-05-05 20:27:22 +02:00
elsid
7a51d0db18
Wait until navmesh is generated within given distance around player
...
Add a setting to change this distance.
To prevent situations when there is not enough navmesh generated and actors
can't find path correctly.
2021-05-05 19:44:16 +02:00
elsid
f169f8e6f0
Wait until navmesh is generated for interior cells
...
Add special loading progress bar.
It should be fast enough to not keep loading screen for noticably long but
will provide better pathfinding for actors inside interior cells.
2021-05-05 19:27:49 +02:00
psi29a
b8128d09f9
Merge branch 'enchanted-item-selected-fix' into 'master'
...
Fix for enchanted items being removed on item equip cycling when they are re-equipped
See merge request OpenMW/openmw!714
2021-05-05 07:27:00 +00:00
psi29a
9eb876cc17
Merge branch 'read_me' into 'master'
...
Allow activation of inventory items
Closes #5991
See merge request OpenMW/openmw!788
2021-05-04 22:53:45 +00:00
psi29a
6ac4dfbeb7
Merge branch '9001st_time_the_charm' into 'master'
...
Rework again scripted movements
See merge request OpenMW/openmw!799
2021-05-04 22:52:37 +00:00
psi29a
15f6932aaa
Merge branch 'openmwizzrd_include' into 'master'
...
Remove some useless includes from the wizzard
See merge request OpenMW/openmw!767
2021-05-04 22:25:26 +00:00
psi29a
6513c38875
Merge branch 'clean_navigator' into 'master'
...
Remove redundant and useless code from navigator
See merge request OpenMW/openmw!815
2021-05-04 21:57:16 +00:00
psi29a
b10a817f7e
Merge branch 'useuless_launcher' into 'master'
...
Remove some useless includes from the launcher
See merge request OpenMW/openmw!775
(cherry picked from commit a84bd643b334eb6ac715681c497184ac22212ced)
d3fff8cf Remove some useless includes from the launcher
2021-05-04 21:09:39 +00:00
elsid
ec87b3f8f7
Remove redundant ChunkyTriMesh
...
This AABB tree required when need to filter out input mesh that has not
influence navmesh tile output. This filtering is already done before. Each
recast mesh corresponds to a single navmesh tile and has appropriate bounds.
2021-05-04 13:00:06 +02:00
jvoisin
d45184a730
Sprinkle some const-ref to avoid unnecessary copies
2021-05-02 14:43:46 +02:00
Chris Djali
f0cef87cd8
Merge pull request #3069 from akortunov/msvc_warnings
...
Rework warnings settings
2021-05-01 19:03:43 +01:00
fredzio
4fa0972b2d
Tone down actor's skip simulation flag to an optional skip collision
...
detection flag.
2021-05-01 14:22:30 +02:00
Evil Eye
bd45449f9d
Allow activation of inventory items
2021-05-01 14:07:29 +02:00
jvoisin
998cc97a4f
And done!
2021-04-30 20:49:22 +02:00
jvoisin
be371ccd9f
An another pass
2021-04-30 20:27:33 +02:00
jvoisin
ee2446d5c4
Trim even more
2021-04-30 20:11:41 +02:00
jvoisin
04edb1c817
Trim down some internal includes
2021-04-30 19:39:26 +02:00
psi29a
16bb3919d1
Merge branch 'navmesh_cache_simplification' into 'master'
...
Simplify navmesh cache
See merge request OpenMW/openmw!691
2021-04-28 08:01:06 +00:00
Alexei Dobrohotov
e3bb45fd61
Merge branch 'minor_aicombat' into 'master'
...
Minor optimization in aicombat.cpp
See merge request OpenMW/openmw!737
(cherry picked from commit f1d19035cccfff2523faad0d4e4d96cd3ddae2e6)
bbbfc520 Minor optimization in aicombat.cpp
237b34a6 Fix style
a14911cb Fix indentation
2021-04-26 07:10:41 +00:00
jvoisin
4c96644f8d
Use a char instead of a string in find() where possible
...
This was done via PVS Studio ( https://pvs-studio.com ),
and should provide a super-duper-marginal performance boost \o/
2021-04-25 19:57:09 +02:00
elsid
e1d955d92b
Remove noexcept specifier from CreatureCustomData move ctor
...
C++17 doesn't allow to declare defaulted move ctor with not matching
exception specification to the calculated one:
/Users/eddie/Downloads/BUILD/openmw-master/apps/openmw/mwclass/creature.cpp:63:9: error:
exception specification of explicitly defaulted move constructor does not
match the calculated one
CreatureCustomData(CreatureCustomData&& other) noexcept = default;
^
http://wg21.link/p1286r2 makes this possible in C++20 and newer compilers
already have it working even with -std=c++17 but older onces give an error.
2021-04-24 00:32:22 +02:00
elsid
ca7add0624
Add move constructor to MWMechanics::Spells
2021-04-24 00:32:22 +02:00
elsid
46e34c500c
Use algorithms to add/remove listener to SpellList
2021-04-24 00:32:07 +02:00
Andrei Kortunov
6d351b2bdd
Fix MSVC 4706 warnings
2021-04-23 22:53:59 +04:00
Simon Meulenbeek
cd419256ad
don't forget to close the audio device after you're done with it.
2021-04-22 18:42:56 +00:00
jvoisin
fb55207328
Remove some useless includes from the wizzard
2021-04-21 19:08:06 +02:00
Andrei Kortunov
faad18b7f9
Merge pull request #3072 from akortunov/warnfix
...
Fix node masks signed/unsigned mismatch
2021-04-21 09:26:06 +04:00
Andrei Kortunov
b7b85bb713
Disable controllers for found sheath meshes (bug #5975 )
2021-04-20 16:01:01 +04:00
Andrei Kortunov
2d869ca9ff
Fix node masks signed/unsigned mismatch
2021-04-20 10:52:51 +04:00
Bret Curtis
50d6cd2a34
Merge pull request #3070 from akortunov/coverity
...
Fix an another portion of Coverity warnings
2021-04-20 07:33:03 +02:00
Andrei Kortunov
d10399e083
Cast double constant to float explicitely
2021-04-19 17:08:03 +04:00
Andrei Kortunov
7d5c5f8a24
Do not assign negative values to unsigned variables
2021-04-19 16:08:19 +04:00
Andrei Kortunov
651ad11ad8
Do not leave variables without initialization, even in execution paths where they are unused
2021-04-19 16:08:10 +04:00
Andrei Kortunov
9647b670e4
Do not declare unused variables
2021-04-19 15:43:00 +04:00
Andrei Kortunov
0cadc97fb3
Fix double -> float conversions
2021-04-19 15:36:58 +04:00
Bret Curtis
befa3f587f
Merge pull request #3068 from akortunov/master
...
Clean up MSVC warnings
2021-04-19 09:27:17 +02:00
psi29a
b645c1f4c0
Merge branch 'navmesh_ignore' into 'master'
...
Do not trigger NavMesh update when RecastMesh update should not change NavMesh (#4917 )
See merge request OpenMW/openmw!762
2021-04-18 21:53:43 +00:00
psi29a
f3354c509e
Merge branch 'stomp' into 'master'
...
Adjustable Stomp
See merge request OpenMW/openmw!575
2021-04-18 21:35:37 +00:00
elsid
3e67f5ffa5
Detect and ignore updates for oscillating objects
...
To avoid triggering NavMesh update when RecastMesh change should not change
NavMesh.
Based on the following assumption:
Given a set of transformations and a bounding shape for all these
tranformations, a new object transformation that does not change this
bounding shape also should not change navmesh if for all of this object
transformations resulting navmesh tiles are equivalent
The idea is to report back to RecastMeshManager all changes of NavMesh if there
are any assiciated with RecastMesh version. So we know the last time when
RecastMesh change resulted into the NavMesh change. When later report shows
that there was no NavMesh change for a new RecastMesh version we can assume
that any object transformation within the same bounding box should not change
NavMesh.
2021-04-18 23:00:13 +02:00
AnyOldName3
ce3ed28403
Control stomping via settings.
2021-04-18 21:44:23 +01:00
psi29a
3423d3f882
Merge branch 'various_warn' into 'master'
...
Fix various warnings found by clang
See merge request OpenMW/openmw!758
2021-04-18 20:04:20 +00:00
Alexei Dobrohotov
b29e797b27
Merge branch 'seventh_time_is_the_charm' into 'master'
...
Unbreak again NPC teleport
See merge request OpenMW/openmw!760
2021-04-18 16:36:11 +00:00
Petr Mikheev
5fe10e8e7f
Merge branch 'fix-headtracking' into 'master'
...
Fix headtracking while invisible
See merge request OpenMW/openmw!743
2021-04-18 10:54:57 +00:00
Jacob Turnbull
f49b9e3806
Fix headtracking while invisible
2021-04-18 10:54:56 +00:00
fredzio
36bb2d5f15
An actor needs not be in active cell. As such we can't use
...
PhysicsSystem::getActor() to determine that a ptr is not actor.
2021-04-18 08:45:43 +02:00
Andrei Kortunov
987b231fdd
Fix an another portion of Coverity warnings
2021-04-18 07:09:44 +04:00
psi29a
50db75bd13
Merge branch 'settingstocs_csmprefs' into 'master'
...
Dehardcode animations in OpenMW-CS (CSMPrefs method)
See merge request OpenMW/openmw!742
2021-04-17 20:00:07 +00:00
jvoisin
38316cdaf8
Fix various warnings found by clang
...
- unused alias
- inefficient use of push_back
- exceptions not inheriting from std::exception
- weird use of a comma
- value compared against itself
2021-04-17 19:06:33 +02:00
Andrei Kortunov
f308dde254
Clean up MSVC warnings
2021-04-17 12:14:50 +04:00
Andrei Kortunov
57b501ad13
Merge pull request #3067 from akortunov/master
...
Limit pointers cache size to avoid possible bad_alloc errors
2021-04-17 10:31:47 +04:00
unelsson
06fda4c5a1
QLineEdit for setting base animation files
2021-04-16 23:12:14 +03:00
unelsson
95272e0f14
String setting to CSMPrefs, part of dehardcoding animation files
2021-04-16 23:12:14 +03:00
psi29a
d0883f9a0d
Merge branch 'light_settings_tweak' into 'master'
...
Lighting patch
Closes #5957 and #5959
See merge request OpenMW/openmw!752
2021-04-16 19:47:26 +00:00
glassmancody.info
16856d45c5
Lighting Patch
...
Fixes build errors with older OSG builds and some issues with 'shared' layout.
Bring back ambient in inventory through lightmodel instead of sun ambient, mirrors scene ambient/sunlight relationship.
Forces shaders when certain lighting methods are enabled and finalize settings.
Correctly override sun for localmap.
2021-04-16 11:55:40 -07:00
fredzio
f137b7341f
Another fallout from MR 722: objects were treated like actors by
...
accident. Net effect was that calls to Move/MoveWorld didn't update
position of collision object.
2021-04-16 16:12:31 +02:00
Andrei Kortunov
5de72c94ab
Limit pointers cache size to avoid possible bad_alloc errors
2021-04-16 08:10:31 +04:00
psi29a
af8bc7d120
Merge branch 'fixagainsetposforgoodthistimeitwillnotbreakanything' into 'master'
...
Fix #5961 : Follow up MR 722: do not apply mPositionOffset twice when we teleport.
Closes #5961
See merge request OpenMW/openmw!744
2021-04-15 22:09:44 +00:00
fredzio
e31cf7e6ac
Follow up MR 722: do not apply mPositionOffset twice when we teleport.
...
Previous MR change the meaning of mPositionOffset: it is now just a log
of relative movement that were already applied to allow the physics
simulation to catch up, instead of changes that needs to be applied. As
such, after a teleport we need to reset it. Also, since mWorldPosition
is already with the offset we should not update its value in
applyPositionOffset().
2021-04-15 22:32:42 +02:00
Andrei Kortunov
33b8233887
Validate GUI scaling and place it to the launcher
2021-04-15 15:18:32 +04:00
Andrei Kortunov
db1428de18
Move container unresolving to the separate method
2021-04-14 23:03:35 +04:00
Bret Curtis
4f72fa2615
Merge pull request #3063 from akortunov/master
...
Code cleanup, part 2
2021-04-14 10:03:07 +02:00
fredzio
9d8fcec642
Remove bogus warning. It is a normal situation for projectiles to be
...
in-flight after the caster is gone.
2021-04-14 09:01:37 +02:00
Andrei Kortunov
016a1d45df
Remove outdated field - remnant from earlier implementation
2021-04-14 10:58:44 +04:00
Andrei Kortunov
388573cf60
Fix uninitialized fields in the essimporter
2021-04-14 08:07:08 +04:00
elsid
0fae6d9a0a
Add walk and swim flags when corresponding speed is positive
...
This allows to avoid finding path over area that will should have infinite
cost (area_cost = area_cost_factor / area_speed).
2021-04-13 23:27:18 +02:00
elsid
3c4a9069ae
Do not use infinite area cost
...
Division by zero causes float value to be infinite. When infinite cost is
multiplied by zero distance the result is NaN. After this pathfinding algorithm
state is broken.
2021-04-13 23:27:18 +02:00
psi29a
f1cfdafd4d
Merge branch 'why_are_the_christmas_lights_still_up' into 'master'
...
Remove 8 light limit and add configurable lighting enhancements
See merge request OpenMW/openmw!618
2021-04-13 19:15:08 +00:00
glassmancody.info
531a6e1979
Code review fixes, remove implicit GLSL casts
2021-04-13 11:09:54 -07:00
glassmancody.info
582f7b52cf
Merge remote-tracking branch 'upstream/master' into why_are_the_christmas_lights_still_up
2021-04-13 11:09:52 -07:00
glassmancody.info
9e80091aff
clear up force shaders and make it less convoluted
2021-04-13 11:09:49 -07:00
glassmancody.info
b7adb9d088
use true default settings
2021-04-13 11:09:49 -07:00
glassmancody.info
d4e7d25d14
Make life not suck for whoever wants to edit lighting shaders
2021-04-13 11:09:49 -07:00
glassmancody.info
16f80ec6f3
Update settings when using fallback
2021-04-13 11:09:49 -07:00
glassmancody.info
4ba473b684
Finalize settings, torch fix
2021-04-13 11:09:49 -07:00
glassmancody.info
71c30a31df
in-game settings, some require restart
2021-04-13 11:09:49 -07:00
glassmancody.info
3d713e8602
Fix incorrect minimum ambient
2021-04-13 11:09:49 -07:00
glassmancody.info
280fd2b162
Merge remote-tracking branch 'upstream/master' into why_are_the_christmas_lights_still_up
2021-04-13 11:09:35 -07:00
glassmancody.info
cc31e1eea1
Ambient luminance threshold setting
2021-04-13 11:09:35 -07:00
glassmancody.info
690995988b
More formatting, OpenCS cells are unbroken
2021-04-13 11:09:35 -07:00
glassmancody.info
142c6d2993
Enable groundcover lighting for non FFP
2021-04-13 11:09:35 -07:00
glassmancody.info
328ec85757
Code review cleanup, add setting documentation
2021-04-13 11:09:35 -07:00
glassmancody.info
7370acdf54
Merge remote-tracking branch 'upstream/master' into why_are_the_christmas_lights_still_up
2021-04-13 11:09:19 -07:00
glassmancody.info
43ac32921c
Rewrite, support different lighting methods
2021-04-13 11:09:19 -07:00
glassmancody.info
9d9074c244
Add shared UBO
2021-04-13 11:07:48 -07:00
glassmancody.info
c5ea966f24
Merge remote-tracking branch 'upstream/master' into why_are_the_christmas_lights_still_up
2021-04-13 11:06:16 -07:00
glassmancody.info
dda735c54a
initial commit
2021-04-13 11:06:16 -07:00
psi29a
0a6ef9c1bd
Merge branch 'swim_when_follow' into 'master'
...
Allow actors to find path over water surface (#5943 )
See merge request OpenMW/openmw!731
2021-04-13 07:19:54 +00:00
Evil Eye
56ede535b5
Don't perform a hit test outside the page's bounds
2021-04-12 08:31:45 +02:00
psi29a
0818a10df2
Merge branch 'baby_dont_throw_me_no_more' into 'master'
...
Catch exceptions in ResolutionListener
Closes #5946
See merge request OpenMW/openmw!727
2021-04-12 06:12:19 +00:00
elsid
28fc21792e
Allow water walking actors to find path over water surface
2021-04-11 21:59:28 +02:00
elsid
634556be9d
Add setting to allow following creatures to find path over water surface
2021-04-11 21:59:28 +02:00
fredzio
32981bcd88
Constify a few things
2021-04-11 14:46:51 +02:00
fredzio
efb241f1de
Use override instead of virtual
2021-04-11 14:46:51 +02:00
fredzio
fda639eb57
Remove unused forward declarations
2021-04-11 14:46:51 +02:00
Evil Eye
b91be1e803
Catch exceptions in ResolutionListener
2021-04-11 14:12:31 +02:00
psi29a
301411c5c5
Merge branch 'esm_variant' into 'master'
...
Use std::variant for ESM::Variant implementation
See merge request OpenMW/openmw!719
2021-04-10 12:53:11 +00:00
psi29a
603e4206fd
Merge branch 'teleport_here_not_there' into 'master'
...
Fix #5919 (and another bug)
Closes #5919
See merge request OpenMW/openmw!722
2021-04-10 12:51:42 +00:00
Andrei Kortunov
f984e96b34
Use conventional names for atan2 arguments
2021-04-10 12:23:03 +04:00
Andrei Kortunov
1db369f418
Do not use unchecked value in calculations
2021-04-10 11:26:54 +04:00
Andrei Kortunov
903b89a0ff
Add bound for UI scale factor, as it specified in docs
2021-04-10 11:21:53 +04:00
Andrei Kortunov
c989fac67b
Add bound for pointers cache size, as it specified in docs
2021-04-10 11:20:12 +04:00
Andrei Kortunov
124a33d8a3
Fix uninitialized variables
2021-04-10 10:58:00 +04:00
Andrei Kortunov
b96929f3fc
Avoid division by zero
2021-04-10 09:52:46 +04:00
fredzio
8874a5be22
Change (again) the way SetPos behave.
...
Instead of registering the desired change of position and rely on
physics simulation to apply it to the world, immediately change the
position in the world without reset the simulation.
2021-04-09 23:34:03 +02:00
fredzio
6e1c67a9ae
Account for waterwalking when updating position. Otherwise we might
...
trace down the actor at waterlevel at the wrong coordinate.
Triggered by multimark mod with waterwalking effect.
2021-04-09 23:33:21 +02:00
psi29a
484c46cb58
Merge branch 'hrtf-setting' into 'master'
...
Add Audio settings to openmw-launcher
See merge request OpenMW/openmw!692
2021-04-09 19:28:08 +00:00
Simon Meulenbeek
75b4871bab
Add Audio settings to openmw-launcher
2021-04-09 19:28:08 +00:00
Jonas Tobias Hopusch
799cf16f31
Attempt to fix #5942
...
Closes OpenMW/openmw#5942
This is an attempt to apply the fix suggested by @Capostrophic
2021-04-09 18:16:05 +02:00
psi29a
fe2a97ee39
Merge branch 'wizard-link' into 'master'
...
Implement #3983 - Add page to the wizard with links to buy morrowind
Closes #3983
See merge request OpenMW/openmw!693
2021-04-08 20:57:50 +00:00
tess
6f7e8d9f59
Implement #3983 - Add page to the wizard with links to buy morrowind
2021-04-08 20:57:50 +00:00
psi29a
4f86eddc96
Merge branch 'CreateBsaAddFileToBsa' into 'master'
...
Create BSA, add file to existing BSA
See merge request OpenMW/openmw!718
2021-04-08 20:00:15 +00:00
elsid
8e1c92d9af
Use std::variant for ESM::Variant implementation
2021-04-08 19:39:31 +02:00
elsid
7f577f5f08
Do not compare hash in tests
...
Different std libraries have different implementation that produce different
results for the same values.
2021-04-08 19:39:30 +02:00
psi29a
a16387df61
Merge branch 'sky-dehardcode' into 'master'
...
De-hardcode references to mesh files used by the sky.
See merge request OpenMW/openmw!704
2021-04-08 16:32:39 +00:00
Matjaž Lamut
2cb4b62b83
De-hardcode references to mesh files used by the sky.
2021-04-08 16:32:38 +00:00
CedricMocquillon
d617d66a87
Add file to BSA
2021-04-08 18:08:28 +02:00
psi29a
8cb3681c12
Merge branch 'esm_variant_tests' into 'master'
...
Add tests for ESM::Variant
See merge request OpenMW/openmw!712
2021-04-08 13:32:07 +00:00
Jacob Turnbull
d9376ee08e
Trim down comment and change flag name
2021-04-07 16:57:06 -05:00
Evil Eye
44f2cb0923
Fix targeted scripts losing their targets when rearranging your load order
2021-04-07 17:30:21 +02:00
Andrei Kortunov
59720aea9a
Restore old aiming for melee combat
2021-04-07 12:07:03 +04:00
Jacob Turnbull
bc8db8b8f5
Fix for enchanted items being removed on item equip cycling when they are re-equipped
2021-04-06 20:12:51 -05:00
psi29a
9aa5aef2c6
Merge branch 'my_other_mr_is_larger' into 'master'
...
Make AddItem's quantity overflow on negative numbers
Closes #5934
See merge request OpenMW/openmw!713
2021-04-05 11:45:31 +00:00
elsid
bd33fa76b6
Use CRTP to define CustomData clone function
2021-04-05 11:53:07 +02:00
elsid
e380470558
Add move ctor and assignment operator to RefData
2021-04-05 11:53:07 +02:00
elsid
045bb7cbd7
Store CustomData and ContainerStore as unique_ptr
2021-04-05 11:52:52 +02:00
Evil Eye
ecde3932e2
Make AddItem's quantity overflow on negative numbers
2021-04-05 09:43:37 +02:00
elsid
dae3f022ba
Add tests for ESM::Variant
2021-04-04 23:09:50 +02:00
fredzio
9cae7882dd
Fix a bug that was triggered with multi mark mod.
...
When a script calls SetPos for x,y,z in sequence on an actor, we need to make sure
that the actor will not spawn under ground at x,y coordinates.
Now that change of coordinates are cumulated and applied all at once, we
need to account for the whole offset.
To this end move the terrain height check inside of Actor class.
2021-03-31 19:34:06 +02:00
fredzio
0fac172413
Remove wrong line that slipped in yesterday.
2021-03-29 21:46:08 +02:00
Andrei Kortunov
50352daf90
Rework knockdown and knockout animations fallbacks
2021-03-29 14:45:07 +04:00
Evil Eye
582f1503c1
Merge branch 'setpos' into 'master'
...
Unbreak SetPos and the mods using it (#5919 )
See merge request OpenMW/openmw!696
2021-03-28 20:14:17 +00:00
fredzio
7a67492d81
Unbreak SetPos and the mods using it.
...
To make SetPos works with async physics, it was modified to register a
position offset that would be applied to the real position during the
simulation.
A common pattern to teleport NPC in scripts is a sequence of SetPos/Disable/Enable in the same frame.
Since Disable/Enable creates a new physics actor using last known
RefData::Position, the registered offset never get a chance to be applied.
Modify disable() to call moveObject with the offset applied, so that the newly created physics actor will have up-to-date position
2021-03-28 21:19:14 +02:00
fredzio
b58244ac26
Guard the Bullet drawing method with a read lock on the
...
btCollisionWorld. It closes a race on the collision shapes coordinates.
2021-03-26 23:49:31 +01:00
fredzio
dbd6e3bfee
Replace pointless usage of shared_ptr by unique_ptr / non-owning raw
...
pointer for btCollisionWorld.
2021-03-26 23:49:31 +01:00
fredzio
ccd3cbc69a
Use saved actor position instead of reading again RefData in unstuck. It
...
is a race condition to do so.
2021-03-26 23:49:31 +01:00
Andrei Kortunov
5fce5b12f4
Merge branch 'drop_the_bird' into 'master'
...
Disallow inserting containers, creatures, and npcs from the save game not present in content files
Closes #5884
See merge request OpenMW/openmw!683
2021-03-26 15:48:17 +00:00
Andrei Kortunov
b61337643e
Merge branch 'issue-5680' into 'master'
...
change aim calculation
See merge request OpenMW/openmw!685
2021-03-26 11:43:20 +00:00
elsid
f2ebad5115
Return cached element when set existing
2021-03-25 19:28:41 +01:00
elsid
b9a40bc5fc
Add NavMeshTilesCache benchmarks
2021-03-25 19:28:41 +01:00
Max
2cd96e56d5
create constant and use constant in other parts of the code base
2021-03-24 14:54:46 -07:00
Max
e56efdd562
change aim calculation
2021-03-24 14:54:46 -07:00
elsid
453e94ea9f
Use half extents for destination distance tolerance in AiEscort
...
For actors moving in water destination may be located at such z coordinate
that they can't reach.
2021-03-24 00:07:28 +01:00
elsid
f32e1790bc
Add half extents to AiEscord max distance
...
For actors with big bounding box given constants may not work properly like
it's not possible to get close enough to actor from a given angle to make it
move.
2021-03-23 23:49:57 +01:00
elsid
39c0ce9ddf
Build limited path for far destinations
...
When distance between start and end point is greater than max radius of area
possibly covered by navmesh there is no way to find path via navmesh. Also if
distance is greater than cell size navmesh might not exists withing mentioned
area because cell is not loaded therefore navmesh is not generated. So minumum
of these values is used to limit max path distance. Assuming that path
actually exists it's possible to build path to the edge of a circle. When
actor reaches initial edge path is built further. However it will not be
optimal.
2021-03-23 23:23:12 +01:00
Evil Eye
cf5a93d712
Also run NPC validation for modified base records
2021-03-23 21:07:57 +01:00
Evil Eye
e79036f4e0
Don't erase the player
2021-03-23 20:43:52 +01:00
psi29a
1af50b7e23
Merge branch 'sound_cleanup' into 'master'
...
Sound cleanup
See merge request OpenMW/openmw!567
2021-03-22 21:42:01 +00:00
psi29a
415591b7ed
Merge branch 'ai_reaction_deviation' into 'master'
...
Distribute AI reactions and engage combat calls over time
See merge request OpenMW/openmw!674
2021-03-22 21:37:09 +00:00
Evil Eye
5e1960a76a
Disallow inserting containers, creatures, and npcs from the save game not present in content files
2021-03-22 22:29:10 +01:00
Evil Eye
8e9bd5c0bd
Don't throw an exception when equipping a bound item fails
2021-03-22 20:44:13 +01:00
Evil Eye
580fa78034
Don't purge summon effects with invalid creature ids
2021-03-22 20:43:34 +01:00
wareya
63f01d8c5f
Prevent physics death spiral by falling back to true delta time when needed
2021-03-21 20:45:46 +00:00
psi29a
86bd173d69
Merge branch 'refactoring' into 'master'
...
"static const" -> "static constexpr" in headers
See merge request OpenMW/openmw!676
2021-03-21 15:43:47 +00:00
Petr Mikheev
7bbbe40abe
"static const" -> "static constexpr" in headers
2021-03-21 13:57:54 +01:00
wareya
e722c99e62
forgot to initialize these variables
2021-03-21 08:57:15 -04:00
wareya
40265bf118
make unstucking slightly smarter (can turn itself off, also acts like flat ground)
2021-03-20 21:14:56 -04:00
elsid
62c0ecbbd0
Separate engage combat timer for each actor
...
Use DeviatingPeriodicTimer to distribute calls over time. This reduces
stuttering and make AI more natural.
2021-03-20 14:50:56 +01:00
elsid
675c0ab72f
Apply uniform random deviation to AI reaction timer
...
This allows to distribute AI reaction calls over time.
Before this change actors appearing at the same frame will react in the same
frame over and over because AI reaction period is constant. It creates a
non-uniform CPU usage over frames. If a single frame has too many AI reactions
it may cause stuttering when there are too many actors on a scene for current
system.
Another concern is a synchronization of actions between creatures and NPC.
They start to go or hit at the same frame that is unnatural.
2021-03-20 14:47:54 +01:00
Andrei Kortunov
54daa234bd
Reset watched stats upon reload or new game start
2021-03-19 11:56:14 +04:00
wareya
1471ef003a
fix async physics interpolation
2021-03-18 13:53:00 -04:00
AnyOldName3
162b25c180
Fix sunglare on Mesa
...
The sunglare works by comparing an occlusion query with depth testing on
against one with depth testing off to determine if there's anything
closer to the camera than the maximum depth buffer value. For the depth-
tested query, the depth range is set from 1 to 1 so it's always drawn at
the maximum distance. Originally, we had the depth function set to LESS,
meaning that the query would always fail as 1 is not less than 1, but
also glPolygonOffset was used to move the query by "the smallest value
that is guaranteed to produce a resolvable offset for a given
implementation" closer to the camera. While other driver and hardware
combinations do that, Mesa seems to be clamping to the depth range, so
still failing.
Instead, it's simpler to just get rid of the polygon offset and change
the depth test to LEQUAL as 1 *is* less than or equal to 1, but not than
any other possible depth buffer value.
2021-03-17 01:46:04 +00:00
Evil Eye
d1e8c6b223
Merge branch 'magical_rat' into 'master'
...
Register copied Spells with SpellList
See merge request OpenMW/openmw!662
2021-03-16 19:50:15 +00:00
AnyOldName3
ba74fbf30e
Fix MyGUI log
...
Also actually print an error to the regular log when the MyGUI log can't
be opened so we notice if we kill it again in under five years.
2021-03-15 22:35:13 +00:00
Bret Curtis
40c989d732
allman style
2021-03-14 22:11:18 +01:00
Evil Eye
c2580d60e9
Register copied Spells with SpellList
2021-03-14 19:32:03 +01:00
Bret Curtis
9fc0649fb6
a better check to avoid the mCell assertion, so compariing nullptr to current cell will refurn false anyway
2021-03-14 18:08:52 +01:00
Bret Curtis
49545e6d29
add comments as to why we need to check that the player is grounded or not; only run once during initial cell loading
2021-03-14 18:02:48 +01:00
Bret Curtis
fff1df9ee4
revert some blank lines
2021-03-14 18:02:48 +01:00
Bret Curtis
c067782814
proper fix that traces down the player when a cell is loaded; we also only run once if the current cell being loaded is the one that the player is in.
2021-03-14 18:02:48 +01:00
Bret Curtis
1479f98793
hacky solution with debug; seems that player is added before cell so tracing down will not find anything
2021-03-14 18:02:48 +01:00
Bret Curtis
19ad7d7f0c
Resolve #5895 by setting the initial mOnGround state to false; we do this because the movement solver runs one frame behind so when we run through the loop the first time we assume we are on the ground even though we may be 400 units in the air.
2021-03-14 18:02:48 +01:00
psi29a
514a55ed4c
Merge branch 'fix_5846' into 'master'
...
Fix #5846 (headtracking)
Closes #5846
See merge request OpenMW/openmw!652
2021-03-14 01:56:07 +00:00
glassmancody.info
6255b0492b
Resolve crashes on exit with visible MyGUI widgets
2021-03-13 15:43:46 -08:00
Petr Mikheev
447c3b9489
Fix 5846
2021-03-13 21:54:49 +01:00
elsid
9275dd2dcb
Avoid virtual dispatch in SoundManager dtor
2021-03-13 18:25:56 +01:00
elsid
b0311ce9f1
Remove DEFAULT_OUTPUT macros
2021-03-13 18:25:56 +01:00
elsid
e30a59772c
Remove DEFAULT_DECODER macros
2021-03-13 18:25:48 +01:00
Evil Eye
4db2f79a3c
Merge branch 'setpos' into 'master'
...
Use relative movement inside of SetPos
See merge request OpenMW/openmw!649
2021-03-13 12:58:48 +00:00
fredzio
cb39f8fb01
Use moveObjectBy in SetPos
2021-03-13 09:53:21 +01:00
fredzio
03b86c232b
Apply the position offset even if the simulation is not performed
...
because we're too fast.
2021-03-13 09:52:05 +01:00
psi29a
311b497491
Merge branch 'bullet-heightfield-floats' into 'master'
...
Avoid heightfield conversion in newer Bullet
See merge request OpenMW/openmw!647
2021-03-13 08:32:01 +00:00
psi29a
cc6f08930b
Merge branch 'alpha-meddling' into 'master'
...
Replace deprecated alpha test in shader visitor
Closes #4899
See merge request OpenMW/openmw!473
2021-03-13 08:13:19 +00:00
AnyOldName3
0431ba4c87
Merge branch 'alpha-meddling-shader-side-mip-meddling' into alpha-meddling
2021-03-13 01:23:30 +00:00
AnyOldName3
f09b0fc1bd
Put groundcover alphafunc where shader visitor can see it
...
I'd already made this change so don't know why it disappeared instead of
being included in b8ee32e3
2021-03-12 17:21:36 +00:00
Gleb Mazovetskiy
351d11449b
Avoid heightfield conversion in newer Bullet
...
Takes advantage of the direct `float` support implemented in
https://github.com/bulletphysics/bullet3/pull/3293
2021-03-11 23:52:12 +00:00
Andrei Kortunov
39b7260ab4
Fix a crash during new game
2021-03-11 11:46:44 +04:00
AnyOldName3
64ddb4c1b0
Fix linking on MacOS
2021-03-11 01:01:55 +00:00
psi29a
9f47190411
Merge branch 'now-it-blends' into 'master'
...
Convert blending factors properly for the character preview
See merge request OpenMW/openmw!644
2021-03-10 23:27:04 +00:00
AnyOldName3
cb2cbb4181
Convert blending factors properly for the character preview
2021-03-10 22:07:14 +00:00
Chris Djali
9bfe941d4b
Merge pull request #3050 from akortunov/master
...
Double-buffer shader water stateset
2021-03-10 15:56:40 +00:00
Andrei Kortunov
38679013fe
Give meaningful name to the mEffectFade
2021-03-10 19:10:17 +04:00
Gleb Mazovetskiy
1db7d2ec4e
Restore compatibility with FFMpeg < 57.80.100
...
This should fix macOS Travis build broken by 58d33aa95b
2021-03-08 19:29:34 +00:00
AnyOldName3
deb184cdce
Merge branch 'fix-build' into 'master'
...
Fix linking with `-DOPENMW_USE_SYSTEM_OSG=ON -DOSG_STATIC=ON`
See merge request OpenMW/openmw!640
2021-03-08 19:01:02 +00:00
psi29a
611a63acc6
Merge branch 'threesacharm' into 'master'
...
Attempt to fix restocking items in old saves
Closes #5823
See merge request OpenMW/openmw!580
2021-03-08 10:45:13 +00:00
psi29a
194875dec1
Merge branch 'fix-video-arm' into 'master'
...
osg-ffmpeg-videoplayer: Fix crash on ARM
Closes #5807
See merge request OpenMW/openmw!564
2021-03-08 08:05:25 +00:00
Andrei Kortunov
d805886de7
Double-buffer shader water stateset (bug #5026 )
2021-03-08 10:58:51 +04:00
Gleb Mazovetskiy
58d33aa95b
AV: Fix all memory leaks
...
The most substantial memory leak came from `PacketQueue::get`
not unreferencing its argument packet.
Other leaks came from using `av_free` instead of type-specific free
functions.
Also modifies `PacketQueue::put` for readability.
2021-03-08 03:16:55 +00:00
Chris Djali
213525c372
Merge pull request #3049 from akortunov/master
...
Use correct mCursorActive flag initial value
2021-03-07 15:35:38 +00:00
Alexei Dobrohotov
e9aa161ffc
Merge branch 'reallyskipphysics' into 'master'
...
Close race that breaks scripted teleporting (#5873 )
See merge request OpenMW/openmw!639
2021-03-07 08:41:20 +00:00
Andrei Kortunov
482f04c836
Use correct mCursorActive flag initial value
2021-03-07 12:08:43 +04:00
Gleb Mazovetskiy
455be9dbbb
Fix linking with -DOPENMW_USE_SYSTEM_OSG=ON -DOSG_STATIC=ON
...
1. CMake's built-in OSG finder does not use pkgconfig, so we have to
manually ensure the order is correct for inter-library dependencies.
https://gitlab.kitware.com/cmake/cmake/-/issues/21701
2. OSG plugin pkgconfig files are missing dependencies on the underlying
libraries (e.g. freetype, png, jpeg), so we have to link them manually.
https://github.com/openscenegraph/OpenSceneGraph/issues/1052
2021-03-06 21:17:52 +00:00
fredzio
31d8ce266b
Close a race between main and physics threads when actor is positioned by scripts.
...
When a position is forced, the actor position in physics subsystem is
overriden. The background physics thread is not made aware of this,
its result are simply discarded.
There is a short window where this doesn't work (in this
example, actor is at A and script moves it to B)
1) actor position is set to B. (among others, Actor::mPosition is set to B)
2) physics thread reset Actor::mPosition with stale value (around A)
3) main thread read simulation result, reset Actor::mSkipSimulation flag => actor is at B
4) physics thread fetch latest Actor::mPosition value, which is around A
5) main thread read simulation result, actor is around A
To avoid this situation, do not perform 2) until after 3) occurs. This
way, at 4) starts the simulation with up-to-date Actor::mPosition
2021-03-06 10:41:55 +01:00
Alexei Dobrohotov
2bfee281fd
Merge branch 'restore_caster' into 'master'
...
Restore projectile caster from savegame (#5860 )
See merge request OpenMW/openmw!616
(cherry picked from commit d595c7adb0fb45eafed6d3d0403ad640a91411ed)
c5426bec In the savegame, projectile caster is identified by its actor id. When
2021-03-05 21:07:29 +00:00
Evil Eye
c9d3da498a
Merge branch 'pursue' into 'master'
...
AIPursue: Pursue the player until LOS is established (#5869 )
Closes #5869
See merge request OpenMW/openmw!634
2021-03-05 16:45:47 +00:00
Evil Eye
8ae4ee291f
Attempt to fix restocking items in old saves
2021-03-04 22:52:03 +01:00
Dobrohotov Alexei
fc329050b3
AIPursue: Pursue the player until LOS is established ( #5869 )
2021-03-03 22:06:58 +03:00
Alexei Dobrohotov
5e91af230d
Reset effect icon transparency when they're hidden ( #5877 )
2021-03-03 21:17:59 +03:00
Gleb Mazovetskiy
4495b67d77
MyGUI HEAD compatibility
...
Makes OpenMW compatible with the current MyGUI HEAD at:
f93d4fb614
Refs #5806
2021-03-02 13:24:30 +00:00
Evil Eye
e2fc5d87b3
Merge branch 'elemental_shields' into 'master'
...
Don't let elemental shields harm the player in god mode
Closes #5875
See merge request OpenMW/openmw!631
2021-03-02 06:45:38 +00:00
Alexei Dobrohotov
023bc80f55
Don't let elemental shields harm the player in god mode
2021-03-01 21:37:30 +00:00
psi29a
eb11e1fcdb
Merge branch 'build-accelerator' into 'master'
...
heightfield: Only `buildAccelerator` on Bullet 2.89+
Closes #5874
See merge request OpenMW/openmw!630
2021-03-01 09:14:04 +00:00
Gleb Mazovetskiy
1fb442e701
heightfield: Only buildAccelerator
on Bullet 2.89+
...
Fixes #5874
2021-03-01 08:27:24 +00:00
elsid
fac5759748
Set bounding min and max height for btHeightfieldTerrainShape
...
They must be set for proper AABB based filtering. Use
+-max(abs(min), abs(max)) to make sure bullet does not shift coordinates by z.
2021-02-28 20:49:22 +01:00
elsid
fdca76ce86
Remove unused includes
2021-02-28 20:44:56 +01:00
psi29a
28be5a259b
Merge branch 'russian_console' into 'master'
...
Don't assume unmapped keycodes outside the extended ASCII range are unprintable
Closes #5871
See merge request OpenMW/openmw!622
2021-02-26 23:28:01 +00:00
psi29a
937549c99e
Merge branch 'fix_still_actors' into 'master'
...
Make actor flee from a combat when cannot reach a target (#5851 )
See merge request OpenMW/openmw!601
2021-02-26 23:25:05 +00:00
psi29a
20e6db917b
Merge branch 'fix-osg-static' into 'master'
...
CMake: Fix support for OSG static lib paths
See merge request OpenMW/openmw!624
2021-02-26 23:20:52 +00:00
AnyOldName3
f5a87ee46d
Refactor out duplicated RTT setup code
2021-02-26 19:01:27 +00:00
Gleb Mazovetskiy
21a70b7d2b
heighfield: buildAccellerator()
...
This enables accelleration of heightfield collisions.
Unfortunately, `btHeightfieldTerrainShape::processAllTriangle` does not
yet use the accellerator data, so this change does not improve
performance yet but might do so in future bullet versions.
References:
* Accellerator introduced in:
https://github.com/bulletphysics/bullet3/pull/2062
* Feature request to use the accellerator in `processAllTriangle`:
https://github.com/bulletphysics/bullet3/issues/3276
2021-02-26 14:38:06 +00:00
Gleb Mazovetskiy
13c5b1b0c5
CMake: Fix support for OSG static lib paths
...
`$<TARGET_FILE:...>` fails if the argument is already a path (instead of
a library name). This happens when a static library is found via
`osg_find_library`.
If the argument contains `/` or `.`, do not use `$<TARGET_FILE:...>`
2021-02-26 10:48:09 +00:00
Alexei Dobrohotov
a292a31cb3
Merge branch 'you_and_i_code' into 'master'
...
Fix Ctrl U/W behaviour to work with unicode text
See merge request OpenMW/openmw!621
2021-02-25 23:11:03 +00:00
Evil Eye
6e0f070cd1
Don't assume unmapped keycodes outside the extended ASCII range are unprintable
2021-02-25 21:37:21 +01:00
Evil Eye
a616af822e
Fix Ctrl U/W behaviour to work with unicode text
2021-02-25 19:33:11 +01:00
AnyOldName3
4ed67d8597
Improve A2C setting name
2021-02-24 18:01:06 +00:00
AnyOldName3
c7ee5d21dc
Make the dummy texture for the character preview even more shadow-friendly
2021-02-23 23:24:40 +00:00
AnyOldName3
2b144ff3dd
Merge branch 'fix_frame_rate_limit' into 'master'
...
Fix frame rate limit (#5686 )
See merge request OpenMW/openmw!603
2021-02-21 16:20:51 +00:00
AnyOldName3
9be258d260
Make it possible to reinstate FFP state easily
2021-02-19 19:59:48 +00:00
psi29a
5c0214142b
Merge branch 'static-build' into 'master'
...
Optional local source builds of OSG, MyGUI, Bullet
See merge request OpenMW/openmw!547
2021-02-19 16:58:05 +00:00
psi29a
bcbe144a1d
Merge branch 'weatheralpha' into 'master'
...
Fix weather particle fading
Closes #5455
See merge request OpenMW/openmw!506
2021-02-19 16:50:38 +00:00
psi29a
87d80b3d0a
Merge branch 'loading_screen_race_condition' into 'master'
...
Fix a race condition in loading screen.
See merge request OpenMW/openmw!568
2021-02-18 22:37:47 +00:00
psi29a
59e09cba5b
Merge branch 'boltsize' into 'master'
...
Use projectile mesh size (#5829 )
See merge request OpenMW/openmw!587
2021-02-15 08:40:30 +00:00
elsid
561628087c
Merge branch 'profiler_fix' into 'master'
...
Fix profiler glitches (#5850 )
See merge request OpenMW/openmw!605
2021-02-15 00:01:06 +00:00
AnyOldName3
4f510d85ba
Merge remote-tracking branch 'upstream/master' into alpha-meddling
2021-02-14 22:42:55 +00:00
AnyOldName3
6291b9304b
Log when icon is missing and fallback is used
2021-02-14 16:56:21 +00:00
uramer
e7afbc74d8
Wizard: Only allow to select Morrowind.esm master files, display an error if Morrowind.bsa is missing
2021-02-14 10:34:13 +01:00
elsid
8dba61f7ae
Use navmesh raycast to find reachable position around target
2021-02-14 04:14:22 +01:00
elsid
becccf3b5e
Make actor flee from a combat when cannot reach a target
2021-02-12 22:58:53 +01:00
fredzio
9d90e250cf
Physics is not running while paused, so zero the stats for the async
...
thread instead of keeping whatever value was before the pause.
2021-02-12 19:33:08 +01:00
elsid
8ab5fd9b40
Fix frame rate limit
...
Measure time at the computation end but before sleep. This allows to adjust
sleep interval for the next frame in case sleep is not precise due to syscall
overhead or too low timer resolution.
Remove old frame limiting mechanism.
2021-02-12 00:03:11 +01:00
Evil Eye
2e73d2c145
Fallback to default cell name for door destination
2021-02-10 22:13:04 +01:00
psi29a
c33b2e0100
Merge branch 'dehardcodebaseanim' into 'master'
...
Dehardcode Base_animation and improve Collada support
See merge request OpenMW/openmw!510
2021-02-10 16:29:47 +00:00
Sergey Fukanchik
f3271cb66b
Add unit test for swapEndiannessInplace(). Part of Bug #5837
2021-02-09 13:09:36 -05:00
AnyOldName3
da6223fc4b
Use default icon.tga when inventory icon is missing
2021-02-07 23:27:45 +00:00
psi29a
7a9eb34403
Merge branch 'master' into 'freeunrealestate'
...
# Conflicts:
# CHANGELOG.md
2021-02-07 21:03:51 +00:00
psi29a
31f41836a1
Merge branch 'no_stuck_in_proj' into 'master'
...
Don't let projectiles push actors out of the world (#5802 )
See merge request OpenMW/openmw!595
2021-02-07 20:37:46 +00:00
fredzio
b78820de55
Ignore projectiles inside of MovementSolver::unstuck. It is normal for actors to be inside of a
...
projectile collision shape.
A side effect of moving actors outside of projectile collision shape is that if both the actor and the projectile are
near a wall, the actor could get moved outside of the world.
2021-02-07 18:32:03 +01:00
Evil Eye
af0f94f03e
Play damage sound when hurt by elemental shields
2021-02-07 12:55:10 +01:00
Evil Eye
f1caeea444
Don't return negative values from GetMagicka
2021-02-07 11:58:23 +01:00
Evil Eye
e4cd89643f
Merge branch 'master' of gitlab.com:OpenMW/openmw into freeunrealestate
2021-02-07 00:17:14 +01:00
Evil Eye
6aa75c287a
Don't check magicka when casting free spells
2021-02-07 00:15:01 +01:00
psi29a
e6607486f5
Merge branch 'jfmherokiller-master-patch-23743' into 'master'
...
Fix the regression involving Cure
See merge request OpenMW/openmw!582
2021-02-06 15:41:24 +00:00
psi29a
f63af685c0
Merge branch 'bemorenegative' into 'master'
...
Allow negative values for ai stats
Closes #5835
See merge request OpenMW/openmw!586
2021-02-06 15:38:34 +00:00
fredzio
6e969ca3fa
Use mesh collision box instead of node bounding sphere for projectile
...
size. The bounding sphere is much bigger than the mesh.
2021-02-05 22:53:45 +01:00
Evil Eye
3007cb14a9
Also allow negative AI values in dialogue
2021-02-05 19:00:35 +01:00
Noah Gooder
e42b67ee50
Modified actors.cpp and Authors.md
2021-02-05 17:59:36 +00:00
Alexei Dobrohotov
cc220861e3
Merge branch 'character-preview-opacity-without-shadows' into 'master'
...
Make the dummy texture for the character preview shadow-friendly
See merge request OpenMW/openmw!585
2021-02-04 22:45:58 +00:00
Evil Eye
61e014a765
Allow negative values for ai stats
2021-02-04 21:25:38 +01:00
elsid
489107c5ee
Count navmesh cache key once in item size
...
Key is stored only in NavMeshTilesCache::Item, TileMap uses KeyView with
a pointer to a vector.
2021-02-04 00:44:23 +01:00
Nelsson Huotari
e91d1a2b42
Fix earlier broken commit
2021-02-03 21:16:26 +02:00
AnyOldName3
0639f8b7c6
Make the dummy texture for the character preview shadow-friendly
2021-02-03 18:45:22 +00:00
Nelsson Huotari
384112746c
Add option for custom collision node with non-nif files
2021-02-03 14:25:09 +02:00
Jordan Francis Moran-Meyers
0d1c073cfa
Fix the regression involving Cure
2021-02-01 18:34:10 +00:00
Petr Mikheev
94e8855c8c
Merge branch 'fix_5821' into 'master'
...
Fix #5821 : NPCs from mods getting removed if mod order was changed
Closes #5821
See merge request OpenMW/openmw!577
2021-01-31 09:34:26 +00:00
Petr Mikheev
157b14cdaa
Fix #5821 : NPCs from mods getting removed if mod order was changed
2021-01-29 22:53:02 +01:00
Petr Mikheev
9590377f22
Don't ignore Z in path finding if actor can move by Z.
2021-01-29 22:30:20 +01:00
Petr Mikheev
642ca02e35
Shorten almost straight paths only if smooth movement is enabled; reduce angle limit for the shortening.
2021-01-29 22:30:01 +01:00
Andrei Kortunov
b286397dd4
Merge pull request #3045 from akortunov/revert
...
Revert fix for 5379
2021-01-29 17:17:28 +04:00
Andrei Kortunov
7b727e4d70
Revert "Remove physics dependency on basenode"
...
This reverts commit 165c731492
.
2021-01-29 16:51:13 +04:00
Andrei Kortunov
165af1c365
Revert "Some actors are supposed to spawn on a static object that belong to an adjacent cell."
...
This reverts commit f031a191b8
.
2021-01-29 16:51:05 +04:00
Andrei Kortunov
f8e8496d36
Revert "Revert a wrong change introduced in MR 546"
...
This reverts commit 23137d0c54
.
2021-01-29 16:50:39 +04:00
Bret Curtis
9f168eab88
Merge pull request #3044 from akortunov/master
...
Avoid null dereference for objects without cells
2021-01-29 13:15:04 +01:00
uramer
ee2f0e7eb3
Fix inconsistent argument name
2021-01-28 23:47:38 +01:00
uramer
eca0d8b7ea
Fix typo in DropMode enum
2021-01-28 22:40:44 +01:00
uramer
edc6d5c3e7
Fix a typo in separate drop binds
2021-01-28 22:22:48 +01:00
uramer
36cd818155
Fix separate drop, refactor for code reuse
2021-01-28 22:10:33 +01:00
Andrei Kortunov
3b9f8b5fa2
Avoid null dereference for objects without cells
2021-01-28 18:37:47 +04:00
Andrei Kortunov
d984d13b1c
Merge branch 'animate_animated_objects' into 'master'
...
Unbreak animated objects (regression from !546 )
See merge request OpenMW/openmw!570
2021-01-28 14:12:24 +00:00
Andrei Kortunov
5382d38b9b
Merge branch 'hit_target_object' into 'master'
...
Unbreak targetted spell on objects (#5811 )
See merge request OpenMW/openmw!569
2021-01-28 14:09:45 +00:00
elsid
a3ab8dfbb4
Revert "Merge branch 'movement_fix2' into 'master'"
...
This reverts merge request !496
2021-01-28 12:48:19 +00:00
fredzio
23137d0c54
Revert a wrong change introduced in MR 546
...
A prerequisite to create physics objects for statics was to remove the
dependency on base node (since it doesn't yet exists) for object
position. It is still necessary for animation though.
Restore the basenode (and the associated FIXME) so that animated objects works properly.
2021-01-27 16:24:11 +01:00
Nelsson Huotari
83ee1cc582
fix xbase to baseanim
2021-01-27 13:41:05 +02:00
Nelsson Huotari
3194520dcd
Move base_anim settings to settings-default.cfg
2021-01-27 13:41:02 +02:00
Bret Curtis
b164f1aa17
Merge pull request #3023 from akortunov/grass_intsancing
...
Grass instancing
2021-01-27 12:21:24 +01:00
psi29a
699bd257ef
Merge branch 'camera_stats' into 'master'
...
Collect all available stats if OPENMW_OSG_STATS_FILE is set and point to a valid file.
See merge request OpenMW/openmw!526
2021-01-27 08:04:33 +00:00
Frederic Chardon
7cd7fa2f08
Collect all available stats if OPENMW_OSG_STATS_FILE is set and point to
...
a valid file.
2021-01-27 08:04:33 +00:00
fredzio
64475ebedb
Remove a brainfart from precise projectile handling: all non-actor
...
non-projectile objects were treated as ground.
2021-01-27 07:15:09 +01:00
Gleb Mazovetskiy
8737453498
cmake: Compiler-specific whole-archive macro
2021-01-26 19:00:55 +00:00
Gleb Mazovetskiy
99ba45a308
Optional static builds of OSG, MyGUI, Bullet
2021-01-26 19:00:55 +00:00
Andrei Kortunov
f40e227686
Remove redundant formatting changes
2021-01-26 22:29:41 +04:00
Andrei Kortunov
b975f16e6b
Remove redundant check - groundcover is not present in the CellStore
2021-01-26 22:29:41 +04:00
Andrei Kortunov
d12a0fdcb3
Mark only instances from groundcover files as groundcover objects
2021-01-26 22:29:41 +04:00
Andrei Kortunov
8874e88ff1
Drop fading setting
2021-01-26 22:29:41 +04:00
Andrei Kortunov
1a6c06f7b5
Do not allow to set distance to non-positive values
2021-01-26 22:29:41 +04:00
Andrei Kortunov
859cd0fd0c
Do not use display lists for instanced meshes
2021-01-26 22:29:41 +04:00
Andrei Kortunov
a09f03c850
Drop groundcover materials - they are not used
2021-01-26 22:29:41 +04:00
Andrei Kortunov
14cf0ce1dc
Implement instanced groundcover
2021-01-26 22:29:41 +04:00
madsbuvi
663e0a1055
Fix a race condition in loading screen.
2021-01-26 19:28:09 +01:00
Petr Mikheev
bc2cec86e9
Fix bug: NPCs doesn't move if the target is exactly above or exactly below.
2021-01-26 00:05:28 +01:00
psi29a
cadd1e7529
Merge branch 'daedric_fog' into 'master'
...
Don't nuke fog when bounds have changed
Closes #5469
See merge request OpenMW/openmw!522
2021-01-25 12:58:44 +00:00
psi29a
a8c5607aa6
Merge branch 'disableinfotablesorting' into 'master'
...
[OpenMW-CS] Info table dragging to move record order, disable sorting
See merge request OpenMW/openmw!538
2021-01-25 12:51:13 +00:00
psi29a
64b4472efa
Merge branch 'stand' into 'master'
...
Don't adjust actor position until all objects are loader (#5379 )
See merge request OpenMW/openmw!546
2021-01-25 12:12:43 +00:00
psi29a
c6f14cde20
Merge branch 'Show-level-multipliers-in-levelup-tooltip' into 'master'
...
Show level multipliers in levelup tooltip
Closes #5783
See merge request OpenMW/openmw!518
2021-01-25 10:01:39 +00:00
Cédric Mocquillon
3bb551a6f1
Show level multipliers in levelup tooltip
2021-01-25 10:01:39 +00:00
Evil Eye
59af819f97
Merge branch 'fix-mem-leak-2' into 'master'
...
Fix memory leak in MWInput
See merge request OpenMW/openmw!566
2021-01-24 16:05:30 +00:00
Gleb Mazovetskiy
fe815d3d8d
Fix memory leak in MWInput
...
mListener wasn't being cleaned up
2021-01-24 15:22:36 +00:00
Evil Eye
a2171875a0
Prevent nullptr access
2021-01-24 15:15:51 +01:00
fredzio
f031a191b8
Some actors are supposed to spawn on a static object that belong to an adjacent cell.
...
Since actors can be active in 3x3 grid around the player, we need to
first load all statics in a 5x5 grid around the player.
Split load and unloading in 2 phases. Add an mInactiveCells set into the
scene, which contains all cells inside the aforementioned 5x5 grid.
These cells contains only heightfields and physics objects of static
class.
2021-01-24 14:11:10 +01:00
fredzio
165c731492
Remove physics dependency on basenode
...
Necessary to be able to load physics objects from inactive cells.
2021-01-24 14:10:27 +01:00
psi29a
b28adafee4
Merge branch 'navcrash' into 'master'
...
Fix #5798
Closes #5798
See merge request OpenMW/openmw!554
2021-01-23 13:37:01 +00:00
Evil Eye
a401c517bf
Always unload height fields
...
loadCell always adds a height field, but unloadCell only removed it for
cells with height data. Reloading a cell overwrote the height field
added earlier (leading to its destruction) while the navigator retained
a reference to the now deleted collision shape, leading to a crash.
2021-01-23 00:56:46 +01:00
psi29a
0ec953380f
Merge branch 'opaque-character-preview-preprocessor' into 'master'
...
Always write opaque fragments instead of relying on blending being off for translucent RTT II: Daggerfall
Closes #5391
See merge request OpenMW/openmw!552
2021-01-22 10:33:16 +00:00
psi29a
d2c5de5211
Merge branch 'projectile_physics' into 'master'
...
Precise projectile physics (closes #4201 )
Closes #4201
See merge request OpenMW/openmw!550
2021-01-21 23:33:22 +00:00
fredzio
1f4c85520f
Use convexSweepTest for projectile movement to solve any
...
imprecision issue with projectile collision detection.
Simplify the mechanics: manage hits in one spot.
Give magic projectiles a collision shape similar in size to their visible
model.
Rename the 2 convex result callback to clearly state their purpose.
2021-01-21 20:36:33 +01:00
elsid
cc24f13b39
Remove duplicated sound_buffer entry
2021-01-21 13:08:50 +01:00
AnyOldName3
b6e92c9c6d
Use ShaderVisitor to skip translucent framebuffer specific stuff
2021-01-20 23:37:19 +00:00
AnyOldName3
8af8ad3840
Always write opaque fragments instead of relying on blending being off for translucent RTT
2021-01-20 01:17:16 +00:00
Alexei Dobrohotov
6d70a3f308
Merge branch 'jumpy' into 'master'
...
Don't run unstuck if there is no simulation running in async case (#5799 )
See merge request OpenMW/openmw!548
2021-01-19 15:04:49 +00:00
Nelsson Huotari
9f0f3eaeb2
Add collada to supported formats
2021-01-18 19:22:01 +02:00
Nelsson Huotari
54ea8eb5c7
Fix string corruption with Qt on linux-systems
2021-01-18 19:21:02 +02:00
fredzio
e37e5d4d16
Don't run unstuck if there is no simulation running in async case.
...
In this case, the actor mPreviousPosition is not updated, so the actor
position is interpolated between an old (stucked) position and the new
(unstucked) position. The new position is most likely "stucked", so the
unstuck code strikes again, making the actor "vibrates".
That's exactly what the sync code path does, and it doesn't exhibit this
behavior.
2021-01-18 17:45:57 +01:00
psi29a
9eba086c34
Merge branch 'sound_buffer_pool_2' into 'master'
...
Separate sound buffer pool from sound manager
See merge request OpenMW/openmw!520
2021-01-17 12:11:11 +00:00
Bret Curtis
e68651e9a6
Merge pull request #3042 from akortunov/helpers
...
Refactoring pre-requisites for groundcover
2021-01-13 23:09:01 +01:00
Nelsson Huotari
f2fc02cdff
Support filtered tables (mapToSource for indexes)
2021-01-13 15:55:16 +02:00
Nelsson Huotari
16e03c151a
Implement basic move algorithm, connect it to drag&drop
2021-01-13 15:38:29 +02:00
Andrei Kortunov
0418e8e7a6
Add an API to get base wind speed (which is from openmw.cfg)
2021-01-13 14:25:25 +04:00
Andrei Kortunov
f175beb304
Define template ref classes in components
2021-01-13 14:25:21 +04:00
psi29a
fd602e2c31
Merge branch 'viewdist' into 'master'
...
Downgrade FOV-dependent view distance factor to a recommendation
See merge request OpenMW/openmw!531
2021-01-12 19:51:21 +00:00
Bret Curtis
d944f703e8
Merge branch 'master' of gitlab.com:OpenMW/openmw
2021-01-12 19:58:56 +01:00
Bret Curtis
73740013a3
mResourceSystem initialization reorder
2021-01-12 19:58:46 +01:00
psi29a
abdc4cde95
Merge branch 'float' into 'master'
...
Allow all creatures to float to the water surface (#5790 , #5758 )
Closes #5758 and #5790
See merge request OpenMW/openmw!534
2021-01-12 18:45:10 +00:00
Alexei Dobrohotov
4638fc36b4
Allow all creatures to float to the water surface
2021-01-12 15:46:19 +03:00
psi29a
3903142152
Update apps/openmw/mwbase/environment.cpp
2021-01-12 12:05:17 +00:00
psi29a
654238fd18
Merge branch 'no_bonus_points' into 'master'
...
Show mesh origin
Closes #5771
See merge request OpenMW/openmw!507
2021-01-11 21:21:47 +00:00
psi29a
29fdcb3fa1
Merge branch 'hardlanding' into 'master'
...
Init mJumpState based on saved fallheight (#5739 )
See merge request OpenMW/openmw!532
2021-01-11 20:46:42 +00:00
Nelsson Huotari
70087e16fe
Disable dialogue info table sorting
2021-01-11 20:49:35 +02:00
fredzio
3087ce9c70
Use saved fallheight to determine a character's jump state.
...
The jump state initial state is "none", and it is set after physics simulation.
If a save is done just above the ground, the character may land before
the first run of the simulation, effectively cancelling the effect of
falling.
2021-01-11 18:38:20 +01:00
psi29a
acfd2cfd90
Merge branch 'dialogclonefix' into 'master'
...
[OpenMW-CS] Fix cloning in info records
See merge request OpenMW/openmw!524
2021-01-11 14:13:53 +00:00
Nelsson Huotari
93b1b444f2
Optimize CreateCommand and CloneCommand configuration
2021-01-11 12:53:34 +02:00
Alexei Dobrohotov
7be7af13d7
Downgrade FOV-dependent view distance factor to a recommendation
2021-01-11 06:53:23 +03:00
psi29a
6863c5a68f
Merge branch 'raii' into 'master'
...
Make all physics object manage their own resources.
See merge request OpenMW/openmw!527
2021-01-10 20:50:55 +00:00
Nelsson Huotari
7196ad7455
Implement an override-value when cloning, use when cloning info records
2021-01-10 21:23:52 +02:00
Evil Eye
1ab4683dce
Tweak follow distance to be more like the original
2021-01-10 16:29:32 +01:00
fredzio
d015f17a6c
Make all physics object manage their own resources
...
Use smart pointer for heightfields and their members.
Move collision object addition inside of Object's ctor, as for Actors and HeightFields
2021-01-10 14:56:35 +01:00
elsid
8b7f3fe908
Merge branch 'nodeadlock' into 'master'
...
Avoid a rare but possible deadlock around mCollisionWorldMutex.
See merge request OpenMW/openmw!525
2021-01-10 13:41:31 +00:00
Bret Curtis
b3f3b29bbe
Merge pull request #3039 from akortunov/screenshotmanager
...
Move screenshots handling to the separate class
2021-01-10 12:59:45 +01:00
Bret Curtis
a735bbe9a5
Merge pull request #3040 from akortunov/pvs
...
Fix some issues, found by PVS Studio
2021-01-10 12:58:17 +01:00
Evil Eye
e737bd00fa
Merge branch 'unused_param' into 'master'
...
Remove never used parameter from CharacterController::update()
See merge request OpenMW/openmw!523
2021-01-10 10:58:28 +00:00
Alexei Dobrohotov
c3a952c133
Merge branch 'dorsbien' into 'master'
...
Don't update magic effects when unequipping items to equip something else
Closes #5687
See merge request OpenMW/openmw!509
2021-01-10 08:04:07 +00:00
Evil Eye
a257567b80
Don't update magic effects when unequipping items to equip something else
2021-01-10 08:04:06 +00:00
Nelsson Huotari
3045d20a97
Make sure that vector isn't empty, just in case
2021-01-10 01:25:40 +02:00
Nelsson Huotari
5f1d3e0e2f
Use the Topic ID of the cloned target from topicinfos
2021-01-10 01:06:23 +02:00
psi29a
f7d7186c39
Merge branch 'instanceselectiontools' into 'master'
...
[OpenMW-CS] Cube and sphere instance selection
See merge request OpenMW/openmw!485
2021-01-09 21:35:07 +00:00
Nelsson Huotari
313e895912
[OpenMW-CS] Cube and sphere instance selection
2021-01-09 21:35:07 +00:00
fredzio
60f66f5e29
Remove never used parameter from CharacterController:update()
2021-01-09 21:28:27 +01:00
fredzio
9bc687e209
Avoid a rare but possible deadlock around mCollisionWorldMutex.
...
What happened is that the last handle to an Actor shared_ptr was a
promoted weak_ptr. When the shared_ptr goes out of scope, the Actor dtor
is invoked. That involves removing the Actor collision object after
exclusively locking mCollisionWorldMutex. In this case, the lock was
already held in the outter scope of the promoted weak_ptr.
Reduce the scope of the mCollisionWorldMutex to never encompass the
lifetime of a promoted weak_ptr.
2021-01-09 21:10:29 +01:00
Andrei Kortunov
ad101de733
Merge declaration and initialization
2021-01-09 22:58:54 +04:00
unknown
564a0d7d55
Don't nuke fog when bounds have changed
2021-01-09 18:25:46 +01:00
Andrei Kortunov
1930f8f37d
Fix copy-paste error
2021-01-09 20:03:12 +04:00
Andrei Kortunov
50e4600b16
Reduce code duplication
2021-01-09 20:00:51 +04:00
Andrei Kortunov
874348fb46
Remove redundant code
2021-01-09 19:19:38 +04:00
Mads Buvik Sandvei
a2d8a0b61a
engine.cpp typos
2021-01-09 14:44:15 +00:00
Andrei Kortunov
80ee1b55ea
Protect assignment operator from this == &src case
2021-01-09 18:28:26 +04:00
Andrei Kortunov
33da0af1d1
Use explicit calls for virtual methods in constructors
2021-01-09 18:25:48 +04:00
elsid
a6aba83741
Remove redundant SoundManager::lookupSound and loadSound
2021-01-09 14:11:49 +01:00
elsid
e4cce88142
Replace std::tie by structured binding
2021-01-09 14:09:27 +01:00
elsid
90c8e77e2c
Remove redundant default Sound_Buffer fields initialization
2021-01-09 14:08:54 +01:00
elsid
24f8a2db27
Use perfect forwarding in Sound_Buffer ctor
2021-01-09 14:07:30 +01:00
Andrei Kortunov
a80ee7a76a
Avoid possible memory leak in the mInterMessageBoxe field
2021-01-09 14:43:00 +04:00
Andrei Kortunov
8e5f26c109
Code cleanup
2021-01-09 14:41:10 +04:00
Andrei Kortunov
c9b885ffd4
Avoid possible null dereferencing
2021-01-09 14:24:04 +04:00
Andrei Kortunov
33648313a6
Initialize variables
2021-01-09 14:21:57 +04:00
Andrei Kortunov
c1512b8b6c
Convert loop to condition
2021-01-09 14:18:38 +04:00
Andrei Kortunov
56666c60d4
Remove dead code
2021-01-09 14:17:59 +04:00
Andrei Kortunov
8283ec6cad
Do not use & for boolean arguments
2021-01-09 14:03:48 +04:00
Andrei Kortunov
7fc4c9f3f6
Avoid dead code
2021-01-09 13:52:01 +04:00
Andrei Kortunov
801e2d6ad0
Avoid to use uninitialized variables
2021-01-09 13:36:40 +04:00
Andrei Kortunov
c5a36ad440
Do not cast enums to booleans
2021-01-09 13:19:41 +04:00
Andrei Kortunov
799bd3379c
Move screenshots handling to the separate class
2021-01-09 10:44:33 +04:00
elsid
944033db4e
Separate sound buffer pool from sound manager
2021-01-09 02:45:21 +01:00
AnyOldName3
2d61db555b
Merge branch 'osg_log' into 'master'
...
Split long osg log messages into lines.
See merge request OpenMW/openmw!519
2021-01-09 01:05:53 +00:00
Petr Mikheev
7d551b0cfd
Split long osg log messages into lines.
2021-01-08 23:21:39 +01:00
psi29a
cbce3ebb79
Merge branch 'stanky_fetcher' into 'master'
...
Consider a path completed if it was non-empty
Closes #5773
See merge request OpenMW/openmw!508
2021-01-08 21:47:38 +00:00
Evil Eye
2a583e2337
consider empty paths as not constructed
2021-01-08 17:24:13 +01:00
AnyOldName3
4ed3252001
Check for EXT_gpu_shader4 CPU-side
...
Mesa lies and always defines GL_EXT_gpu_shader4 even when the extension
isn't present.
2021-01-07 18:13:51 +00:00
psi29a
dc82cb61f4
Merge branch 'nativeshapesdebug' into 'master'
...
Unbreak physics debugger with projectiles' spherical shapes.
See merge request OpenMW/openmw!489
2021-01-04 09:07:28 +00:00
Alexei Dobrohotov
c17e498465
Merge branch 'launchercleanup' into 'master'
...
Remove deadcode from the launcher.
See merge request OpenMW/openmw!511
2021-01-03 08:48:52 +00:00
AnyOldName3
f2eed5594a
Don't use A2C when MSAA is off
2021-01-02 18:27:46 +00:00
AnyOldName3
c75d7ceada
Ensure alpha test is off by default
2021-01-02 02:50:19 +00:00
fredzio
5215ffd964
The debug drawer rely on Bullet to determines the vertices of collision
...
shapes. It doesn't work in the case of spheres (used by projectiles):
resulting shape is malformed. It can also leads to this error which
makes the debug drawer non-working till game restart:
CullVisitor::apply(Geode&) detected NaN,
depth=nan, center=(nan nan nan),
matrix={
-0.265814 -0.0639702 0.9619 0
0.964024 -0.0176387 0.265228 0
-4.29769e-09 0.997796 0.0663574 0
18178.6 -3550.91 42154.4 1
}
Avoid this issue by using osg::Sphere
While here, remove an unused function. We don't use Bullet's solver so
we never have any contact points (in Bullet parlance).
2021-01-01 17:47:12 +01:00
fredzio
dbdd397716
Remove deadcode.
2021-01-01 16:54:45 +01:00
Evil Eye
57c92673bc
Consider a path completed if it was non-empty
2020-12-30 16:09:12 +01:00
unknown
3bf641d3ce
Show mesh origin
2020-12-29 21:45:59 +01:00
Alexei Dobrohotov
396667f801
Fix weather particle fading
...
Update rain particle system setup
2020-12-29 15:46:45 +03:00
Evil Eye
e46472442a
Switch torches to shields for hostile NPCs
2020-12-29 01:40:30 +00:00
AnyOldName3
54853380cd
Enable multisampling in RTTs to support A2C
2020-12-28 22:39:09 +00:00
Andrei Kortunov
e80d34268c
Fix defines names
2020-12-28 21:11:58 +04:00
Alexei Dobrohotov
a7cbe0b497
Merge pull request #3036 from akortunov/tooltip
...
Enhance level-up tooltip
2020-12-28 18:21:32 +03:00
Andrei Kortunov
66fee6dccb
Enhance level-up tooltip
2020-12-28 12:13:09 +04:00
Andrei Kortunov
6a12c2b58b
Fix GCC build warnings
2020-12-28 12:06:41 +04:00
Alexei Dobrohotov
45f4e69a19
Merge branch 'skipanim' into 'master'
...
Don't move characters if their animation can't move them
Closes #5593
See merge request OpenMW/openmw!490
2020-12-28 01:25:22 +00:00
wareya
18ef32ca82
values for this higher than sGroundOffset cause jittering on some surface; use safe-seeming value slightly less than sGroundOffset
2020-12-27 22:16:11 +00:00
Alexei Dobrohotov
ddbfa5410d
Merge branch 'fixboats' into 'master'
...
Apply waterwalking even when bypassing physics simulation
See merge request OpenMW/openmw!500
2020-12-27 22:06:07 +00:00
fredzio
ebb564ad22
call moveObject() after applying waterwalking
...
This unbreak abot's boat mods: they're continually teleporting
the boats (who is an actor with waterwalking effect). As such, the
physics simulation was never run and the boat never went to sea level.
2020-12-27 17:31:55 +01:00
Evil Eye
7d8727b98e
Merge branch 'books' into 'master'
...
Only ignore plain text after the last EOL tag (#5627 )
Closes #5627
See merge request OpenMW/openmw!492
2020-12-27 14:25:57 +00:00
AnyOldName3
5e004356a2
Merge remote-tracking branch 'upstream/master' into alpha-meddling
2020-12-27 02:48:42 +00:00
psi29a
a094269c46
Merge branch 'guardsguards' into 'master'
...
Don't consider a path completed unless we're close
Closes #5736
See merge request OpenMW/openmw!498
2020-12-26 23:10:53 +00:00
psi29a
3afa4e5869
Merge branch 'feels_good_guar' into 'master'
...
Make followers keep a distance dependant on the fattest party member
Closes #5423
See merge request OpenMW/openmw!499
2020-12-26 23:09:41 +00:00
AnyOldName3
8f4b856b44
Initial A2C implementation
2020-12-26 22:45:53 +00:00
Evil Eye
7cac7fa870
Make followers keep a distance dependant on the fattest party member
2020-12-25 23:57:01 +01:00
Alexei Dobrohotov
ad41546648
Merge branch 'fix_swimming' into 'master'
...
Fix #5743 where NPCs and creatures underwater may rotate to the upwards direction
Closes #5743
See merge request OpenMW/openmw!494
2020-12-25 21:33:35 +00:00
Evil Eye
d2a28d915a
Don't consider a path completed unless we're close
2020-12-25 15:58:11 +01:00
Evil Eye
1f1755ae48
Add version checks
2020-12-25 13:05:41 +01:00
Evil Eye
bdcbb412a5
Don't restore focus to hidden/unrelated buttons
2020-12-25 13:03:09 +01:00
Petr Mikheev
8b3088a9e5
Fix #5743
2020-12-24 11:54:21 +01:00
Petr Mikheev
51d63a4152
Fix minor bug: mSmoothedSpeed is not updating in first person mode, that leads to an incorrect value after switching to first person mode and back.
...
Additional refactoring: move `setSideMovementAngle` from camera.cpp to character.cpp as this logic shouldn't belong to Camera.
2020-12-24 03:39:59 +01:00
Alexei Dobrohotov
fd77ef6b01
Only ignore plain text after the last EOL tag ( #5627 )
2020-12-23 03:33:34 +03:00
Alexei Dobrohotov
32cc14981e
Don't move characters if their animation can't move them
2020-12-22 20:40:52 +03:00
psi29a
4f1361b5ea
Merge branch 'paralyze' into 'master'
...
Fix paralyze for swimming and levitating actors
Closes #5758
See merge request OpenMW/openmw!488
2020-12-22 10:49:24 +00:00
Alexei Dobrohotov
22476281da
Fix paralyze for swimming actors
2020-12-22 08:03:51 +03:00
Alexei Dobrohotov
218597b13d
Fix paralyze for levitating actors
2020-12-22 06:33:19 +03:00
Alexei Dobrohotov
f5af09aed9
Fix AI sequence looping code (bug #5706 )
2020-12-22 05:56:59 +03:00
psi29a
3e87c35005
Merge branch 'dialogue' into 'master'
...
Don't regenerate the topics list unconditionally
See merge request OpenMW/openmw!459
2020-12-21 22:52:38 +00:00
Alexei Dobrohotov
e9a8636d18
Merge branch 'restore_absolute_position_handling' into 'master'
...
Restore pre-async handling of absolute actors positionning
See merge request OpenMW/openmw!486
2020-12-20 22:52:35 +00:00
Alexei Dobrohotov
ce36dd8a52
Merge branch 'misc_cleanup' into 'master'
...
Small cleanup
See merge request OpenMW/openmw!482
2020-12-20 19:10:06 +00:00
fredzio
5bd921fa3a
Restore pre-async handling of absolute actors positionning
...
One of the issue since the introduction of async physics is the quirky
handling of scripted moves. Previous attempt to account for them was
based on detecting changes in actor position while the physics thread is
running. To this end, semantics of Actor::updatePosition() (which is
responsible for set the absolute position of an actor in the world) was
toned down to merely store the desired position, with the physics system
actually responsible for moving the actor. For the cases were complete
override of the physics simulation was needed, I introduced
Actor::resetPosition(), which actually have same semantics as
original updatePosition(). This in turn introduced a loads of new bugs
when the weakened semantics broke key assumptions inside the engine
(spawning, summoning, teleport, etc).
Instead of tracking them down, count on the newly introduced support for
object relative movements in the engine (World::moveObjectBy) to
register relative movements and restore original handling of absolute positionning.
Changes are relatively small:
- move resetPosition() content into updatePosition()
- call updatePosition() everywhere it was called before
- remove all added calls to the now non-existing resetPosition()
tldr; ditch last month worth of bug introduction and eradication and redo
it properly
2020-12-20 19:23:09 +01:00
fredzio
33eb09f534
Remove unused headers
2020-12-20 18:28:21 +01:00
Alexei Dobrohotov
6b5e614b1a
Merge branch 'dont_cache_ptr' into 'master'
...
Always use latest actor's Ptr
See merge request OpenMW/openmw!481
2020-12-19 17:15:43 +00:00
fredzio
e5f0c7f117
Fix a typo introduced in 08e73a09ec
...
It closes #5752
2020-12-19 16:54:50 +01:00
fredzio
93a12fe388
Avoid dynamic_cast when possible.
2020-12-18 23:47:01 +01:00
fredzio
8e084dea2e
Don't cache Ptr, it can be updated while the simulation is running.
2020-12-18 22:22:37 +01:00
fredzio
58297ffbf4
Move stats update into their own function.
2020-12-18 21:18:04 +01:00
fredzio
24a8b8c66a
Remove redundant call to resetPosition(). adjustPosition() takes care of
...
it,
2020-12-18 21:16:48 +01:00
Mads Buvik Sandvei
eec2ba3623
Loading screen initialdrawcallback 4th time's the charm
2020-12-18 18:15:14 +00:00
AnyOldName3
2ecd00b6db
Don't accidentally enable alpha testing for all shadow casting
2020-12-18 16:31:21 +00:00
fredzio
4e7c9b6696
Embed physics simulation results inside of actor class.
...
This gives finer control over reseting positions (switch off tcl is no
longer glitchy) and solve most of the erroneous usage of stale World::Ptr
indicated by:
"Error in frame: moveTo: object is not in this cell"
2020-12-18 12:54:02 +01:00
psi29a
d01d5745c6
Merge branch 'relative_move' into 'master'
...
Relative translation for scripts
See merge request OpenMW/openmw!477
2020-12-18 09:23:18 +00:00
Mads Buvik Sandvei
ea8f98b339
Wait for initialDrawCallback to finish before removing it
2020-12-18 08:48:39 +00:00
fredzio
7bae6691b6
Introduce World::moveObjectBy() function to translate an object relatively to
...
its current position.
Use it in relevant MWScripts opcode (move and moveworld).
Remove the fragile detection of scripted translation from PhysicsTaskScheduler.
No user visible change, just a more robust mechanism.
2020-12-18 08:40:38 +01:00
AnyOldName3
a080071588
Set default state sensibly
2020-12-18 00:02:51 +00:00
psi29a
96a87b582c
Merge branch 'loadingScreen_initialdrawcallback' into 'master'
...
Fix for !472 for older versions of OSG
See merge request OpenMW/openmw!474
(cherry picked from commit 35e25d79b9a6c76807084be5ca2584c4fd9b9c35)
4447dd41 osg versions
06f4d63b Preserve callback in older osg version
2020-12-17 23:37:21 +00:00
Alexei Dobrohotov
8db2ba2b38
Merge pull request #3032 from akortunov/gtest
...
Mark mock methods as overrides (requires GTest 1.10)
2020-12-18 01:46:42 +03:00
Mads Buvik Sandvei
bc961a13f5
avoid redundant calls to removeInitialDrawCallback
2020-12-16 22:03:16 +01:00
Mads Buvik Sandvei
640420eaaa
No longer delete and recreate CopyFramebufferToTextureCallback, remove oneshot functionality. Instead just remove the callback after the traversals. Use addInitialDrawCallback instead of setInitialDrawCallback to avoid messing with existing callbacks.
2020-12-16 21:46:52 +01:00
fredzio
259d522800
When doing a ray cast to the next projectile position, ignore collisions
...
that occurs with the projectile own collision object. Otherwise a magic
bolt can explode "spontaneously".
2020-12-15 21:34:58 +01:00
psi29a
884b434ee0
Merge branch 'fixfriendlyfire' into 'master'
...
Fix projectiles friendly fire (#5744 )
See merge request OpenMW/openmw!466
2020-12-15 15:45:43 +00:00
psi29a
78e85fe011
Merge branch 'this_is_nife' into 'master'
...
More NIF stuff
See merge request OpenMW/openmw!461
2020-12-15 15:43:12 +00:00
psi29a
bc6bcda58f
Merge branch 'wizard' into 'master'
...
Wizard: fix "file is already opened" warning
See merge request OpenMW/openmw!465
2020-12-15 15:35:47 +00:00
Nelsson Huotari
8b2bf12e8f
Use bip01 for root bone name
2020-12-15 13:51:49 +02:00
fredzio
b39437dfb6
Don't allow projectiles to stand still when they hit an ally.
...
When an NPC fire a projectile, it should affect only its targeted actor.
To this end, after a hit is detected the target is checked against the
list of AI targets and reactivated if necessary.
Problem occurs when the hit occurs as a result of a friendly actor going
into the projectile (detected in ClosestNotMeConvexResultCallback):
while the projectile is inside the friend's collision box, it is
deactivated, just to be immediately reactivated. Effectively, the
projectile does nothing until the actor moves out.
Add a check inside the ClosestNotMeConvexResultCallback before declaring
a hit.
Since the necessary data is not safely accessible from the async thread,
maintain a copy inside the Projectile class.
2020-12-14 22:23:01 +01:00
Alexei Dobrohotov
8fd45d85ec
Unify NiGeometry/NiGeometryData handling
2020-12-15 00:06:43 +03:00
Alexei Dobrohotov
ab789e37e1
Wizard: fix "file is already opened" warning
2020-12-14 03:45:03 +03:00
Alexei Dobrohotov
201999c4a9
Make sure adjustPosition() is safe to call for any actor
2020-12-14 03:01:26 +03:00
Alexei Dobrohotov
817ac4cfbd
Don't regenerate the topics list unconditionally
2020-12-12 23:07:00 +03:00
fredzio
a314f196eb
Unconditionally call actor->resetPosition in adjustPosition.
...
Revert broken change that would force adjust all actors in cell upon
loading. That break floating corpses (and probably others things).
2020-12-12 18:17:26 +01:00
Alexei Dobrohotov
15291f15d3
Make actor collision box components a struct
2020-12-11 20:07:59 +03:00
psi29a
11eff02a1d
Merge branch 'Show-more-information-about-level-on-menu' into 'master'
...
Show more information about level on menu
See merge request OpenMW/openmw!437
2020-12-11 12:04:15 +00:00
psi29a
9a35c5815e
Merge branch 'nofallfloor' into 'master'
...
Update physics object position after spawning.
See merge request OpenMW/openmw!449
2020-12-11 11:28:29 +00:00
psi29a
789d034432
Merge branch 'skirts' into 'master'
...
Editor: Properly reserve body parts for skirts (bug #5731 )
Closes #5731
See merge request OpenMW/openmw!452
2020-12-11 11:09:32 +00:00
Frederic Chardon
460e5abb55
Update physics object position after spawning.
2020-12-11 08:57:08 +01:00
Frederic Chardon
899b8422fa
explicitely use a reference, auto can't infer it and make a copy
2020-12-11 08:56:54 +01:00
Alexei Dobrohotov
32601e0ae4
Properly reserve body parts for skirts (bug #5731 )
2020-12-11 10:39:57 +03:00
Coleman Smith
3b9db41346
removing unneeded variable
2020-12-10 17:03:10 -08:00
psi29a
d77f122289
Merge branch 'gl-5199-improve-scene-colors' into 'master'
...
[OpenMW-CS] Issue #5199 : Improve Scene Colors
See merge request OpenMW/openmw!442
2020-12-10 21:36:46 +00:00
Coleman Smith
842ea9d6ed
simplifying a bit
...
- attaching gradient camera directly to the main camera
- using Vec4ub
2020-12-10 21:36:46 +00:00
psi29a
c8fa8cfe74
Merge branch 'herbalmenu' into 'master'
...
Add graphic herbalism to the launcher
Closes #5730
See merge request OpenMW/openmw!448
2020-12-10 21:31:53 +00:00
psi29a
7156b11dbc
be explicit about narrowing to resolve: error: type 'btScalar *' (aka 'float *') cannot be narrowed to 'bool' in initializer list [-Wc++11-narrowing]
2020-12-10 21:30:05 +00:00
Evil Eye
525292b184
Add graphic herbalism to the launcher
2020-12-10 19:02:38 +01:00
psi29a
686692519c
Merge branch 'fix-tests' into 'master'
...
Use correct variable types when loading config for tests
See merge request OpenMW/openmw!446
2020-12-09 21:25:30 +00:00
AnyOldName3
15f03ae375
Merge branch 'logging2' into 'master'
...
Print '--version' and '--help' messages without timestamps
Closes #2686
See merge request OpenMW/openmw!444
2020-12-09 16:27:54 +00:00
psi29a
0e5af74a2f
Merge branch 'masterindexloadfix' into 'master'
...
[OpenMW-CS] Load master index from refId to mContentFile
See merge request OpenMW/openmw!445
2020-12-09 10:12:10 +00:00
AnyOldName3
fd4a62ce35
Use correct variable types when loading config for tests
2020-12-09 00:32:01 +00:00
Petr Mikheev
49c6e50c31
Print '--version' and '--help' messages without timestamps
2020-12-08 23:14:49 +01:00
Nelsson Huotari
61a4a0807b
Load master index in refId to mContentFile, keep master index also in mIndex
2020-12-09 00:10:58 +02:00
psi29a
afaacedf67
Merge branch 'placeatmecrash' into 'master'
...
Don't crash the game when placing a non-actor
See merge request OpenMW/openmw!443
2020-12-08 17:37:01 +00:00
Evil Eye
39ac0cbb4a
Don't crash the game when placing a non-actor
2020-12-08 17:47:25 +01:00
Chris Djali
21de3fa7e8
Merge pull request #3033 from akortunov/main_messages
...
Use a logging system instead of cout for a couple of missing messages
2020-12-08 15:49:19 +00:00
psi29a
fd64aacf7d
Merge branch 'cliherbalism' into 'master'
...
Add a setting to disable graphical herbalism
See merge request OpenMW/openmw!440
2020-12-08 10:02:15 +00:00
fredzio
4fbe1ed12c
Ignore caster collision shape. Sometimes the magic bolt get launched
...
inside too near its caster.
2020-12-08 09:06:34 +01:00
fredzio
7e85235220
Projectile to projectile collision
2020-12-08 09:06:34 +01:00
fredzio
66fe3b0d38
Modify projectile collision to work with async physics
2020-12-08 09:06:33 +01:00
Andrei Kortunov
dc7b48e92e
Generate physics collisions for projectiles (bug #3372 )
...
Remove redundant now mHit field
2020-12-08 09:05:38 +01:00
Andrei Kortunov
242dd8d496
Use a logging system instead of cout for a couple of missing messages
2020-12-08 11:06:30 +04:00
Evil Eye
275b9aea4d
rename setting
2020-12-07 21:56:41 +01:00
Evil Eye
e62fff5f2e
Add a setting to disable graphical herbalism
2020-12-07 19:04:32 +01:00
Andrei Kortunov
807367ca3f
Mark mock methods as overrides (requires GTest 1.10)
2020-12-07 19:09:58 +04:00
CedricMocquillon
6bfdf0e57f
Add more information on mouse over level
2020-12-07 14:57:25 +01:00
psi29a
c2933721c6
Merge branch 'explodespell' into 'master'
...
Make AI cast self-targeted spells at the ground (bug #5695 )
Closes #5695
See merge request OpenMW/openmw!426
2020-12-07 12:35:58 +00:00
psi29a
a3dfdde9ef
Merge branch 'move_actors_into_scene' into 'master'
...
Move actors into the scene after a teleport
See merge request OpenMW/openmw!438
2020-12-07 10:19:32 +00:00
psi29a
c742c15f6d
Merge branch 'autogoesbrr' into 'master'
...
Use range based for loops and auto
See merge request OpenMW/openmw!400
2020-12-07 09:12:50 +00:00
psi29a
b22418d053
Merge branch 'fix_spawn' into 'master'
...
Fix spawn #5724
See merge request OpenMW/openmw!439
2020-12-07 08:20:35 +00:00
fredzio
c6c02a6f16
Remove useless code. ipos is already initialized with the correct
...
values.
2020-12-06 13:26:43 +01:00
fredzio
08e73a09ec
Make the code more compact by mean of std::min / max and ternary
...
operator.
2020-12-06 13:24:42 +01:00
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