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.
4 years ago
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.
4 years ago
David Cernat
44d037c078
[General] Add creature soul values to RecordDynamic packets
4 years ago
Alexei Dobrohotov
6a7bc208de
Merge branch 'dont_assign' into 'master'
...
Don't assign a variable passed by value
See merge request OpenMW/openmw!897
4 years ago
jvoisin
e51669c05d
Don't assign a variable passed by value
4 years ago
David Cernat
7a6dfc61ec
Add OpenMW commits up to 21 May 2021
...
# Conflicts:
# CMakeLists.txt
# apps/openmw/mwscript/interpretercontext.cpp
# components/CMakeLists.txt
4 years ago
CedricMocquillon
86d137363e
Check if the archive is opened before adding a file to it and clear state on close
4 years ago
CedricMocquillon
b61249841e
Update lookup only after sorting files
4 years ago
psi29a
c4fde03542
Merge branch 'ObjectPagingMergeIssue' into 'master'
...
Share state
See merge request OpenMW/openmw!879
4 years ago
Alexei Dobrohotov
fea5c0ac1a
Merge branch 'armour_error_fix' into 'master'
...
Fixed data subrecord name for Armour record used in error
See merge request OpenMW/openmw!882
4 years ago
CedricMocquillon
d11a6bd92c
Share state
4 years ago
Bret Curtis
523edd0723
Merge pull request #3093 from akortunov/light_crash
...
Fix crashes on exit in LightManager
4 years ago
psi29a
e73c0f92b8
Merge branch 'fix_present_tile_crash' into 'master'
...
Add missing synchronization for present tiles modification
See merge request OpenMW/openmw!878
4 years ago
psi29a
4bc7012104
Merge branch 'pack-default-settings' into 'master'
...
Pack default settings
Closes #5925
See merge request OpenMW/openmw!822
4 years ago
AnyOldName3
4cedb3549b
Decode base64-packed settings files
4 years ago
Benjamin Winger
21f04f0d0f
Fixed data subrecord name for Armour record used in error
4 years ago
AnyOldName3
081650a2e5
Integrate Base64 library with build
4 years ago
elsid
a73ffc25c3
Add missing synchronization for present tiles modification
...
insert/erase can be done from multiple threads simultaneously. mMutex is
already used to synchronize reads so use it for writes too.
4 years ago
psi29a
f1f1703441
Merge branch 'fix_navmesh_wait' into 'master'
...
Fix redundant waiting until navmesh is generated
See merge request OpenMW/openmw!861
4 years ago
Andrei Kortunov
11c57978b6
Fix crashes on exit in the LightManager (bug #6044 )
4 years ago
Andrei Kortunov
c54ef55ebb
Revert "Replace raw pointer by observer_ptr to avoid dangling pointer dereferencing"
...
This reverts commit 5373cf1cd5
.
4 years ago
elsid
d520b440aa
Copy LightBuffer data into a new object when changing layout
...
Before this change LightBuffer copy constructor copied only mData pointer into
a new object. Then memcpy was applied to an overlapping source and destination
that is UB.
Replace configureLayout function by a special constructor. That copies all
mData values and a pointer to a buffer object into a newly allocated object.
4 years ago
Bret Curtis
fef9e91510
Merge pull request #3090 from akortunov/warnfix
...
Fix warning in assert - size_t can not be negative
4 years ago
Andrei Kortunov
e38063dcdb
Discard button press events during save loading (bug #5619 )
4 years ago
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%.
4 years ago
Andrei Kortunov
b717103fe0
Fix warning in assert - size_t can not be negative
4 years ago
elsid
5373cf1cd5
Replace raw pointer by observer_ptr to avoid dangling pointer dereferencing
...
When game exit is requests when initial loading screen is active LightManager
can be destructed in the main thread before LightManagerStateAttribute::apply
is completed by different thread. Given that it uses raw pointer at some point
it becomes dangling because object is destructed this leads to UB and eventual
SIGSEGV.
4 years ago
elsid
eeba92d48b
Merge branch 'includes_detournavigator' into 'master'
...
Remove some superfluous includes in components/detournavigator
See merge request OpenMW/openmw!860
4 years ago
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.
4 years ago
elsid
d0ea9c482a
Reorder async navmesh updater jobs when player tile changes
...
When player tile changes distance to player that is part of jobs priority is
invalidated. So jobs are no longer in the right order. This can lead to
processing of farests tiles first.
Sort queue each time player tile is changed.
4 years ago
Bret Curtis
66a527c3de
Merge pull request #3075 from akortunov/warnfix
...
Fix MSVC's C4244 and C4267 warnings
4 years ago
jvoisin
28d5e5e8be
Remove some superfluous includes in components/detournavigator
4 years ago
glassmancody.info
4bbbbb00f6
use particle data for particle system quota
4 years ago
psi29a
d843ec321e
Merge branch 'DoNotSearchTwice' into 'master'
...
Search only in the niffilemanager for nif files
See merge request OpenMW/openmw!823
4 years ago
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
4 years ago
Petr Mikheev
4a7147e222
Merge branch 'constexpr_esm' into 'master'
...
Use a constexpr for esm cc
See merge request OpenMW/openmw!849
4 years ago
jvoisin
bcd8190516
Fix a crash in aipackage.cpp
4 years ago
jvoisin
89f721fad3
Use a constexpr for esm cc
4 years ago
Andrei Kortunov
963e1b8b3f
Fix MSVC's C4244 warnings
4 years ago
Andrei Kortunov
f9d42ed396
Fix MSVC's C4267 warnings
4 years ago
Andrei Kortunov
54c8375672
Recreate a special case for IntersectionVisitor on QuadTreeWorld
4 years ago
Bret Curtis
340801e08b
Merge pull request #3084 from akortunov/master
...
Return check for distance when we try to reuse data
4 years ago
psi29a
f7b8c817f8
Merge branch 'performance-faster-string-find' into 'master'
...
Fixing performance-faster-string-find issues
See merge request OpenMW/openmw!842
4 years ago
Andrei Kortunov
3e281f625d
Return check for distance when we try to reuse data (bug #6026 )
4 years ago
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 ).
4 years ago
Bret Curtis
f84e9f5fb9
Merge pull request #3082 from akortunov/warnfix2
...
Add new scene nodes to scene graph serializer blacklist
4 years ago
AnyOldName3
09f39b29f0
Load defaults.bin instead of settings-default.cfg. Do not decode yet.
4 years ago
AnyOldName3
92325976e9
Update documentation to refer to defaults.bin
4 years ago
Petr Mikheev
e65b285f06
Merge branch 'use_min' into 'master'
...
Use existing min implementation
See merge request OpenMW/openmw!828
4 years ago
elsid
b806445a36
Use existing min implementation
4 years ago
Frederic Chardon
caf382c19f
Merge branch 'barrier' into 'master'
...
Do not store callback inside Misc::Barrier
See merge request OpenMW/openmw!821
4 years ago
Andrei Kortunov
2e8873af51
Add new scene nodes to scene graph serializer blacklist
4 years ago
psi29a
08e1a8e0fb
Merge branch 'esm_opti' into 'master'
...
Teensy optimisation for esmtool
See merge request OpenMW/openmw!826
4 years ago
jvoisin
8a56ba6aaa
Fix compilation
4 years ago
elsid
fbeccc2908
Apply 1 suggestion(s) to 1 file(s)
4 years ago
Bret Curtis
e720a56030
Merge pull request #3080 from akortunov/fix_ci
...
Add missing include for std::inserter
4 years ago
Andrei Kortunov
8d4a374516
Add missing include for std::inserter
4 years ago
psi29a
6263ade01a
Merge branch 'esmcleanup' into 'master'
...
Minor ESM code cleanup
See merge request OpenMW/openmw!825
4 years ago
David Cernat
ea6d5c68ae
Add OpenMW commits up to 6 May 2021
...
# Conflicts:
# CMakeLists.txt
# components/CMakeLists.txt
4 years ago
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
4 years ago
CedricMocquillon
a885134868
Do not search if it is not used
4 years ago
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.
4 years ago
CedricMocquillon
813b8ee0d1
Search only in the niffilemanager for nif files
4 years ago
CedricMocquillon
e378159ea8
Use O(log(n)) search instead of O(n)
4 years ago
Dobrohotov Alexei
57c372a50e
ESM code cleanup
4 years ago
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.
4 years ago
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.
4 years ago
psi29a
110001d47f
Merge branch 'nullroots' into 'master'
...
Improve null root handling
Closes #5963
See merge request OpenMW/openmw!818
4 years ago
Dobrohotov Alexei
19f0b80983
Improve null root handling
4 years ago
psi29a
6513c38875
Merge branch 'clean_navigator' into 'master'
...
Remove redundant and useless code from navigator
See merge request OpenMW/openmw!815
4 years ago
psi29a
e94181b2b2
Merge branch 'constexpr' into 'master'
...
Sprinkle a couple of constexpr found by VS
See merge request OpenMW/openmw!800
(cherry picked from commit 5e8ea624bc85acebf457592dd10b790124ecf6ef)
5704b2ac Sprinkle a couple of constexpr found by VS
4 years ago
psi29a
e6b097085b
Merge branch 'const_ref' into 'master'
...
Sprinkle some const-ref to avoid unnecessary copies
See merge request OpenMW/openmw!803
4 years ago
elsid
87ada56edd
Various fixes for niftest
4 years ago
elsid
865ef56a09
Replace include by RecastMesh forward declaration
...
To reduce dependency between navigator interface and implementation.
4 years ago
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.
4 years ago
elsid
bce06df254
Add missing array header
4 years ago
elsid
22aebcea74
Remove useless rcMarkWalkableTriangles call
...
It fills areas.data with walkable triangles but right after it's overwritten
and rcClearUnwalkableTriangles is called instead that fills areas.data with
unwalkable triangles.
4 years ago
Gleb Mazovetskiy
e3a6cb1695
Remove OsIdentity.cmake
...
Removes the OsIdentity.cmake file and uses a cross-compilation friendly
and OS-independent method of detecting system double-precision bullet
instead.
4 years ago
psi29a
7f7041656d
Merge branch 'enforce_double_bullet' into 'master'
...
Remove support for single-precision Bullet, fail during configuration instead of during linking (#5980 )
See merge request OpenMW/openmw!806
4 years ago
David Cernat
a3f304107b
Add OpenMW commits up to 2 May 2021
...
# Conflicts:
# components/CMakeLists.txt
4 years ago
fredzio
6fd04cb8f6
Remove support for single-precision Bullet, fail during configuration instead of during linking.
4 years ago
jvoisin
d4d111a709
Don't use std::move on const
4 years ago
jvoisin
d45184a730
Sprinkle some const-ref to avoid unnecessary copies
4 years ago
jvoisin
813969a46e
Fix an off-by-one in windows_crashcatcher.cpp
4 years ago
Chris Djali
f0cef87cd8
Merge pull request #3069 from akortunov/msvc_warnings
...
Rework warnings settings
4 years ago
psi29a
0e50349192
Merge branch 'uvcontroller' into 'master'
...
Fix NiUVController UV offset calculations (bug #5995 )
Closes #5995
See merge request OpenMW/openmw!795
4 years ago
Dobrohotov Alexei
971ba81ed2
Use higher level transformations in UVController
4 years ago
Alexei Dobrohotov
e9ff90f3de
Merge branch 'pgrd_overflow' into 'master'
...
Fix a heap overflow in loadpgrd.cpp
See merge request OpenMW/openmw!784
4 years ago
jvoisin
5f65583a3a
Fix a heap overflow in loadpgrd.cpp
4 years ago
Dobrohotov Alexei
24f4bf9c28
Fix NiUVController UV offset calculations (bug #5995 )
4 years ago
Andrei Kortunov
18a4c81b5c
Merge branch 'fix_toggleborders' into 'master'
...
Fix ToggleBorders debug view with 'Shaders' lighting method
See merge request OpenMW/openmw!792
4 years ago
AnyOldName3
ceb6a280ff
Fix typo
...
Hopefully this will actually let us make better use of shadow bounds,
but I wouldn't count on it.
4 years ago
glassmancody.info
9f314d1d6f
Fix ToggleBorders
4 years ago
Roman Siromakha
68ddde84fe
Merge pull request #3074 from akortunov/warnfix
...
Declare separate constructors with const reference and rvalue arguments for OscillatingRecastMeshObject
4 years ago
psi29a
16bb3919d1
Merge branch 'navmesh_cache_simplification' into 'master'
...
Simplify navmesh cache
See merge request OpenMW/openmw!691
4 years ago
Andrei Kortunov
0bc0cfce5f
Declare separate constructors with const reference and rvalue arguments for OscillatingRecastMeshObject
4 years ago
Evil Eye
abb120b439
Don't log a warning for reading to the end of the subrecord
4 years ago
Alexei Dobrohotov
add04a4ea0
Merge branch 'fix_esm' into 'master'
...
Fix a read head-buffer-overflow in esm
See merge request OpenMW/openmw!751
4 years ago
Andrei Kortunov
6d351b2bdd
Fix MSVC 4706 warnings
4 years ago
Andrei Kortunov
2d869ca9ff
Fix node masks signed/unsigned mismatch
4 years ago