Commit Graph

6358 Commits (ee398063663f55eaecdfe39e3606714dea3bbfbc)

Author SHA1 Message Date
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" 2 years ago
Project579 cd229a965b Fixed windows build and updated tests to reflect changes of escape character from "&" to "\" 2 years ago
Project579 4bb07282c9 Replace all remaining occurrences of boost::filesystem with std::filesystem. 2 years ago
florent.teppe cdc7864863 missing file 2 years ago
florent.teppe 256d8a699a moves one function from tuplemeta.hpp to newly created tuplehelpers.hpp 2 years ago
elsid ac1688f9c1
Remove ESM::Reader base class
This class does not serve any useful purpose now. It was added as a first step
in attempt to define common interface for ESM3 and ESM4 readers. But this is not
going to happen.
2 years ago
florent.teppe 65bd007baa simplified some big switch/case 2 years ago
psi29a 95f9f00bcc Merge branch 'navigator_rtree' into 'master'
Optimize updating navmesh from the main thread primarily on cell loading

See merge request OpenMW/openmw!2382
2 years ago
psi29a 95ad1d91df Merge branch 'esmstore-round-2' into 'master'
More ESMStore cleanup

See merge request OpenMW/openmw!2383
2 years ago
ζeh Matt aa65df8872
Rename meta.hpp to tuplemeta.hpp 2 years ago
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.
2 years ago
ζeh Matt c856095562
Use compile time generated indices for tuples types 2 years ago
ζeh Matt 8f7703d5c8
Rename HasMember to TupleHasType and move code into misc/meta.hpp 2 years ago
elsid d15e1dca84
Use R-tree for objects to be used for navmesh generation
Instead of storing a set of objects per tile.
2 years ago
psi29a 1859c6eded Merge branch 'pcvisionbonus' into 'master'
Implement PCVisionBonus functions

Closes #6983

See merge request OpenMW/openmw!2371
2 years ago
psi29a 1f2c473242 Merge branch 'bhk' into 'master'
Load bhkCapsuleShape and bhkSphereShape

See merge request OpenMW/openmw!2377
2 years ago
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
2 years ago
Alexei Kotov f17b1cd7ab Load bhkCapsuleShape and bhkSphereShape 2 years ago
psi29a a5664d7ba9 Merge branch 'reserve_utf8_stream' into 'master'
Reserve the output buffer in lowerCaseUtf8

See merge request OpenMW/openmw!2370
2 years ago
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.
2 years ago
elsid 98ddc31902
Fix calculating min distance to nearest absent tile
Tile can be present in either mPushed (waiting in a queue), mProcessingTiles (
being processed or waiting in db queue), mPresentTiles (added to navmesh). It's
not enough to walk over mPushed tiles to find all not present. Need also to
check mProcessingTiles.

Otherwise if all tiles are in mProcessingTiles only
waitUntilJobsDoneForNotPresentTiles may return too early because there are none
in mPushed and therefore none tiles are considered to be absent on navmesh which
is not true.
2 years ago
elsid de80b86cc1
Use proper type to cast enum value 2 years ago
elsid 204ab6fea3
Use version instead of generation and revision for recast mesh 2 years ago
elsid 914edd1194
Make frequently called oneliners inline 2 years ago
elsid d1a294664e
Do not try to update tile to post
changedTiles contains unique set of positions and tilesToPost is empty initially
therefore it's not possible to add the same position twice.
2 years ago
florent.teppe 445d91d85d adds missing include 2 years ago
Evil Eye 489c7a10b6 Implement PCVisionBonus functions 2 years ago
psi29a 9472998bad Merge branch 'ori' into 'master'
Implement the full version of the ori command

See merge request OpenMW/openmw!2368
2 years ago
jvoisin 9f62f0c292 Reserve the output buffer in lowerCaseUtf8
Since lowercasing an utf8 string shouldn't change its size very much,
it does make sense to reserve the output buffer, to reduce
memory allocations.
2 years ago
florent.teppe 3cbd0e0762 Fixed naming convention 2 years ago
florent.teppe 9e40550a4a improved readability of esm3Recname and esm4Recname 2 years ago
florent.teppe 7bd7105345 code cleanup 2 years ago
florent.teppe 252550d86f Added records for ESM4s the throw std:: logic error ensures at compile time that there is no collision
static_assert doesn't work because the function can be called at run time
2 years ago
Evil Eye 0b5c2b4609 Implement the full version of the ori command 2 years ago
elsid e2d566b89d
Store changed tiles in TileCachedRecastMeshManager 2 years ago
psi29a 647b22e175 Merge branch 'DistantLOD' into 'master'
Support for TES distant LOD

See merge request OpenMW/openmw!1861
2 years ago
psi29a 84ec78f0d6 Merge branch 'multitargettransform' into 'master'
Read NiMultiTargetTransformController

See merge request OpenMW/openmw!2357
2 years ago
Alexei Kotov 44fbb5cdc3 Read NiMultiTargetTransformController 2 years ago
Alexei Kotov 8df0587793 Reformat NIF record type mapping 2 years ago
Cédric Mocquillon 83ee25711e Use the pattern according to the esm version 2 years ago
Cédric Mocquillon 6a3d27ce82 Add a dictionary to retrieve the LOD mesh name of a mesh cache 2 years ago
AnyOldName3 4e8e2e1c60 Eliminate &thing[0] pattern 2 years ago
Alexei Kotov a8e561d885 Avoid issues with saved games that have no screenshot data 2 years ago
Alexei Kotov 126090bdc5 Load NiBillboardNode mode field 2 years ago
psi29a 58d08d402a Merge branch 'navigator_stats' into 'master'
Show stats for writing and reading navmesh db queue jobs

See merge request OpenMW/openmw!2346
2 years ago
psi29a 4ff7f8ddfb Merge branch 'string_viewing' into 'master'
Use string_view in yet more places

See merge request OpenMW/openmw!2348
2 years ago
Andrei Kortunov 3037f190be Implement per-font resolution 2 years ago
Andrei Kortunov 3178868cc3 Improve built-in default fonts 2 years ago
Arnaud Dochain 1163c12645 Allows to build on macos 10.15 2 years ago
Evil Eye fb9bc5f535 Use string_view in Fallback::Map 2 years ago
Evil Eye 2222b47e3d Make Settings::Manager::getString return a reference 2 years ago
elsid c15848932b
Separate reading navigator stats and reporting 2 years ago
elsid e9be8b5efe
Show stats for writing and reading navmesh db queue jobs 2 years ago
AnyOldName3 1d177e2d71 Merge branch 'light_fix' into 'master'
Fix incorrect scene lighting #6952

See merge request OpenMW/openmw!2335
2 years ago
Evil Eye 02bbb0be45 Improve format workaround and add unit tests 2 years ago
psi29a e46be1c220 Merge branch 'rm_get_poly_height_status' into 'master'
Do not check getPolyHeight status (#6964)

Closes #6964

See merge request OpenMW/openmw!2334
2 years ago
psi29a c260a0d4c2 Merge branch 'string_me_along' into 'master'
Yet another string_view MR

See merge request OpenMW/openmw!2333
2 years ago
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.
2 years ago
glassmancody.info 1f2d9f2280 don't recycle statesets for light cullcallback for now 2 years ago
elsid ab1ddc690e
Do not check getPolyHeight status
It may fail in some cases depending on a platform without obvious reason.
2 years ago
Evil Eye 4e2e5ad002 Revert format change and ensure string_view args are null-terminated 2 years ago
Evil Eye 1d21330fcc Return string_view from getGameSettingString 2 years ago
jvoisin e0dbe976bc Merge branch 'qt_signalslot_syntax_update' into 'master'
Migrate to functor-based Qt signal-slot connection syntax

Closes #6948

See merge request OpenMW/openmw!2332
2 years ago
Evil Eye 0cded25033 Remove various string copies 2 years ago
Evil Eye 0df45a90b3 Use string_view in the remaining Class methods and push string_views closer to the MyGUI boundary 2 years ago
mpeco 1868534071 functor-based Qt signal-slot syntax components 2 years ago
psi29a 1f5277349c Merge branch 'span' into 'master'
Replace Misc::Span by std::span

See merge request OpenMW/openmw!2324
2 years ago
psi29a 9c24d6b390 Merge branch 'ci_starts_with' into 'master'
Replace ciCompareLen with ciStartsWith where possible

See merge request OpenMW/openmw!2325
2 years ago
Evil Eye 150d1840d6 Use more string_view and const string& 2 years ago
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.
2 years ago
elsid e4a254deb7
Replace Misc::Span by std::span 2 years ago
psi29a 36fbef1048 Merge branch 'apple-silicon-arm-build' into 'master'
Get build working on Apple Silicon

See merge request OpenMW/openmw!2286
2 years ago
psi29a 2a2268ea8b Merge branch 'optimize_navigator_update' into 'master'
Optimize navigator per frame update

See merge request OpenMW/openmw!2308
2 years ago
psi29a f36e13444e Merge branch 'font_loading' into 'master'
Cleanup fonts loading

See merge request OpenMW/openmw!2309
2 years ago
psi29a aa8eba239a Merge branch 'animation_view' into 'master'
Use string_view in animation code

See merge request OpenMW/openmw!2321
2 years ago
unknown 206711876d Address feedback 2 years ago
unknown 827a2f0b77 Use string_view in animation code 2 years ago
Mads Buvik Sandvei 70e1efdd47 omw_GetWorldPosFromUV() should use omw_GetDepth() 2 years ago
Andrei Kortunov 9e1ab590f1 Cleanup fonts loading 2 years ago
psi29a 4078f19c74 Merge branch 'SHADER_HOT_RELOAD' into 'master'
Shaders: Hot reload, togglable by lua debug command

See merge request OpenMW/openmw!2238
2 years ago
florent.teppe 25c1f0ca16 Renamed variable to fix case issue 2 years ago
elsid aea4614240
Fix clang tidy warning 2 years ago
elsid 8147d49178
Remove redundant lock
mGeneration is const and mRevision is changed only from the same thread.
2 years ago
elsid 2885885331
Increase mutex scope in TileCachedRecastMeshManager functions
Which are called from the main thread.
2 years ago
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.
2 years ago
elsid 8125d51a0f
Use std::unique_ptr to implement ScopedLoad
This gives correct implementation of move constructor and assignment operators.
2 years ago
Andrei Kortunov c3d3f3140b Allow to change font settings in the launcher 2 years ago
psi29a bf40f9b287 Merge branch 'name_view' into 'master'
Make Class::getName return string_view

See merge request OpenMW/openmw!2289
2 years ago
Andrew Dunn 808a2e587a Merge commit '5ee4ce1232b0f334f29dd702f811c58dccf5c00d' into apple-silicon-arm-build 2 years ago
psi29a 5ee4ce1232 Merge branch 'nipixeldata' into 'master'
Support more NiPixelData formats (feature #6945)

Closes #6945

See merge request OpenMW/openmw!2290
2 years ago
Alexei Kotov edbd05a3f7 Support more NiPixelData formats (feature #6945) 2 years ago
Evil Eye 4ff12d8945 Make Class::getName return string_view 2 years ago
elsid cc8c7002ea
Cleanup components includes 2 years ago
Andrew Dunn 1d7d3d5765 Get build working on Apple Silicon
Will validate issues with Intel OSX later
2 years ago
psi29a b382e92953 Merge branch 'please_dont_copy_my_nfts' into 'master'
Prevent various values from being copied

See merge request OpenMW/openmw!2267
2 years ago
elsid b1fb42a28c
Cleanup detournavigator includes 2 years ago
psi29a f42ab6a3e7 Merge branch 'coverity' into 'master'
Do not copy data when it is not needed

See merge request OpenMW/openmw!2277
2 years ago
Andrei Kortunov e3ad30a517 Do not copy data when it is not needed 2 years ago
Matt e6868fd211 Allow constexpr hashing 2 years ago
Evil Eye de8d9b8db3 Use Fowler-Noll-Vo hash instead of std::hash 2 years ago