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
b5c689976e
Serialize arithmetic and enum types in little endian encoding
2021-12-10 23:55:04 +01:00
elsid
23ad1b2b9f
Move enum related serialization logic from format to visitors
2021-12-10 23:55:04 +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
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
AnyOldName3
221e425fe6
Only precompile headers with MSVC
2021-12-09 14:59:17 +00:00
elsid
5129ab39fc
Check extension in lower case
2021-12-09 00:06:33 +01: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
psi29a
59ab947f3b
Merge branch 't800' into 'master'
...
Keep only one '\0' in NIF strings (bug #6473 )
Closes #6473
See merge request OpenMW/openmw!1458
2021-12-06 14:45:57 +00:00
psi29a
6c7dc2d72f
Merge branch 'assorted' into 'master'
...
Load NiSortAdjustNode and NiAccumulators
See merge request OpenMW/openmw!1396
2021-12-06 13:49:47 +00:00
Alexei Dobrohotov
dd15b30a27
Keep only one '\0' in NIF strings (bug #6473 )
2021-12-05 15:56:58 +03: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
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
uramer
e65c946452
Add a data field to Lua UI layouts
2021-12-02 21:52:29 +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
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
cb38ec7e7f
Merge branch 'fix_unity_build' into 'master'
...
Fix unity build (#6436 )
Closes #6436
See merge request OpenMW/openmw!1417
2021-11-30 15:53:39 +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
AnyOldName3
b991263a92
Work around https://gcc.gnu.org/bugzilla/show_bug.cgi?id=89062
2021-11-29 20:16:49 +00: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
AnyOldName3
5e9d460032
Remove redundant conversion operator
2021-11-28 20:33:17 +00:00
uramer
e9f8c34372
Correctly set UI properties to defaults when passed nil
2021-11-28 11:31:34 +00:00
psi29a
d2f447065c
Merge branch 'prepare_for_glibc_2_34' into 'master'
...
Prepare for glibc 2.34
See merge request OpenMW/openmw!1239
2021-11-23 20:20:48 +00:00
elsid
da0c5b54f0
Load only supported content formats by EsmLoader
2021-11-22 20:58:48 +01: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
d1a1b8c01c
Use polygon offset to render navmesh and recast mesh
2021-11-21 17:59:25 +01:00
elsid
0511a81baa
Use different alpha color for navmesh tiles with non zero user id
2021-11-21 17:43:32 +01:00
elsid
3c41d0efc3
Render each navmesh tile independently
2021-11-21 17:42:27 +01:00
elsid
66390bd8a4
Use line width 1 as the only guaranteed to be supported value by glLineWidth
2021-11-21 17:40:55 +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
elsid
ce7f8c90f8
Fix unity build
2021-11-21 14:24:18 +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
Cody Glassman
d85f772269
Depth refactor
2021-11-21 02:25:05 +00:00
AnyOldName3
a9d7598532
Merge branch 'camera2' into 'master'
...
Dehardcode camera
See merge request OpenMW/openmw!1030
2021-11-20 18:17:12 +00:00
psi29a
adc3bab51e
Merge branch 'Embedded-error-marker' into 'master'
...
Embed marker error
See merge request OpenMW/openmw!1383
2021-11-20 18:07:13 +00:00
Cédric Mocquillon
eb75e394b3
Use Files::MemBuf for Bsa::MemoryInputStream base classe instead of making a duplicate (MemoryInputStreamBuf)
2021-11-20 11:12:08 +01:00
Cédric Mocquillon
40656b3135
Embed error marker in osgt format inside a string defined in misc/errorMarker.hpp.
...
Use the embed error marker we fail to load a mesh.
2021-11-20 11:12: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
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
d5ca091d6e
Make util.rotateX, util.rotateY, rotate.Z consistent with morrowind rotation
2021-11-19 20:37:21 +01:00
uramer
eceed558be
Fix coverity uninitialized variables
2021-11-19 18:05:43 +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
Brian Kelley
ee41b94a73
Enable compilation on apple silicon
2021-11-15 19:01:52 +00: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
Evil Eye
c5ba733855
Unbreak the unit test in gcc and clang
2021-11-14 11:26:18 +01: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
c6470f33d3
Use string_view
2021-11-14 11:26:16 +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
8f48a1f030
Handle non-ASCII characters while saving without triggering an assertion
2021-11-14 11:26:06 +01:00
AnyOldName3
8fb0b5846e
Allow paths with trailing data, emmitting a warning
2021-11-14 00:22:44 +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
Alexei Dobrohotov
63ea57e9cf
Load NiSortAdjustNode and NiAccumulators
2021-11-14 00:31:49 +03:00
psi29a
d0263b6dda
Merge branch 'fix_hash_combine' into 'master'
...
Support seed type different from std::size_t for hashCombine
See merge request OpenMW/openmw!1391
2021-11-13 21:12:13 +00:00
Alexei Dobrohotov
50b90a594d
Loading and basic handling of BSLightingShaderProperty
2021-11-13 22:52:45 +03:00
psi29a
03e88b8e27
Merge branch 'lordofthenifs' into 'master'
...
Load a bunch of Bethesda Havok NIF records
See merge request OpenMW/openmw!1392
2021-11-13 18:51:54 +00:00
psi29a
ba0aae06ca
Merge branch 'morphyslaw' into 'master'
...
Morph geometry more like NifSkope (bug #6416 )
Closes #6416
See merge request OpenMW/openmw!1389
2021-11-13 18:42:17 +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
d347f8f4f0
Fix build
2021-11-13 20:11:18 +03:00
Alexei Dobrohotov
25f4d05c2e
Load bhkRigidBody
2021-11-13 19:59:30 +03:00
Alexei Dobrohotov
c01fff280a
Load bhkConvexVerticesShape, bhkBoxShape, bhkListShape
2021-11-13 19:53:03 +03:00
Alexei Dobrohotov
83aa96e38f
Load a bunch of triangle strip-based Havok records
2021-11-13 19:52:08 +03:00
Alexei Dobrohotov
e7cc76bba2
Load bhkMoppBvTreeShape
2021-11-13 19:27:32 +03:00
Alexei Dobrohotov
59ce00f742
Refactor all present Bethesda Havok 'support'
2021-11-13 19:14:28 +03:00
elsid
08a25c2b1f
Support seed type different from std::size_t for hashCombine
2021-11-13 16:14:50 +01: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
Alexei Dobrohotov
c7edca559b
Morph geometry more like NifSkope (bug #6416 )
2021-11-13 15:58:59 +03:00
Evil Eye
5f406158b5
Zero initialize context index
2021-11-13 12:46:10 +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
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
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
cc4c96d0f1
Follow global naming convention for new records
2021-11-10 22:50:01 +03:00
Alexei Dobrohotov
6e5b45453d
some physics stuff idk
2021-11-10 20:33:46 +03:00
Alexei Dobrohotov
6de9b49d3d
Remove an empty line
2021-11-10 19:59:13 +03:00
Alexei Dobrohotov
9880c43c86
Add specular strength shader parameter
2021-11-10 19:58:06 +03:00
Alexei Dobrohotov
923756b407
Load NiControllerManager
2021-11-10 19:42:55 +03:00
Alexei Dobrohotov
41097352a8
Load BSDismemberSkinInstance
2021-11-10 19:40:02 +03:00
Alexei Dobrohotov
5571099147
Load NiCollisionObject and bhkCollisionObject
2021-11-10 19:31:28 +03:00
Alexei Dobrohotov
9500afaa5a
Load BSFurnitureMarker
2021-11-10 19:21:07 +03:00
psi29a
b72d59b012
Merge branch 'fix_shadows_bin_crash' into 'master'
...
Fix crash on exit with enabled shadows (#6256 )
Closes #6256
See merge request OpenMW/openmw!1191
2021-11-09 15:58:03 +00:00
Evil Eye
099cd8a20c
Force alphabetical order per data dir
2021-11-09 16:47:42 +01: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
elsid
3b6184dcda
Add missing include
...
In file included from /<<BUILDDIR>>/openmw-0.47.0+git202111080927~ubuntu18.04.1/components/detournavigator/findsmoothpath.cpp:1:0:
/<<BUILDDIR>>/openmw-0.47.0+git202111080927~ubuntu18.04.1/components/detournavigator/findsmoothpath.hpp:93:48: error: field ‘mSettings’ has incomplete type ‘std::reference_wrapper<const DetourNavigator::Settings>’
std::reference_wrapper<const Settings> mSettings;
^~~~~~~~~
In file included from /usr/include/c++/7/bits/move.h:54:0,
from /usr/include/c++/7/bits/nested_exception.h:40,
from /usr/include/c++/7/exception:143,
from /usr/include/c++/7/ios:39,
from /usr/include/c++/7/istream:38,
from /usr/include/c++/7/sstream:38,
from /<<BUILDDIR>>/openmw-0.47.0+git202111080927~ubuntu18.04.1/components/detournavigator/dtstatus.hpp:6,
from /<<BUILDDIR>>/openmw-0.47.0+git202111080927~ubuntu18.04.1/components/detournavigator/findsmoothpath.hpp:4,
from /<<BUILDDIR>>/openmw-0.47.0+git202111080927~ubuntu18.04.1/components/detournavigator/findsmoothpath.cpp:1:
/usr/include/c++/7/type_traits:2125:11: note: declaration of ‘class std::reference_wrapper<const DetourNavigator::Settings>’
class reference_wrapper;
2021-11-09 12:32:53 +01:00
elsid
5972520b1a
Make sure areas size is 2 for rectangle
2021-11-08 18:49:17 +01:00
elsid
671e1e5424
Avoid copy when adding heightfield to vector
2021-11-08 18:49:16 +01:00
elsid
5f5163905a
Remove unused operator< for RecastMesh
2021-11-08 18:49:16 +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
b6718ecb10
Merge branch 'log_lock' into 'master'
...
Acquire log lock only when logger should log
See merge request OpenMW/openmw!1363
2021-11-08 07:41:27 +00: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
elsid
a824e112d4
Fix recastmesh.cpp includes
...
recastmesh.cpp is supposed to include recastmesh.hpp not navmesh.hpp.
2021-11-08 02:21:17 +01:00
elsid
e0c4f08aa5
Remove redundant includes
2021-11-08 02:21:02 +01:00
elsid
727f784a98
Acquire log lock only when logger should log
...
To minimize overhead for calls when level is less than current. For example
Log(Debug::Debug) should not lock mutex when current logging level is Verbose.
2021-11-07 19:57:20 +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
psi29a
256ec4c752
Merge branch 'fix_tile_bounds' into 'master'
...
Fix tile bounds scaling
See merge request OpenMW/openmw!1353
2021-11-07 12:34:55 +00:00
Alexei Dobrohotov
e125308dd8
Force assign head animation timer (bug #4389 )
2021-11-07 14:10:51 +03:00
Bo Svensson
726653087e
restores _mergeAlphaBlending behaviour ( #3222 )
...
This PR restores a minor peculiarity of `_mergeAlphaBlending` behaviour unintentionally changed by PR #3162 .
2021-11-07 10:36:22 +01: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
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
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
elsid
5db4898bec
Fix tile bounds scaling
...
OscillatingRecastMeshObject::update should be called with tile bounds in real
coordinates not in navmesh. But proper scaling was done only in
RecastMeshManager::getMesh and RecastMeshManager::updateObject used tile bounds
in navmesh coordinates.
Add a new function to create tile bounds with proper scaling and pass correct
value into RecastMeshManager constructor through CachedRecastMeshManager
constuctor from TileCachedRecastMeshManager member functions.
2021-11-05 22:48:45 +01: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
Bo Svensson
5debd6e25a
removes two dummy serialisers ( #3212 )
...
This PR removes dummy serialisers for `StateSetUpdater`, `NodeCallback` and the respective `META` macros that trigger serialisation requirement here.
`StateSetUpdater` and `NodeCallback` are just base classes that can not be used on their own, so there is no need to incorporate them into serialisation. These changes might have minor effects on derived classes that forget to override `className()`, `libraryName()` through `META`, but it makes hardly a difference to now serialise such classes as a dysfunctional `osg::Callback` instead of a dysfunctional `SceneUtil::NodeCallback`.
2021-11-04 22:31:22 +01: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
Evil Eye
ad44142dda
Modify the content file sorting algorithm to finish in finite time when encountering circular dependencies
2021-11-04 20:41:26 +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
1979ee1491
refactors hashed std::map ( #3199 )
...
We currently apply a strange algorithm to `LightManager::mStateSetCache`. For some reason this algorithm inserts hashed keys into `std::map` in a way that fails to handle hash collisions and exhibits worse lookup complexity than `std::unordered_map`. With this PR we just use `std::unordered_map` here.
2021-11-04 16:54:47 +01: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
19843af704
Combine data check with data handling logic
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
4ac83f4c39
Add separate function to handle NiGeometry node
...
To force use a single source of data. All fields of Nif::Node are available in NiGeometry.
2021-11-02 22:44:32 +01:00
elsid
56eef691a8
Use reference type to pass nif node as argument where nullptr is not handled
2021-11-02 22:44:32 +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
cb3ab21c13
Merge branch 'recast_mesh_object' into 'master'
...
Store holder only in parent RecastMeshObject
See merge request OpenMW/openmw!1332
2021-11-02 20:27:49 +00:00
Evil Eye
a9106f4d7c
Rotate torches by 90 degrees
2021-11-02 18:01:22 +01:00
glassmancody.info
4461366761
settings update and launcher option
2021-11-01 09:26:50 -07:00
Petr Mikheev
e7ec89573e
Refactoring. Lua Callback
is moved from apps/openmw/mwlua to components/lua.
2021-10-31 17:47:46 +01:00