1
0
Fork 0
mirror of https://github.com/OpenMW/openmw.git synced 2025-01-16 21:59:55 +00:00
Commit graph

22167 commits

Author SHA1 Message Date
psi29a
628480357b Merge branch 'soumd_followup' into 'master'
Modify sound API permissions

See merge request OpenMW/openmw!3952
2024-03-25 13:45:37 +00:00
psi29a
ef5314c247 Merge branch 'herebedragons' into 'master'
Exterior cell naming corrections

See merge request OpenMW/openmw!3976
2024-03-25 13:45:12 +00:00
psi29a
666d2835ab Merge branch 'mgefverify' into 'master'
Use the right ID for magic effect verifier messages (#7894)

Closes #7894

See merge request OpenMW/openmw!3971
2024-03-25 13:44:38 +00:00
AnyOldName3
0e2f28156d Restore logging of openmw.cfg paths in launcher
Removed here https://gitlab.com/OpenMW/openmw/-/merge_requests/2650/diffs#be09c16519a3f26f4306b920c50e0e4215dffaee_329_328
2024-03-24 23:48:37 +00:00
Dave Corley
c59d097ab2 FIX(#7898): Limit scale for references TES3 values 2024-03-24 16:37:48 -05:00
Alexei Kotov
d7257e056c Merge branch 'remove-unused-regionmap-constructor' into 'master'
Minor cleanup: Remove unused regionmap CellDescription constructor

See merge request OpenMW/openmw!3973
2024-03-24 13:08:24 +00:00
Alexei Kotov
ba69e1737c Use the right shader for 360-degree screenshots
Doesn't fix #7720
2024-03-24 13:45:46 +03:00
Alexei Kotov
0f7b4fc6e6 Consistently avoid null pointer dereferencing in postprocessor (#7587) 2024-03-24 13:40:45 +03:00
Alexei Kotov
38eb741bfd Merge branch 'fix_global_iteration' into 'master'
Lua: Fix Global Variable Iteration

See merge request OpenMW/openmw!3835
2024-03-24 09:44:15 +00:00
jvoisin
79a62b3ad3 Merge branch 'enable_normals_for_all' into 'master'
Restructure colormasks at higher level

See merge request OpenMW/openmw!3970
2024-03-23 21:56:30 +00:00
Cody Glassman
a4dd9224df Restructure colormasks at higher level 2024-03-23 21:56:30 +00:00
Alexei Kotov
24913687cd Exterior cell naming corrections
Use the ID for anonymous regions
Try to use the name of the worldspace for ESM4
2024-03-23 17:24:33 +03:00
Evil Eye
5a0aed3a78 Use more decomposition, string_view, and implicit sizes in ESM code 2024-03-23 12:15:09 +01:00
Evil Eye
781e797810 Merge branch 'instanceselectionmode' into 'master'
Fix instance selection mode destruction (#7447)

Closes #7447

See merge request OpenMW/openmw!3945
2024-03-23 08:08:15 +00:00
Evil Eye
bf708acfac Merge branch 'goddamnit-there-are-more' into 'master'
Even more MSVC-specific warnings that evaded detection in CI

See merge request OpenMW/openmw!3968
2024-03-23 08:07:28 +00:00
Evil Eye
c92e63aaf2 Merge branch 'cleanup_includes' into 'master'
Cleanup includes

See merge request OpenMW/openmw!3916
2024-03-23 08:06:12 +00:00
Alexei Kotov
63276e0f1f Merge branch 'avoid_copy' into 'master'
Follow-up for YAML API

See merge request OpenMW/openmw!3961
2024-03-23 07:13:39 +00:00
AnyOldName3
7c85755950 Warning that doesn't fire with MSVC 2022
Hopefully this fixes it.
I've only tried MSVC 2022 locally, so can't verify this fix.
2024-03-23 02:34:57 +00:00
AnyOldName3
1aff88e6a3 Even more warning fixes 2024-03-23 00:33:50 +00:00
Zackhasacat
d6241dd1c5 Add back new_index 2024-03-22 17:41:12 -05:00
Sam Hellawell
c20a23b694 Remove unused regionmap CellDescription constructor 2024-03-22 03:13:04 +00:00
Alexei Kotov
79039f88df Use the right ID for magic effect verifier messages (#7894) 2024-03-22 04:34:38 +03:00
AnyOldName3
da8150e2e4 Even more MSVC-specific warnings that evaded detection in CI 2024-03-21 15:51:29 +00:00
elsid
37b695a0cf
Cleanup includes 2024-03-21 11:14:01 +01:00
psi29a
82bc6674dc Merge branch 'that-one-issue-sophie-keeps-nagging-about' into 'master'
Don't throw away user-provided shadow map resolutions

Closes #7891

See merge request OpenMW/openmw!3965
2024-03-21 07:45:26 +00:00
psi29a
af9f1b54da Merge branch 'lost-warnings' into 'master'
Fixes for a whole bunch of warnings

See merge request OpenMW/openmw!3950
2024-03-21 07:45:21 +00:00
AnyOldName3
0371791cce Break 2024-03-20 23:12:19 +00:00
AnyOldName3
b15f7857c0 currentDir.value is already canonicalised 2024-03-20 14:34:23 +00:00
AnyOldName3
f49d270c26 Don't throw away user-provided shadow map resolutions
Resolves https://gitlab.com/OpenMW/openmw/-/issues/7891

I think this is better than just adding 8192 as an allowed option as the vast majority of GPUs would be too slow given what we know about the cost if that setting (maybe that'll change if we get rid of the unconditional conditional discard I suspect is the cause of the slowness that's there for no good reason since the shadowsbin already moves most drawables to a known alpha-free stateset).
2024-03-20 00:54:12 +00:00
Alexei Kotov
974415addf Allow weapon equip/unequip animations to intersect (#7886) 2024-03-19 13:55:23 +03:00
psi29a
7dcd127295 Merge branch 'openmw-cs-regionmap-improvements' into 'master'
OpenMW CS: Minor region map fixes and improvements

See merge request OpenMW/openmw!3959
2024-03-19 09:24:48 +00:00
Andrei Kortunov
2d3a8ca0fc Do not use an inner namespace 2024-03-17 18:15:23 +04:00
Andrei Kortunov
2523afe9c2 Use namespace instead of static class 2024-03-16 22:06:28 +04:00
Andrei Kortunov
b657cb2e4c Simplify code 2024-03-16 22:06:28 +04:00
Andrei Kortunov
8037ad7f00 Remove unused includes 2024-03-16 22:06:15 +04:00
Sam Hellawell
a62da201e5 check for land index not -1, fix warning
Signed-off-by: Sam Hellawell <sshellawell@gmail.com>
2024-03-16 09:02:47 +00:00
Sam Hellawell
5fca45565c Feature: display different brush for land vs water 2024-03-16 07:48:40 +00:00
Sam Hellawell
aa0c9fb4cb Fix: cannot drag region into map, map columns are rectangular 2024-03-16 07:48:40 +00:00
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())));
      |                                                     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
2024-03-16 02:34:50 +01:00
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);
      |             ~~~~~~~~~~~~~~~~~~~~~~~~^~~
2024-03-16 01:58:12 +01:00
AnyOldName3
ddb2c15bc9 Review 2024-03-15 16:31:02 +00:00
Andrei Kortunov
009ccca978 Modify sound API permissions 2024-03-15 19:48:43 +04:00
AnyOldName3
b5f61a119a min 2024-03-15 13:42:28 +00:00
psi29a
090e57b27c Merge branch 'esm3structs' into 'master'
Replace fixed size writeHNT calls with decomposition

See merge request OpenMW/openmw!3914
2024-03-15 11:02:42 +00:00
psi29a
d746918563 Merge branch 'yaml_parse' into 'master'
Load YAML files via Lua

Closes #7590

See merge request OpenMW/openmw!3924
2024-03-15 11:02:05 +00:00
AnyOldName3
dd18e17c97 And now Clang's noticed questionable type conversions 2024-03-15 00:47:09 +00:00
AnyOldName3
9638fbabb4 https://www.youtube.com/watch?v=2_6U9gkQeqY 2024-03-15 00:11:19 +00:00
AnyOldName3
ff3ffa13b6 Auto format 2024-03-14 23:54:22 +00:00
AnyOldName3
28131fd62b Fixes for a whole bunch of warnings
These warnings were always enabled, but we didn't see them due to https://gitlab.com/OpenMW/openmw/-/issues/7882.
I do not fully understand the cause of 7822 as I can't repro it in a minimal CMake project.

Some of these fixes are thought through.
Some are sensible best guesses.
Some are kind of a stab in the dark as I don't know whether there was a
possible bug the warning was telling me about that I've done nothing to
help by introducing a static_cast.

Nearly all of these warnings were about some kind of narrowing
conversion, so I'm not sure why they weren't firing with GCC and Clang,
which have -Wall -Wextra -pedantic set, which should imply -Wnarrowing,
and they can't have been affected by 7882.

There were also some warnings being triggered from Boost code.
The vast majority of library headers that do questionable things weren't
firing warnings off, but for some reason, /external:I wasn't putting
these Boost headers into external mode.

We need these warnings dealt with one way or another so we can switch
the default Windows CI from MSBuild (which doesn't do ccache) to Ninja
(which does).
I have the necessary magic for that on a branch, but the branch won't
build because of these warnings.
2024-03-14 23:39:33 +00:00
Andrei Kortunov
715efe892f Load YAML files via Lua (feature 7590) 2024-03-14 16:29:21 +04:00
Alexei Kotov
288a911ece Merge branch 'vfs_normalized_path_5' into 'master'
Use normalized path for NifFileManager::get

See merge request OpenMW/openmw!3944
2024-03-13 19:18:39 +00:00
Evil Eye
0fdc432eb2 Format probability 2024-03-12 20:09:04 +01:00
Evil Eye
c0578613af Remove superfluous members 2024-03-12 20:09:04 +01:00
Evil Eye
1d69d38081 Add an actual probability column 2024-03-12 20:09:04 +01:00
Evil Eye
f9da2b6b26 Roll for each region sound 2024-03-12 20:09:02 +01:00
Zackhasacat
59a25291f8 Fix errors 2024-03-12 07:29:48 -05:00
Zackhasacat
8b75932f50 Merge branch 'master' of gitlab.com:openmw/openmw into fix_global_iteration 2024-03-12 06:54:15 -05:00
psi29a
df1be7102f Merge branch 'resolution_follow_up' into 'master'
Partially revert 5dcac4c48f

See merge request OpenMW/openmw!3940
2024-03-12 08:17:18 +00:00
Alexei Kotov
cdbe6adfc3 Fix instance selection mode destruction (#7447) 2024-03-12 03:39:14 +03:00
elsid
a98ce7f76a
Replace std::filesystem::path by std::string_view in Files::getHash argument 2024-03-11 22:07:37 +01:00
elsid
79b73e45a1
Replace std::filesystem::path by std::string and std::string_view in nif code
It's used only for error reporting.
2024-03-11 22:07:37 +01:00
Alexei Kotov
6232b4f9e8 Reimplement the Settings window as a normal window (#7845, #7870) 2024-03-11 23:48:44 +03:00
psi29a
3cb8d05fe5 Merge branch 'vfs_normalized_path_4' into 'master'
Use VFS::Path::Normalized in few more places

See merge request OpenMW/openmw!3934
2024-03-11 07:29:55 +00:00
Andrei Kortunov
f7e5ef74c6 Partially revert 5dcac4c48f 2024-03-10 14:53:55 +04:00
Alexei Kotov
30f314025a Log whether shaders or FFP are used for rendering 2024-03-10 04:53:30 +03:00
psi29a
6f9ceff3f3 Merge branch 'windows_build' into 'master'
Add option to disable precompiled headers

See merge request OpenMW/openmw!3933
2024-03-09 09:48:57 +00:00
psi29a
ef8228f2f3 Merge branch 'fix/hardcoded-weather-meshes' into 'master'
Fix: hardcoded weather meshes, use settings instead

See merge request OpenMW/openmw!3880
2024-03-09 09:48:26 +00:00
psi29a
c3a44ca74a Merge branch 'mapped' into 'master'
Track map position using MWWorld::Cell

See merge request OpenMW/openmw!3932
2024-03-09 09:48:14 +00:00
elsid
ffbeb5ab98
Build localization path using VFS::Path::Normalized 2024-03-09 00:21:17 +01:00
elsid
84adb0a148
Make VFS::Path::Normalized constructor from std::string_view explicit 2024-03-09 00:21:16 +01:00
Evil Eye
504a9e7d43 Address feedback 2024-03-08 17:09:49 +01:00
psi29a
a926f4a5a9 Merge branch 'alt_tab_fix' into 'master'
Do not treat Alt-Tab as resolution change

Closes #7866

See merge request OpenMW/openmw!3931
2024-03-08 08:41:55 +00:00
elsid
5859fd464c
Add option to disable precompiled headers
To be able to use ccache.

Also fix compilation errors appeared due to absence of precompiled
headers.
2024-03-08 02:11:51 +01:00
Evil Eye
b055367b3b Track map position using MWWorld::Cell 2024-03-07 21:36:21 +01:00
Andrei Kortunov
5dcac4c48f Do not treat Alt-Tab as resolution change (bug 7866) 2024-03-07 15:43:35 +04:00
Sam Hellawell
c6ee01b0be Apply fix to sky manager
Signed-off-by: Sam Hellawell <sshellawell@gmail.com>
2024-03-07 04:49:48 +00:00
Sam Hellawell
bf7819f71d fix clang format 2024-03-07 02:28:14 +00:00
Sam Hellawell
f28b3f6601 Style tweak
Signed-off-by: Sam Hellawell <sshellawell@gmail.com>
2024-03-07 02:28:14 +00:00
Sam Hellawell
af8c2a94df Fix: hardcoded weather meshes, use settings instead
Signed-off-by: Sam Hellawell <sshellawell@gmail.com>
2024-03-07 02:28:14 +00:00
uramer
9ae61f1932 Fix child UI Elements created in the same frame as parent 2024-03-06 23:16:02 +01:00
AnyOldName3
7f1a6a8187 Fix file that's not used on Windows 2024-03-06 01:37:40 +00:00
AnyOldName3
a130ca57a4 Track source of settings
This one's a biggie.

The basic idea's that GameSettings should know:
* what the interpreted value of a setting is, so it can actually be used.
* what the original value the user put in their config was, so it can be put back when the config's saved.
* which path it's processing the openmw.cfg from so relative paths can be resolved correctly.
* whether a setting's a user setting that can be modified, or from one of the other openmw.cfg files that can't necessarily be modified.

This had fairly wide-reaching implications.

The first is that paths are resolved properly in cases where they previously wouldn't have been.
Without this commit, if the launcher saw a relative path in an openmw.cfg, it'd be resolved relative to the process' working directory (which we always set to the binary directory for reasons I won't get into).
That's not what the engine does, so is bad.
It's also not something a user's likely to suspect.
This mess is no longer a problem as paths are resolved correctly when they're loaded instead of on demand when they're used by whatever uses them.

Another problem was that if paths used slugs like ?userconfig? would be written back to openmw.cfg with the slugs replaced, which defeats the object of using the slugs.
This is also fixed.

Tracking which settings are user settings and which are in a non-editable openmw.cfg allows the launcher to grey out rows so they can't be edited (which is sensible as they can't be edited on-disk) while still being aware of content files that are provided by non-user data directories etc.
This is done in a pretty straightforward way for the data directories and fallback-archives, as those bits of UI are basic, but it's more complicated for content files as that uses a nmodel/view approach and has a lot more moving parts.
Thankfully, I'd already implemented that when dealing with builtin.omwscripts, so it just needed wiring up.

One more thing of note is that I made the SettingValue struct storable as a QVariant so it could be attached to the UI widgets as userdata, and then I could just grab the original representation and use it instead of needing any complicated mapping from display value to on-disk value.
2024-03-06 00:36:13 +00:00
psi29a
effb4fc383 Merge branch 'whoanotouchy' into 'master'
Properly calculate touch spell hit position (#6156)

Closes #6156

See merge request OpenMW/openmw!3920
2024-03-05 09:24:35 +00:00
psi29a
9434f52c14 Merge branch 'fix/less-strict-ids' into 'master'
Fix(idvalidator): Allow any printable character in refIds

Closes #7721

See merge request OpenMW/openmw!3896
2024-03-05 09:23:44 +00:00
psi29a
e340b06411 Merge branch 'get-glextensions-properly' into 'master'
Get the GLExtensions instance when a context is created

Closes #7351

See merge request OpenMW/openmw!3022
2024-03-04 15:05:23 +00:00
psi29a
61f5a13c02 Merge branch 'check-osg-plugins' into 'master'
Check for dynamic OSG plugins on launch

Closes #7736

See merge request OpenMW/openmw!3748
2024-03-04 08:00:16 +00:00
Alexei Kotov
1f629b1368 Account for Hrnchamd's research in touch effect hit position calculation 2024-03-04 00:00:16 +03:00
Evil Eye
cef59e8928 Replace fixed size writeHNT calls with decomposition 2024-03-03 19:39:19 +01:00
Alexei Kotov
828bf3d11a Merge branch 'imperfectoil' into 'master'
Implement auto calculated potion values

Closes #7859

See merge request OpenMW/openmw!3918
2024-03-03 14:50:03 +00:00
Alexei Kotov
7a84f27eeb Properly calculate touch spell hit position (#6156)
Reorganize hit contact logic and remove dead code (distance checks, melee hit contact-relevant stuff)
2024-03-03 13:22:58 +03:00
psi29a
d168466034 Merge branch 'raciallybound' into 'master'
Expose races to Lua

See merge request OpenMW/openmw!3863
2024-03-02 20:14:27 +00:00
Evil Eye
958f70736f Implement auto calculated potion values 2024-03-02 12:45:48 +01:00
Evil Eye
e54decc830 Remove redundant is_automagicals 2024-03-01 12:24:36 +01:00
psi29a
e6f64f5e71 Merge branch 'fullhelp' into 'master'
Move full help text after everything else (#7623)

Closes #7623

See merge request OpenMW/openmw!3907
2024-02-29 18:23:20 +00:00
AnyOldName3
1af59c3a43 Tooltips for data-local and resources/vfs 2024-02-29 00:48:03 +00:00
psi29a
03d5872a55 Merge branch 'drop_on_exit' into 'master'
Add a storage mode to drop section on game exit

See merge request OpenMW/openmw!3905
2024-02-28 20:36:40 +00:00
Evil Eye
0519e1215f Unify the creation of RefId tables 2024-02-28 17:20:46 +01:00
AnyOldName3
322a378907 Load correct config files in the wizard 2024-02-28 00:49:15 +00:00
Alexei Kotov
27b1434f5b Use string_view for full help text 2024-02-28 01:06:42 +03:00
Evil Eye
cd118ee263 Expose races to Lua 2024-02-27 21:50:57 +01:00
Andrei Kortunov
ddd0945645 Add a storage mode to drop section on game exit 2024-02-27 23:26:22 +04:00
AnyOldName3
f476301670 There's no such thing as the global data directory
That's what resources/vfs is for.
2024-02-27 14:11:48 +00:00
AnyOldName3
626f438dcc Make builtin.omwscripts actually mandatory
Previously it was quasi-mandatory - lots of things would add it, e.g. when running openmw through the CS, but it could technically be disabled.

Now it's treated like the resources/vfs directory and implicitly added by the engine etc.
2024-02-27 01:09:46 +00:00
Alexei Kotov
46f863a32e Merge branch 'help-i-cant-swim' into 'master'
Fix(editor): Don't save dirty water height values

Closes #7841

See merge request OpenMW/openmw!3881
2024-02-26 21:50:50 +00:00
psi29a
619ccf7107 Merge branch 'decomposition' into 'master'
Use decompose to remove more instances of pragma pack

See merge request OpenMW/openmw!3906
2024-02-26 11:23:17 +00:00
psi29a
f2039b35d0 Merge branch 'vfs_normalized_path_3' into 'master'
Use normalized path for correctSoundPath

See merge request OpenMW/openmw!3903
2024-02-26 11:21:33 +00:00
psi29a
051f3dcd56 Merge branch 'fps_independent_water_ripples' into 'master'
Make water ripples simulation FPS independent (#7687)

Closes #7687

See merge request OpenMW/openmw!3885
2024-02-26 11:21:13 +00:00
AnyOldName3
357bf3db61 Load all config files 2024-02-25 14:01:20 +00:00
Alexei Kotov
01e0b25fd3 Merge branch 'coverity' into 'master'
Fix some Coverity complaints

See merge request OpenMW/openmw!3904
2024-02-24 20:25:58 +00:00
Alexei Kotov
65aa222efa Move full help text after everything else (#7623) 2024-02-24 23:05:27 +03:00
Evil Eye
7d7e8939ab Use ESM::decompose to handle WPDTstruct 2024-02-24 16:55:58 +01:00
Evil Eye
ec1c6ee171 Use ESM::decompose to handle ENAMstruct 2024-02-24 14:03:24 +01:00
elsid
ec9c829021
Use normalized path for correctSoundPath 2024-02-24 12:42:36 +01:00
elsid
92d57d6e46
Make Normalized constructor from const char* explicit 2024-02-24 12:42:02 +01:00
Evil Eye
595e42ae43 Merge branch 'lua_death_finished' into 'master'
Add a Lua function to check if actor's death is finished

See merge request OpenMW/openmw!3901
2024-02-24 10:31:15 +00:00
Andrei Kortunov
cf6b6020a0 Move local variables 2024-02-23 17:10:55 +04:00
Andrei Kortunov
1126f38a1e Do not copy the whole attributes store 2024-02-23 17:02:40 +04:00
psi29a
f307e7acc7 Merge branch 'well-that-was-really-dumb' into 'master'
Actually use the plane distances we just computed

Closes #7844

See merge request OpenMW/openmw!3898
2024-02-23 08:14:55 +00:00
psi29a
717f1c9870 Merge branch 'floatingpoint' into 'master'
CharacterController: rework movement queueing logic (#7835)

Closes #7835

See merge request OpenMW/openmw!3875
2024-02-23 08:14:43 +00:00
AnyOldName3
53afa6b185 Appease clang-format by changing something I didn't touch 2024-02-23 00:15:23 +00:00
AnyOldName3
36a75cdb29 Get the GLExtensions instance when a context is created 2024-02-23 00:15:23 +00:00
psi29a
e4a9e83609 Merge branch 'disable-shadows-properly-properly' into 'master'
Affect correct texture units when disabling shadows for stateset

Closes #7838

See merge request OpenMW/openmw!3891
2024-02-22 18:05:48 +00:00
psi29a
a6c9e63520 Merge branch 'nojumpallowed' into 'master'
Reduce false-positive jumping events (#7833)

Closes #7833

See merge request OpenMW/openmw!3869
2024-02-22 18:05:07 +00:00
Andrei Kortunov
7c4b42ab2a Add a Lua function to check if actor's death is finished 2024-02-22 19:06:15 +04:00
Dave Corley
ce2787e15e Cleanup(loadcell): Rename setHasWater to setHasWaterHeightSub 2024-02-22 03:26:17 -06:00
Dave Corley
b2b1c98396 fix(esmtool): Don't try to log a variable that doesn't exist 2024-02-22 03:01:29 -06:00
Dave Corley
bb35f0366a Fix(loadcell): Save water height regardless of value, if the user actually adjusted it 2024-02-22 03:01:28 -06:00
Dave Corley
090a389feb Cleanup(idvalidator): Just don't use isValid function and instead
directly check if input is a printable char
2024-02-22 02:52:58 -06:00
psi29a
99d0fc6f75 Merge branch 'fix_controller_controls_cam' into 'master'
Fix player looking/controls via controller

See merge request OpenMW/openmw!3890
2024-02-22 08:10:01 +00:00
psi29a
518f34c869 Merge branch 'bsa_archive' into 'master'
Cleanup and optimize BSA archives code

See merge request OpenMW/openmw!3876
2024-02-22 08:02:12 +00:00
AnyOldName3
f27564ec78 Actually use the plane distances we just computed
We don't get any of the speedup if we don't do this.

We also forget about any objects nearer the camera than the previous value except the groundcover we're just about to deal with.

Fixes https://gitlab.com/OpenMW/openmw/-/issues/7844
2024-02-22 00:16:41 +00:00
Dave Corley
9fc66d5de6 Fix(idvalidator): Allow any printable character in refIds 2024-02-21 15:25:13 -06:00
psi29a
7a8b27736e Merge branch 'fix_benchmark_warning' into 'master'
Update google benchmark to 1.8.3 and fix related warnings

See merge request OpenMW/openmw!3877
2024-02-21 10:22:01 +00:00
Alexei Kotov
93bb67a08f Merge branch 'launcher_fixes' into 'master'
Minor launcher improvements

Closes #7843

See merge request OpenMW/openmw!3887
2024-02-21 05:51:27 +00:00
AnyOldName3
535c5e328a Affect correct texture units when disabling shadows for stateset
Knowing which are right required making the function non-static, so the shadow manager had to become a singleton as the results of passing it around to where it's needed were hellish.

I'm seeing a bunch of OpenGL errors when actually using this, so I'll investigate whether they're happening on master.
I'm hesitant to look into it too much, though, as I'm affected by https://gitlab.com/OpenMW/openmw/-/issues/7811, and also have the Windows setting enabled that turns driver timeouts into a BSOD so a kernel dump is collected that I can send to AMD.
2024-02-20 21:02:31 +00:00
Zackhasacat
b4c5a2777a Rename var 2024-02-20 13:20:09 -06:00
Zackhasacat
ccb506385f Fix player looking/controls 2024-02-20 13:07:44 -06:00
Zackhasacat
d73c1c8590 Merge branch 'master' of gitlab.com:openmw/openmw into lua_controller_cursor 2024-02-20 12:07:23 -06:00
Zackhasacat
873877795a Move gamepad controls to lua interface 2024-02-20 12:06:19 -06:00
Andrei Kortunov
3971abf5e6 Minor launcher improvements (feature 7843) 2024-02-20 14:02:59 +04:00
psi29a
8c8fffc2c6 Merge branch 'fix_shared_library_build' into 'master'
Build fixes related to shared libraries and position independent code

See merge request OpenMW/openmw!3878
2024-02-20 08:47:14 +00:00
Alexei Kotov
15a42f26a7 Merge branch 'fix_distance_spinbox' into 'master'
Fix viewing distance spinbox in the launcher

Closes #7840

See merge request OpenMW/openmw!3882
2024-02-20 08:38:01 +00:00
Alexei Kotov
592081d3cb Merge branch 'addcarry' into 'master'
Add missing lua function types.Item.isCarriable

See merge request OpenMW/openmw!3879
2024-02-20 08:36:46 +00:00
elsid
c9b4c8632a
Update ripples surface only when there is need to do so
This depends on the difference between FPS which is dynamic and ripples update
frequency which is contant. If FPS > ripples update frequency, some frames do
nothing. If FPS <= ripples update frequency each frame runs shaders once. Update
offset, possitions shader uniforms only when it will be run.
2024-02-20 00:44:39 +01:00
elsid
3b01e209b1
Use proper names for static members 2024-02-19 23:13:12 +01:00
elsid
56e69cf7a2
Make some RipplesSurface members private 2024-02-19 23:13:12 +01:00
elsid
dc5371d157
Remove unused RipplesSurface::State::mOffset 2024-02-19 23:13:11 +01:00
Andrei Kortunov
6f1710dee1 Fix viewing distance spinbox in the launcher (bug 7840) 2024-02-19 16:14:52 +04:00
psi29a
3369184c19 Merge branch 'lesspragmaticpackages' into 'master'
Use decompose to handle AI packages and data

See merge request OpenMW/openmw!3856
2024-02-19 09:59:59 +00:00
Zackhasacat
fed62a8517 Remove unneeded line 2024-02-18 15:58:18 -06:00
Zackhasacat
92242a3d54 Simplify 2024-02-18 13:20:58 -06:00
Zackhasacat
731095831d Add missing function types.Item.isCarriable() 2024-02-18 13:15:56 -06:00
elsid
e9c672b297
Fix build with cmake flag BUILD_SHARED_LIBS=ON
Always build opencs-lib as static library instead of BUILD_SHARED_LIBS deciding
whether it's static or shared library.
2024-02-18 19:35:32 +01:00
elsid
cc9f9b53ba
Convert BsaVersion to enum class 2024-02-18 14:54:51 +01:00
elsid
df077a2524
Simplify and reduce code duplication for BSA archive creation 2024-02-18 14:54:14 +01:00
elsid
da5ab2b2c9
Fix benchmark warning: -Wdeprecated-declarations
/home/elsid/dev/openmw/apps/benchmarks/detournavigator/navmeshtilescache.cpp: In function ‘void {anonymous}::getFromFilledCache(benchmark::State&)’:
/home/elsid/dev/openmw/apps/benchmarks/detournavigator/navmeshtilescache.cpp:186:37: warning: ‘typename std::enable_if<((! std::is_trivially_copyable<_Tp>::value) || (sizeof (Tp) > sizeof (Tp*)))>::type benchmark::DoNotOptimize(const Tp&) [with Tp = DetourNavigator::NavMeshTilesCache::Value; 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]
  186 |             benchmark::DoNotOptimize(result);
      |             ~~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~
In file included from /home/elsid/dev/openmw/apps/benchmarks/detournavigator/navmeshtilescache.cpp:1:
/home/elsid/dev/benchmark/build/gcc/release/install/include/benchmark/benchmark.h:507:5: note: declared here
  507 |     DoNotOptimize(Tp const& value) {
      |     ^~~~~~~~~~~~~
2024-02-18 14:25:03 +01:00
Alexei Kotov
41d41780a8 CharacterController: rework movement queueing logic (#7835) 2024-02-18 14:01:10 +03:00
psi29a
f9820e2061 Merge branch 'debugdrawdebugged' into 'master'
Try to uncursify debug primitive drawer (#7767)

Closes #7767

See merge request OpenMW/openmw!3852
2024-02-17 18:56:21 +00:00
psi29a
8545fb920e Merge branch '9-ancestral-tenets' into 'master'
Fix(CS): Scale actors according to their race's stats

Closes #7753

See merge request OpenMW/openmw!3714
2024-02-17 11:57:20 +00:00
jvoisin
0db730825d Merge branch 'drainmaximummagicka' into 'master'
Hide magnitude for Fortify Maximum Magicka when requested as well (#7832)

Closes #7832

See merge request OpenMW/openmw!3868
2024-02-16 23:02:52 +00:00
Alexei Kotov
aae74224e8 Prevent swim upward correction from causing false-positive jumping events (#7833) 2024-02-16 14:28:43 +03:00
Alexei Kotov
7873714103 Restore vertical movement reset for various movement states (#7833)
Note getJump already handles incapacitation states (dead/paralyzed/KO)
2024-02-16 13:37:11 +03:00
Alexei Kotov
6e81927d60 Make extra sure to ignore movement input for scripted animations (#7833) 2024-02-16 13:37:11 +03:00
Dave Corley
54f4c69d37 Cleanup(columnimp): Use std::clamp to limit race scaling 2024-02-15 21:25:29 -06:00
psi29a
1280345296 Merge branch 'copy_qtbase' into 'master'
Copy qtbase translations

See merge request OpenMW/openmw!3840
2024-02-15 09:26:42 +00:00
psi29a
2ae137f709 Merge branch 'lua_element_crash' into 'master'
Fix crash when throwing in index meta methods

Closes #7711

See merge request OpenMW/openmw!3862
2024-02-15 09:15:45 +00:00
Andrei Kortunov
9a7b9572fd Deploy base Qt translations when needed 2024-02-15 09:26:14 +04:00
Dave Corley
54e90b4ac2 Legacy(columnimp): Add TESCS limits for race weight/height scaling 2024-02-14 20:00:22 -06:00
Alexei Kotov
c1b9beb763 Merge branch 'deadanimation' into 'master'
Remove dead code

See merge request OpenMW/openmw!3866
2024-02-15 00:57:59 +00:00
Dave Corley
1b1f0c4971 Switch height/weight in names and make the stats a simple struct instead 2024-02-14 18:01:31 -06:00
Alexei Kotov
a0ba0d781a Hide magnitude for Fortify Maximum Magicka when requested as well (#7832) 2024-02-15 01:50:49 +03:00
Dave Corley
98ad059806 Cleanup(actoradapter): Use more explicit names & vec2 for racial height/weight 2024-02-14 16:42:27 -06:00
Dave Corley
049550d73e Cleanup(Actoradapter.cpp): Create new struct for race stats, use
std::pair instead
2024-02-14 16:42:27 -06:00
Dave Corley
b31664a78f Fix(CS): Scale actors according to their race's stats 2024-02-14 16:42:27 -06:00
uramer
08b7ee8a44 Test LuaUtil::safeGet preventing crash 2024-02-14 09:49:32 +01:00
psi29a
ec1cf46ec7 Merge branch 'lua_keybinds' into 'master'
Lua Implement mouse input engine handlers, improve inputBinding renderer

See merge request OpenMW/openmw!3855
2024-02-14 08:30:38 +00:00
psi29a
29c2042432 Merge branch 'lua_callback_crash' into 'master'
Lua Fix crash when passing a non-callback table to a callback argument

Closes #7827

See merge request OpenMW/openmw!3861
2024-02-14 08:29:58 +00:00
psi29a
fda47a6ebe Merge branch 'flying-fish-straight-to-jail' into 'master'
Groundcover should ignore non-geometry Drawables

Closes #7633

See merge request OpenMW/openmw!3859
2024-02-14 08:29:28 +00:00
Evil Eye
8f88838ff5 Remove dead code 2024-02-13 19:30:32 +01:00
psi29a
744cd50520 Merge branch 'decoupled-audio' into 'master'
Add option to use camera as sound listener

Closes #5944

See merge request OpenMW/openmw!3836
2024-02-13 09:18:18 +00:00
Epoch
6486f3f2cf Add option to use camera as sound listener 2024-02-13 09:18:18 +00:00
psi29a
50ea852928 Merge branch 'STOP_IGNORING_ME_AND_LOOK_ME_IN_THE_EYES' into 'master'
add ignore list to raycasts (#7788)

See merge request OpenMW/openmw!3848
2024-02-13 09:15:49 +00:00
psi29a
9fb28a250c Merge branch 'a2c-grammar' into 'master'
Fix grammar for A2C checkbox

See merge request OpenMW/openmw!3858
2024-02-13 09:15:17 +00:00
psi29a
9e1cdaceff Merge branch 'markers' into 'master'
Fix ESM4 marker model hiding hack

See merge request OpenMW/openmw!3853
2024-02-13 09:13:56 +00:00
uramer
851e291501 Simplify and fix the storage subscribe test 2024-02-13 00:56:14 +01:00
Evil Eye
1523a067c9 Use concepts and aggregate initialization 2024-02-12 17:32:43 +01:00
Cody Glassman
56b31ceaf5 add ignore list to raycasts 2024-02-12 07:52:47 -08:00
psi29a
c889026b71 Merge branch 'cleanup_physics_callbacks' into 'master'
Cleanup physics callbacks

See merge request OpenMW/openmw!3831
2024-02-12 14:16:26 +00:00
psi29a
8d0a670f94 Merge branch 'vfs_normalized_path_2' into 'master'
Use normalized path for file archives indices

See merge request OpenMW/openmw!3830
2024-02-12 14:14:50 +00:00
psi29a
1c2fc59a6f Merge branch 'water' into 'master'
Refraction fog based on water depth

See merge request OpenMW/openmw!3842
2024-02-12 14:13:48 +00:00
psi29a
e9c97b835e Merge branch 'acertainsign' into 'master'
Expose birth signs to Lua

See merge request OpenMW/openmw!3850
2024-02-12 14:11:29 +00:00
psi29a
a060a7297c Merge branch 'dehardcode-skillprogression' into 'master'
Lua: Dehardcode skill and level progression

See merge request OpenMW/openmw!3779
2024-02-12 14:10:51 +00:00
psi29a
d36583bdec Merge branch 'nevercruelorcowardly' into 'master'
Correct activation behavior for actors in combat (#7794)

Closes #7794

See merge request OpenMW/openmw!3822
2024-02-12 14:10:08 +00:00
AnyOldName3
8c591a0b44 Groundcover should ignore non-geometry Drawables
Fix https://gitlab.com/OpenMW/openmw/-/issues/7633

Untested - the issue didn't link to a mod using the mesh and I couldn't be bothered setting one up manually.
2024-02-12 01:16:49 +00:00
AnyOldName3
3149761c85 Fix grammar for A2C checkbox
An alternative would be *Anti-alias alpha testing*.

The original was wrong because anti-alias is a verb acting on alpha testing, but it treated the whole thing as a noun phrase.
2024-02-11 23:49:18 +00:00
uramer
63a1bbb88d Enable Lua mouse engine handlers while in UI 2024-02-11 23:49:26 +01:00
Evil Eye
75d0b6e355 Use decompose to handle AI packages and data 2024-02-11 22:06:58 +01:00
Alexei Kotov
887d09e051 Fix ESM4 marker model hiding hack 2024-02-11 04:02:01 +03:00
uramer
c68dee214e Mouse input engine handlers 2024-02-10 22:56:46 +01:00
Alexei Kotov
3301ebb2cb Merge branch 'localize_screenshot' into 'master'
Localize screenshot messages

See merge request OpenMW/openmw!3843
2024-02-10 13:54:05 +00:00