florent.teppe
30a020883e
Avoids unecessary copies
...
Fixed issue with lowerCase
Oups fixed compialtion on openMW_test_suite
2022-12-27 19:15:57 +01:00
florent.teppe
b61d5d8123
Some RefId == ESM::RefId::StringRefId('constString') still existed
2022-12-27 19:15:57 +01:00
florent.teppe
65cdd489fb
create a specific esm reader function for RefID to avoid allocation for string and then again for RefId
...
Fixed some types
removed useless header
applied clang format
fixed compile tests
fixed clang tidy, and closer to logic before this MR
Removed hardcoded refids
unless there is a returned value we don't use static RefIds
can use == between RefId and hardcoded string
Fix clang format
Fixed a few instances where std::string was used, when only const std::string& was needed
removed unused variable
2022-12-27 19:15:57 +01:00
florent.teppe
874ff88288
In the interpretter, the id is no longer passed by vallue, but as a const reference instead.
...
In getMembersLocal(, a reference to a reference wrapper is used, because the id can change, bu all we need to do is change a pointer.No need to change the value
2022-12-27 19:15:56 +01:00
fteppe
20da0892ef
openMW_test_suite compiles and runs
...
Slowly moving through the open-cs errors
Good progress in openCS
Very good progress on openCS
Getting closer with openCS
OpenCS compiles and runs! Didn't have time to test it all though
ix openMW
everything compiles on windows??
Fix gcc
Fix Clang
2022-12-27 19:15:55 +01:00
elsid
0b399a9d1a
Fix detournavigator tests
...
d40c09c18c6b01e22b73f977bdcca70c11eed01c changed the logic in parallel with
15e8f0b53caf255a4d937fe656197b8217018c93 making this check invalid.
2022-12-23 19:26:15 +01:00
elsid
15e8f0b53c
Check input and report errors via RecastContext
...
Recast functions have preconditions for arguments they don't validate. This may
produce garbage data which may lead to crash. Check arguments and log when they
are invalid.
Do not throw exceptions when these function calls fail, capture Recast reported
errors via RecastContext inherited from rcContext and log them.
2022-12-19 19:46:45 +01:00
Petr Mikheev
55db95d4cf
Update Lua profiler; add ability to run OpenMW with old LuaJit that doesn't allow custom allocator (Lua profiler will be disabled in this case)
2022-12-03 16:58:03 +01:00
Petr Mikheev
6fa65e4729
Track memory and CPU usage per script in LuaUtil::LuaState
2022-11-30 00:06:14 +01:00
uramer
b13a4f6b01
Lua coroutine crash tests
2022-10-18 21:11:31 +02:00
psi29a
e16c451d08
Merge branch 'l10n' into 'master'
...
Separate l10n manager from lua
See merge request OpenMW/openmw!2451
2022-10-10 07:34:18 +00:00
elsid
843753da14
Remove unused includes
2022-10-09 16:44:18 +02:00
Petr Mikheev
3697c9266b
Separate l10n manager from lua
2022-10-07 17:19:04 +02:00
elsid
063fff7fa4
Fix and prevent -Wextra-semi warning
2022-10-06 00:26:43 +02:00
elsid
d2e1f18924
Add tests for NifOsg::Loader
2022-09-24 19:10:39 +02:00
elsid
4b760e8846
Do not add redundant nullptr parent
...
There are no failed tests after this, so this is not really needed.
2022-09-24 19:10:31 +02:00
elsid
83bb2195b0
Move init functions for Nif nodes to a separate file
...
This will be used in other tests.
2022-09-24 19:10:25 +02:00
elsid
f2fb3d6de8
Separate NIFFileReader from NIFFile
...
NIFFile might not always be created from a file or stream containing NIF data.
Basically there are 2 different responsibilities for this class:
1. Read NIF file
2. Provide input for nifosg and bulletnifloader.
Remove no longer needed NIFFileMock since the state of NIFFfile can be
initialized independently from reading NIF file.
2022-09-24 19:10:14 +02:00
clang-format-bot
ddb0522bbf
Apply clang-format to code base
2022-09-22 21:35:26 +03:00
Project579
b82176410b
Use std::filesystem for unit tests temporary files path.
2022-09-19 21:42:18 +02:00
elsid
5b1d6917ef
Add comments to prevent line splitting on formatting
2022-09-12 21:00:51 +02:00
elsid
6ae15f08e0
Avoid chained operator() calls to prevent formatting issues
2022-09-12 16:48:15 +02:00
Project579
5456ef1d50
Add new functions and overloads to support std::u8string and std::filesystem::path.
2022-09-11 14:41:20 +02:00
Project579
928b131564
Implement std::filesystem::path conversion tests.
2022-09-11 14:41:20 +02:00
Project579
a13709c510
Replace implicit convertions from std::filesystem::path to std::string with correctly converting functions.
2022-09-11 14:41:20 +02:00
Project579
864112b5db
Fixed Windows build when using MSVC 14.26 and MacOS build.
2022-09-11 14:41:20 +02:00
Project579
e5c417c968
Make sure all paths are passed as std::filesystem::path instead of std::string where possible.
2022-09-11 14:41:15 +02:00
Project579
cf0af87c80
Revert changes from "4c8e1ccf - Fixed windows build and updated tests to reflect changes of escape character from "&" to "\"" in "apps/openmw_test_suite/openmw/options.cpp"
2022-09-11 02:19:07 +02:00
Project579
cd229a965b
Fixed windows build and updated tests to reflect changes of escape character from "&" to "\"
2022-09-11 02:19:07 +02:00
Project579
4bb07282c9
Replace all remaining occurrences of boost::filesystem with std::filesystem.
2022-09-11 02:19:00 +02:00
elsid
22ee592dd3
Lock TileCachedRecastMeshManager once per changing a cell
...
To save time on locking mutex and prevent AsyncNavMeshUpdater to use RecastMesh
for a tile in the middle of objects loading.
2022-09-08 11:06:35 +02:00
elsid
d15e1dca84
Use R-tree for objects to be used for navmesh generation
...
Instead of storing a set of objects per tile.
2022-09-07 22:51:56 +02:00
psi29a
fcd9b78cac
Merge branch 'REFACTOR_STORE' into 'master'
...
Refactoring the ESM store to better support many new ESM4 types
See merge request OpenMW/openmw!2161
2022-09-07 20:22:29 +00:00
elsid
180d609e0d
Check "wait until min distance to player" only for requiredTilesPresent wait condition
...
allJobsDone should wait even if "wait until min distance to player" is 0.
2022-09-06 21:51:48 +02:00
elsid
204ab6fea3
Use version instead of generation and revision for recast mesh
2022-09-06 21:51:48 +02:00
florent.teppe
0dd529ab1d
With the records include removed from store.hpp, need to include the relevant files accross the codebase.Lots of touched files, but very little done
2022-09-06 13:26:13 +02:00
elsid
e2d566b89d
Store changed tiles in TileCachedRecastMeshManager
2022-09-05 11:49:39 +02:00
Evil Eye
02bbb0be45
Improve format workaround and add unit tests
2022-08-26 19:43:57 +00:00
elsid
948e2f5db9
Do not use collision shapes with visual only collision to generate navmesh
...
These collision shapes are not used for actors movement physics simulation.
2022-08-25 00:56:03 +02:00
Evil Eye
0df45a90b3
Use string_view in the remaining Class methods and push string_views closer to the MyGUI boundary
2022-08-23 22:14:27 +02:00
elsid
5dc612aa54
Replace ciCompareLen with ciStartsWith where possible
...
`ciCompareLen(a, b, b.size()) == 0` expression is an equivalent of checking for
equality of `a` prefix with size `b.size()` with `b`.
`ciCompareLen(a, b, a.size()) == 0` is also the same thing but `a` is a prefix
`b` should start with.
2022-08-22 09:32:22 +02:00
elsid
e1bed86d7e
Do single navigator update per frame
...
Primarily for crossing cell border case. Each Navigator::update call has a cost.
Doing it multiple times per frame increased frame duration on cell loading.
Call Navigator::wait only when cell has changed but do not use
Scene::hasCellChanged because it doesn't always indicates it.
2022-08-20 19:15:55 +02:00
Evil Eye
51938f9ef7
Use string_view in Interpreter::Context
2022-08-12 19:42:35 +02:00
psi29a
bb9884c024
Merge branch 'split_stringops' into 'master'
...
Split components/misc/stringops.hpp into multiple headers
See merge request OpenMW/openmw!2233
2022-08-09 18:06:40 +00:00
cody glassman
ac4b29be08
cleanup default shaders and remove confusing main shader
2022-08-07 06:42:48 -07:00
psi29a
00f8c9760a
Merge branch 'fixed_string_tests' into 'master'
...
Replace deprecated std::is_pod
See merge request OpenMW/openmw!2239
2022-08-04 09:55:51 +00:00
elsid
8e4f6fc4e4
Use FetchContent to get googletest
2022-08-04 01:12:11 +02:00
elsid
f99ed6f1db
Split components/misc/stringops.hpp into multiple headers
...
Replace all ciEqual overloads with one having std::string_view as argument.
2022-08-03 22:06:24 +02:00
elsid
da0a1ac9ba
Do compile time checks in compile time instead of tests
2022-08-03 21:47:00 +02:00
elsid
c42c0dcbc9
Replace deprecated std::is_pod
...
apps/openmw_test_suite/esm/test_fixed_string.cpp:99:23: warning: ‘template<class _Tp> struct std::is_pod’ is deprecated: use is_standard_layout && is_trivial instead [-Wdeprecated-declarations]
99 | ASSERT_TRUE(std::is_pod<ESM::NAME>::value);
| ^~~~~~
2022-08-03 21:47:00 +02:00