Commit Graph

33659 Commits (25414cd66088e1c995e530141d894dbc5ff74bc6)
 

Author SHA1 Message Date
Alexei Kotov 25414cd660 Merge branch 'rm_esm4_local_static' into 'master'
Remove static modifier from local variables used to store temporary loading results

See merge request OpenMW/openmw!3964
9 months ago
elsid 3358bc80bf Merge branch 'esm4fourcc' into 'master'
Get rid of ESM4::SubRecordTypes

See merge request OpenMW/openmw!3962
9 months ago
elsid 0da8b29a88
Remove static modifier from local variables used to store temporary loading results
They make the code thread unsafe because different threads will use the same
memory to write and read using different instances of the loaded objects.
9 months ago
psi29a 7dcd127295 Merge branch 'openmw-cs-regionmap-improvements' into 'master'
OpenMW CS: Minor region map fixes and improvements

See merge request OpenMW/openmw!3959
10 months ago
psi29a 4ec04486f7 Merge branch 'but-lore-i-have-no-data' into 'master'
Fix #7887, use actual instead of reported size for script data

Closes #7887

See merge request OpenMW/openmw!3958
10 months ago
psi29a ab7e81bca7 Merge branch 'osg_stats_json' into 'master'
Support printing stats table in json format by osg_stats.py and change multi source handling

See merge request OpenMW/openmw!3955
10 months ago
Alexei Kotov 6b93479bd3 Get rid of ESM4::SubRecordTypes
All my homies hate ESM4::SubRecordTypes
10 months ago
elsid 6b860caa3e
Fix spelling 10 months ago
elsid 080245aa26
Do not align arrays by duplicating last value
To produce the same stats for single and multiple sources.

If there are multiple sources with different number of frames, leave the number
of values per each metric as is. For example:

source 1: [1, None, 2]
source 2: [3, None, 4, 5]

before this change becomes:

source 1: [1, 1, 2, 2]
source 2: [3, 3, 4, 5]

and after this change:

source 1: [1, 1, 2]
source 2: [3, 3, 4, 5]
10 months ago
jvoisin 3b485d824e Merge branch 'fix_warnings' into 'master'
Fix warnings

See merge request OpenMW/openmw!3957
10 months ago
Dave Corley fcff1a6739 Fix #7887, use actual instead of reported size for script data 10 months ago
psi29a 854b4f226b Merge branch 'fix_msvc_build' into 'master'
Fix build with MSVC 19.38

See merge request OpenMW/openmw!3960
10 months ago
psi29a 379d9a096f Merge branch 'fix_terrain_texture_cache' into 'master'
Fix performance regression in the terrain texture cache

See merge request OpenMW/openmw!3954
10 months ago
elsid ee2cc8aeb7
Fix build with MSVC 19.38
components\detournavigator\navigator.hpp(44): error C3861: 'assert': identifier not found
10 months ago
Sam Hellawell a62da201e5 check for land index not -1, fix warning
Signed-off-by: Sam Hellawell <sshellawell@gmail.com>
10 months ago
Sam Hellawell 5fca45565c Feature: display different brush for land vs water 10 months ago
Sam Hellawell aa0c9fb4cb Fix: cannot drag region into map, map columns are rectangular 10 months ago
elsid 9ae7b542c6
Fix warning: -Wmaybe-uninitialized
In file included from apps/opencs/model/world/pathgrid.hpp:7,
                 from apps/opencs/model/world/idcollection.hpp:15,
                 from apps/opencs/model/world/idcollection.cpp:1:
In constructor ‘constexpr ESM::Pathgrid::Pathgrid(ESM::Pathgrid&&)’,
    inlined from ‘constexpr CSMWorld::Pathgrid::Pathgrid(CSMWorld::Pathgrid&&)’ at apps/opencs/model/world/pathgrid.hpp:24:12,
    inlined from ‘constexpr CSMWorld::Record<CSMWorld::Pathgrid>::Record(CSMWorld::Record<CSMWorld::Pathgrid>&&)’ at apps/opencs/model/world/record.hpp:39:12,
    inlined from ‘std::__detail::__unique_ptr_t<_Tp> std::make_unique(_Args&& ...) [with _Tp = CSMWorld::Record<CSMWorld::Pathgrid>; _Args = {CSMWorld::Record<CSMWorld::Pathgrid>}]’ at /usr/include/c++/13.2.1/bits/unique_ptr.h:1070:30,
    inlined from ‘std::unique_ptr<CSMWorld::RecordBase> CSMWorld::Record<ESXRecordT>::modifiedCopy() const [with ESXRecordT = CSMWorld::Pathgrid]’ at apps/opencs/model/world/record.hpp:92:116:
components/esm3/loadpgrd.hpp:19:12: warning: ‘<unnamed>.CSMWorld::Record<CSMWorld::Pathgrid>::mBase.CSMWorld::Pathgrid::<unnamed>.ESM::Pathgrid::mData’ may be used uninitialized [-Wmaybe-uninitialized]
   19 |     struct Pathgrid
      |            ^~~~~~~~
In file included from apps/opencs/model/world/idcollection.hpp:8:
apps/opencs/model/world/record.hpp: In member function ‘std::unique_ptr<CSMWorld::RecordBase> CSMWorld::Record<ESXRecordT>::modifiedCopy() const [with ESXRecordT = CSMWorld::Pathgrid]’:
apps/opencs/model/world/record.hpp:92:53: note: ‘<anonymous>’ declared here
   92 |         return std::make_unique<Record<ESXRecordT>>(Record<ESXRecordT>(State_ModifiedOnly, nullptr, &(this->get())));
      |                                                     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
10 months ago
elsid 9b412bc802
Fix benchmark warning: -Wdeprecated-declarations
Example:

apps/benchmarks/settings/access.cpp: In function ‘void {anonymous}::localStatic(benchmark::State&)’:
apps/benchmarks/settings/access.cpp:43:37: warning: ‘typename std::enable_if<(std::is_trivially_copyable<_Tp>::value && (sizeof (Tp) <= sizeof (Tp*)))>::type benchmark::DoNotOptimize(const Tp&) [with Tp = float; typename std::enable_if<(std::is_trivially_copyable<_Tp>::value && (sizeof (Tp) <= sizeof (Tp*)))>::type = void]’ is deprecated: The const-ref version of this method can permit undesired compiler optimizations in benchmarks [-Wdeprecated-declarations]
   43 |             benchmark::DoNotOptimize(v);
      |             ~~~~~~~~~~~~~~~~~~~~~~~~^~~
10 months ago
elsid 16410d0960
Use std::string for ResourceManager cache key
Otherwise terrain textures cache has zero hits because it stores not normalized
paths. Due to implicit conversion it's possible to add entry with
addEntryToObjectCache passing a string that is converted into normalized path.
But then getRefFromObjectCache called with original value does not find this
entry because it's not converted and overloaded operators are used instead.
10 months ago
elsid 2b53c2335f
Support printing stats table in json format 10 months ago
Alexei Kotov 2a41811c83 Merge branch 'buildifx' into 'master'
Fix GCC build

See merge request OpenMW/openmw!3953
10 months ago
Andrei Kortunov 6da151cf77 Fix GCC build 10 months ago
psi29a 5d669f0470 Merge branch 'fix_ui_crashes' into 'master'
Another day, another UI crash fix

See merge request OpenMW/openmw!3949
10 months ago
psi29a 090e57b27c Merge branch 'esm3structs' into 'master'
Replace fixed size writeHNT calls with decomposition

See merge request OpenMW/openmw!3914
10 months ago
psi29a d746918563 Merge branch 'yaml_parse' into 'master'
Load YAML files via Lua

Closes #7590

See merge request OpenMW/openmw!3924
10 months ago
Alexei Kotov 6e2dbfbd74 Merge branch 'check-osg-plugins-but-better' into 'master'
Get OSG to tell us the plugin filenames it's going to use

See merge request OpenMW/openmw!3942
10 months ago
uramer 68ed771816 Fix element detachment logic 10 months ago
uramer 2f40491065 Fix crash when destroying UI element in the same frame as creating it 10 months ago
Evil Eye b52f721318 Use getSubComposite to read AMBI 10 months ago
Andrei Kortunov 715efe892f Load YAML files via Lua (feature 7590) 10 months ago
psi29a 2764d8ceff Merge branch 'fix_destroying_new_elements' into 'master'
Don't destroy root widget for new elements

See merge request OpenMW/openmw!3947
10 months ago
Alexei Kotov 288a911ece Merge branch 'vfs_normalized_path_5' into 'master'
Use normalized path for NifFileManager::get

See merge request OpenMW/openmw!3944
10 months ago
Alexei Kotov 86a47acc39 Merge branch 'chancywind' into 'master'
Roll for each region sound

Closes #7872

See merge request OpenMW/openmw!3935
10 months ago
psi29a f06b93d019 Merge branch '1.0milestone' into 'master'
Replace readme 1.0 label link with 1.0 milestone link (#7876)

Closes #7876

See merge request OpenMW/openmw!3946
10 months ago
AnyOldName3 942eeb54c1 Yet another osgpluginchecker rewrite
It turns out that it's possible for OSG plugins to be spread across multiple directories, and OSG doesn't account for this in osgDB::listAllAvailablePlugins(), even though it works when actually loading the plugin.

Instead, use code that's much more similar to how OSG actually loads plugin, and therefore less likely to miss anything.

Incidentally make things much simpler as we don't need  awkwardness from working around osgDB::listAllAvailablePlugins()'s limitations.
10 months ago
Evil Eye 0fdc432eb2 Format probability 10 months ago
Evil Eye c0578613af Remove superfluous members 10 months ago
Evil Eye 1d69d38081 Add an actual probability column 10 months ago
Evil Eye f9da2b6b26 Roll for each region sound 10 months ago
uramer b12f98db98 Don't destroy root widget for new elements 10 months ago
psi29a dce0a9e11e Merge branch 'sea-cache' into 'master'
MSVC CCache support

See merge request OpenMW/openmw!3938
10 months ago
psi29a df1be7102f Merge branch 'resolution_follow_up' into 'master'
Partially revert 5dcac4c48f

See merge request OpenMW/openmw!3940
10 months ago
Alexei Kotov 75d4ea5d5d Replace readme 1.0 label link with 1.0 milestone link (#7876) 10 months ago
elsid 859d765921
Use normalized path for NifFileManager::get 10 months ago
elsid 3ea3eeb613
Use string_view for canOptimize 10 months ago
elsid a98ce7f76a
Replace std::filesystem::path by std::string_view in Files::getHash argument 10 months ago
elsid 79b73e45a1
Replace std::filesystem::path by std::string and std::string_view in nif code
It's used only for error reporting.
10 months ago
elsid cd3c3ebadb
Use VFS::Path::Normalized for ResourceManager cache key 10 months ago
psi29a b5b6744321 Merge branch 'hotfix_ui_update' into 'master'
Fix Lua UI updates

See merge request OpenMW/openmw!3936
10 months ago