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

8348 commits

Author SHA1 Message Date
Evil Eye
1cea604257 Use string_view in register methods 2024-06-29 15:37:13 +02:00
Evil Eye
ad7fb3d13f Avoid a few copies in mwscript 2024-06-29 10:31:49 +02:00
elsid
89bb04e8fd
Exit with fatal error on duplicated instruction code
Instead of causing SIGABRT which is more confusing.
2024-06-28 22:24:24 +02:00
psi29a
6754b8d941 Revert "Merge branch 'were_engineers_not_salt_miners' into 'master'"
This reverts merge request !4178
2024-06-25 20:58:31 +00:00
psi29a
9a864f309a Merge branch 'theluareloaded' into 'master'
Check the result of loading from bytecode

Closes #7787

See merge request OpenMW/openmw!4189
2024-06-25 07:19:33 +00:00
psi29a
cd365b4e8c Merge branch 'youre_outta_range_joe' into 'master'
FIX: check we're not going out of range while listing content files, fix #8029

Closes #8029

See merge request OpenMW/openmw!4201
2024-06-24 18:02:31 +00:00
psi29a
11c2cf0780 Merge branch 'esm_script' into 'master'
Make loading and saving ESM3 script record more robust

See merge request OpenMW/openmw!4195
2024-06-24 17:59:20 +00:00
psi29a
57adb93075 Merge branch 'coverity' into 'master'
Coverity fixes

See merge request OpenMW/openmw!4198
2024-06-24 07:10:28 +00:00
psi29a
456ac2a85b Merge branch 'were_engineers_not_salt_miners' into 'master'
FEAT: Lua Engine Handler for MWScript `startscript` functionality

See merge request OpenMW/openmw!4178
2024-06-24 07:09:24 +00:00
Dave Corley
1a79e79f57 FEAT: Lua Engine Handler for MWScript startscript functionality 2024-06-24 07:09:23 +00:00
psi29a
d3c3d0cf44 Merge branch 'indexthemoon' into 'master'
Move Lua index helpers to components and make owner.factionRank match other ranks

See merge request OpenMW/openmw!4186
2024-06-24 07:06:24 +00:00
Dave Corley
d03f25437b CLEANUP(contentmodel): Use auto for insertPosition declaration to
avoid possible narrowing
2024-06-23 20:06:23 -05:00
Dave Corley
fbdc4f4881 CLEANUP(contentmodel): Use ranges::find_if instead of a loop 2024-06-23 18:15:27 -05:00
elsid
89a30532b7
Fix getAnglesZYX implementation 2024-06-23 16:08:09 +02:00
Dave Corley
40aee53831 CLEANUP(contentmodel): Actually, no, I hate while loops 2024-06-23 06:07:16 -05:00
Dave Corley
b43743212e FIX: check we're not going out of range while listing content files, fix #8029 2024-06-23 06:07:12 -05:00
Alexei Kotov
162ac6a75e Avoid copying shader material shared_ptr in NifLoader 2024-06-22 14:34:09 +03:00
Evil Eye
5b82c7a95d Don't assume execution of an internal Lua script can't fail 2024-06-22 11:26:32 +02:00
Evil Eye
83e8729256 Check the result of loading from bytecode 2024-06-21 22:35:34 +02:00
elsid
5c3ae3d94c
Make loading and saving script record more robust
* Check the header presence before using it.
* Write the header based on the actual content.
2024-06-21 20:37:37 +02:00
elsid
4571a8b88a
Remove unused SCHD type 2024-06-21 15:39:17 +02:00
AnyOldName3
decfe75ae5 Don't attempt to continue an outer loop from an inner loop 2024-06-21 14:05:52 +01:00
Kagernac
f7628ff0a8 Code cleanup and documentation
Added documentation in GUI.rst for the new settings

Cleaned up the MR with some remnant changes.
2024-06-19 11:08:05 -07:00
Evil Eye
d6fc0744c7 Move Lua index helpers to components and make owner.factiooRank match other ranks 2024-06-18 21:32:16 +02:00
psi29a
8e20967511 Merge branch 'collisionswitch' into 'master'
Don't let the optimizer mess with collision switch nodes (again)

See merge request OpenMW/openmw!4173
2024-06-15 08:41:44 +00:00
psi29a
31102a2076 Merge branch 'utfconversionfixsize' into 'master'
Use fixed-size type to hold a whole code point

See merge request OpenMW/openmw!4163
2024-06-14 07:21:51 +00:00
Alexei Kotov
4f8856f887 Don't let the optimizer mess with collision switch nodes (again) 2024-06-13 22:24:40 +03:00
Alexei Kotov
ccd36e9413 Support light fade settings in legacy lighting method
This doesn't change launcher descriptions because the launcher settings are going to be omitted
2024-06-12 22:44:12 +03:00
psi29a
321b84a4d2 Merge branch 'remove-tab-comment' into 'master'
components/esm4/loadwrld.hpp: clarify comment

See merge request OpenMW/openmw!4169
2024-06-12 10:43:44 +00:00
Austin English
338902c247 components/esm4/loadwrld.hpp: clarify comment
Also convert tabs to spaces
2024-06-11 20:19:55 -05:00
psi29a
c1d74763ed Merge branch 'i-have-no-land-and-i-must-scream' into 'master'
Fix(CS): Add landscape flag if it doesn't exist at all and improve landscape QOL

Closes #7707

See merge request OpenMW/openmw!3617
2024-06-11 11:10:33 +00:00
psi29a
61772fa234 Merge branch 'verifiers' into 'master'
Complain about fishy local variable names, improve editor effect list handling

See merge request OpenMW/openmw!4160
2024-06-11 11:10:19 +00:00
elsid
1e98cc6c3b
Move EXPECT_ERROR macro to a separate header
To include it only where it's required.
2024-06-10 23:12:15 +02:00
elsid
7d1cd11ba9
Split openmw_test_suite into openmw and components tests
To avoid duplicated compilation for openmw translation units. Link openmw-lib to
openmw-tests instead.
2024-06-10 23:12:14 +02:00
Kindi
d21f3809bd test utf8 2024-06-10 18:15:07 +08:00
Dave Corley
798208f6e5 FIX: Bad rebase 2024-06-10 02:03:00 -05:00
Dave Corley
80360ca5eb downgrade clang-format pls 2024-06-10 02:02:31 -05:00
Dave Corley
3066695630 FIX(loadland.cpp): Minor rebase fail 2024-06-10 02:02:31 -05:00
Dave Corley
145f9c1154 CLEANUP(CS): Do heightData check in actual implementation, revert
accidental change to land condition order
2024-06-10 02:02:31 -05:00
Dave Corley
bdf99c701b Fix(CS): Use ESM flags and not internal ones for verifying presence of a subrecord 2024-06-10 02:02:31 -05:00
Dave Corley
89bce6f678 Fix(CS): Enum name in accordance with current standards 2024-06-10 02:02:31 -05:00
Dave Corley
6f2ae4a33b Cleanup(CS): Improve readability and clean up some implementations 2024-06-10 02:02:31 -05:00
Dave Corley
51df924d37 Fix(Land): Restore vanilla behavior of ignoring LAND subrecords which
are not flagged to actually exist
2024-06-10 02:02:31 -05:00
Dave Corley
b111d28ede Fix(CS): Generate blank lands at default height, not water level 2024-06-10 02:02:26 -05:00
Dave Corley
014e5118e9 Fix(CS): Fix crash when loading cell without VHGT 2024-06-10 01:58:34 -05:00
Dave Corley
18d6598565 Feat(CS): Add enum for actual LAND flags 2024-06-10 01:58:34 -05:00
Kindi
22d685eca3 ensure fitness 2024-06-08 22:11:59 +08:00
psi29a
9087de1596 Merge branch 'esm3_land' into 'master'
Add unit tests for saving and loading ESM3 Land

See merge request OpenMW/openmw!4159
2024-06-08 10:47:58 +00:00
Alexei Kotov
89eccffbf6 Complain if a function or an integer is used as a local variable name 2024-06-08 06:31:16 +03:00
Kagernac
7d403089ec Cleaner implementation
Retrieved the Colours straight from Settings

Made tagname clearer in openmw_list.skin.xml

Fixed minor formatting issue in validate.cpp, textcolours.cpp

Updated skin variables to be const and string_view
2024-06-07 18:38:32 -07:00
psi29a
176e6490c5 Merge branch 'stufftheminasack' into 'master'
Drop 360-degree screenshot support (#7720)

Closes #7720

See merge request OpenMW/openmw!4158
2024-06-07 20:50:43 +00:00
psi29a
a80f5c109c Merge branch 'ltexerasure' into 'master'
Fix LTEX overriding and allow deletion

See merge request OpenMW/openmw!4152
2024-06-07 08:05:56 +00:00
elsid
044748725c
Add unit tests for saving and loading ESM3 Land 2024-06-07 00:22:24 +02:00
Alexei Kotov
93d1c6d7e0 Drop 360-degree screenshot support (#7720) 2024-06-06 14:46:01 +03:00
Kagernac
aca39c919f Changed the tagname to match the values in settings.cfg
Changed the values from int to float in settings.cfg. This is consistent with the older format.

The prefix is no longer referenced and hardcoded. There were four original values in the old color format, the parsing had to be modified to account for floats and four values.
2024-06-05 20:26:45 -07:00
psi29a
8a6d3ea447 Merge branch 'hircinevsprimealmalexiawhowouldwin' into 'master'
Don't force Tribunal to be enabled to load Bloodmoon (#7993)

Closes #7993

See merge request OpenMW/openmw!4153
2024-06-05 21:00:47 +00:00
Kagernac
3e6ccfce1f Took @Capostrophic's suggestion about leveraging a new tag format
Removed the color settings from Textcolours, they are unneccessary

Removed the Fallback workaround as a dedicated else condition was created with the new tag "fontcolouroptional". This code section has no involvement in Fallback

openmw_list.skin.xml was updated to reflect this new tag

settings.cfg was updated with the updated variable names
2024-06-04 23:14:44 -07:00
psi29a
32dd4a4a68 Merge branch 'windows11_qss' into 'master'
Improve dark mode stylesheets

See merge request OpenMW/openmw!4148
2024-06-04 20:38:46 +00:00
Alexei Kotov
eca30f7921 Don't force Tribunal to be enabled to load Bloodmoon (#7993)
Sort Bloodmoon to be after Tribunal and warn the user if Bloodmoon is loaded before enabled Tribunal
2024-06-04 02:44:29 +03:00
Evil Eye
ca6baed366 Fix LTEX overriding and allow deletion 2024-06-03 16:42:27 +02:00
Andrei Kortunov
937101d580 Add a dark style sheet tweaked for Windows 11 2024-06-02 16:58:02 +04:00
Alexei Kotov
71c1b536b4 Discard culled lights specifically for post-processing light buffer 2024-06-01 22:05:32 +03:00
Alexei Kotov
cbe61e2c93 In TextureType, use osg::Object's name field 2024-05-31 14:42:48 +03:00
psi29a
a2e83d9a21 Merge branch 'dayofviewindependence' into 'master'
Make object light lists (mostly) view-independent

See merge request OpenMW/openmw!4128
2024-05-30 08:08:55 +00:00
psi29a
e7c9574d31 Merge branch 'savetheslot' into 'master'
Convert constant effect equipment slots to refnums

Closes #7998

See merge request OpenMW/openmw!4130
2024-05-28 11:09:36 +00:00
psi29a
8cf6fde8b6 Merge branch 'fix_debug_render' into 'master'
Fix debug render for recast mesh and navmesh

See merge request OpenMW/openmw!4127
2024-05-28 07:38:00 +00:00
elsid
71369be796
Log caught exceptions 2024-05-26 02:52:11 +02:00
Alexei Kotov
c92d016e43 Don't sort scene light list by camera distance if the limit isn't reached and PP doesn't need it
Also don't clip it to the single UBO scene light limit if the lighting method isn't actually single UBO
2024-05-26 02:29:05 +03:00
Alexei Kotov
916706c6c1 Make object light lists (mostly) view-independent
Remove frustum culling
Sort lights by object proximity
Restore multiple camera rendering optimization
2024-05-26 02:29:05 +03:00
psi29a
16572109fc Merge branch 'restoringthelightfacingthedark' into 'master'
Lighting fixes, non-exciting part

See merge request OpenMW/openmw!4126
2024-05-24 23:05:07 +00:00
Evil Eye
cdfd305ac3 Convert constant effect equipment slots to refnums 2024-05-24 16:59:48 +02:00
elsid
10e14a3c21
Replace release by assigning nullptr
release does not call a destructor if it's the last reference. This is not a
right choice here. Even though the functions accept raw pointers they convert
them into osg::ref_ptr. So it's ok to share the ownership.
2024-05-24 01:08:15 +02:00
elsid
4b8897e33e
Use state sets without transparency support for recast mesh and agents paths 2024-05-24 00:05:10 +02:00
elsid
98d530d8cb
Share state sets for recast mesh tiles and actors paths 2024-05-24 00:05:09 +02:00
Alexei Kotov
fd9361f62c Some attenuation setup fool-proofing 2024-05-24 00:52:54 +03:00
Alexei Kotov
e0e4b84e40 Disable specularity for negative lights 2024-05-24 00:50:29 +03:00
Alexei Kotov
debc37d93a Fade out specularity according to light fade settings as well 2024-05-24 00:49:37 +03:00
Evil Eye
6a10311ae5 Use more appropriate types in terrain storage 2024-05-23 18:48:54 +02:00
psi29a
db27543ea1 Merge branch 'uniform_choice' into 'master'
Add choice widget type to postprocessing uniforms

See merge request OpenMW/openmw!3969
2024-05-23 10:06:22 +00:00
Kagernac
f9577d904c This commit introduces six new color settings for dialogue topic keywords
referencing settings.cfg and settings-default.cfg. These settings work similarly
to the color references found in openmw.cfg and Morrowind.ini.

Changes include:

Removal of deprecated settings:
color topic specific
color topic exhausted
Addition of six new color settings to settings.cfg and settings-default.cfg
Updated description in settings-default.cfg to reflect the new color format
2024-05-22 20:25:58 -07:00
psi29a
2be6116ef6 Merge branch 'fix_recastmesh' into 'master'
Limit number of cached tiles with recast meshes

See merge request OpenMW/openmw!4112
2024-05-22 20:38:42 +00:00
Dave Corley
c87eaefd17 Merge branch 'theeditorisjustanotherengine' into 'master'
Use ESM::ReadersCache in the editor

Closes #7896

See merge request OpenMW/openmw!4111
2024-05-21 06:35:47 +00:00
Andrei Kortunov
bf682d51a6 Support dark mode on Windows (feature 7985) 2024-05-20 16:50:24 +04:00
psi29a
f34994e4c8 Merge branch 'notexturetypeconfusion' into 'master'
Support defining the texture type with a state attribute (#6240)

Closes #6240

See merge request OpenMW/openmw!4079
2024-05-20 12:48:30 +00:00
Alexei Kotov
03652104fe Merge branch 'cleanup_preloading' into 'master'
Cleanup preloading code

See merge request OpenMW/openmw!4104
2024-05-19 20:39:28 +00:00
Evil Eye
77d554594f Add ReadersCache::clear 2024-05-19 20:39:23 +02:00
elsid
45d62ee59f
Limit RecastMeshManager range by active cell grid 2024-05-19 20:07:47 +02:00
elsid
49db37ee29
Merge setWorldspace and updateBounds 2024-05-19 20:07:47 +02:00
elsid
9854d42d56
Use ESM::RefId for worldspace type 2024-05-19 20:07:47 +02:00
elsid
5d28164416
Remove recast mesh tiles outside active range 2024-05-19 20:07:47 +02:00
elsid
9e2f3fd0b4
Report stats for TileCachedRecastMeshManager 2024-05-19 20:03:34 +02:00
Alexei Kotov
908f3891fb Add helper method for texture type recovery 2024-05-19 02:26:40 +03:00
Alexei Kotov
84f4ba4ca1 Support defining the texture type with a state attribute (#6240)
Named textures are still supported for easier native format compatibility (and so that I don't have to edit the documentation)
2024-05-18 23:11:20 +03:00
psi29a
9b31ecc10e Merge branch 'bufferer_log' into 'master'
Write to log file records captured before configs are loaded

See merge request OpenMW/openmw!4095
2024-05-16 11:17:25 +00:00
elsid
491a59b035
Remove unused getActiveGrid function 2024-05-15 22:33:11 +02:00
elsid
38f0533bcf
Write to log file records captured before configs are loaded 2024-05-13 01:17:26 +02:00
elsid
4ab5871dc4
Split Tee logic into different types 2024-05-13 01:17:24 +02:00
Alexei Kotov
1d96c0adbf Read BSTreadTransfInterpolator 2024-05-13 01:20:23 +03:00
Alexei Kotov
5f4a0c3bf1 Read BSAnimNote/BSAnimNotes 2024-05-13 01:12:09 +03:00
Alexei Kotov
c5a11f0c9f Read BSRotAccumTransfInterpolator 2024-05-13 00:49:10 +03:00
Alexei Kotov
c647374c0d Add compact B-Spline interpolators 2024-05-13 00:36:10 +03:00
Alexei Kotov
d458c07b36 Add base typed B-Spline interpolators 2024-05-13 00:20:32 +03:00
Alexei Kotov
5c6fca14c1 Read NiBSplineData/NiBSplineBasisData 2024-05-12 23:58:05 +03:00
psi29a
919d1e366e Merge branch 'staticcollections' into 'master'
Place static collections to the scene and fix item modification record loading

See merge request OpenMW/openmw!4085
2024-05-11 07:43:28 +00:00
psi29a
1cde82201e Merge branch 'optimize_merge_geometry' into 'master'
Optimize geometry merging

See merge request OpenMW/openmw!4086
2024-05-11 07:40:53 +00:00
psi29a
2f8e3611fb Merge branch 'issue-7924-envvar-crashdump' into 'master'
components/crashcatcher: if OPENMW_FULL_MEMDUMP is set, generate a full memory crashdump

See merge request OpenMW/openmw!4078
2024-05-10 13:43:23 +00:00
elsid
020b31395b
Reserve arrays before merging 2024-05-09 17:21:56 +02:00
Alexei Kotov
7d979a2dfc Place ESM4 static collections to the scene 2024-05-09 17:26:27 +03:00
Austin English
50b2edc121 components/crashcatcher: if OPENMW_FULL_MEMDUMP is set, generate a full memory crashdump
[Bug #7924](https://gitlab.com/OpenMW/openmw/issues/#7924)
2024-05-08 18:27:57 -05:00
jvoisin
93aa887868 Merge branch 'itsemissivenotglow' into 'master'
Unbork glow maps

See merge request OpenMW/openmw!4077
2024-05-08 21:10:14 +00:00
Alexei Kotov
c95bb4ce59 Merge branch 'split_esm_headers' into 'master'
Split ESM headers

See merge request OpenMW/openmw!4071
2024-05-07 11:57:32 +00:00
Alexei Kotov
c29ceb7f7f Unbork glow maps 2024-05-06 23:32:35 +03:00
elsid
a920ca9070
Report loading screens to osg stats 2024-05-04 13:22:32 +02:00
elsid
01166b1f26
Split ESM headers 2024-05-03 01:55:20 +02:00
AnyOldName3
b55a0fd32a || and && have different binding precedence 2024-04-30 13:50:50 +01:00
AnyOldName3
d148bd1cde Add bounds check 2024-04-30 13:41:48 +01:00
psi29a
a57c350c08 Merge branch 'paint_svg' into 'master'
Change SVG icons color in the editor

See merge request OpenMW/openmw!4060
2024-04-30 08:19:51 +00:00
AnyOldName3
ee3d012a6a Use CLAMP_TO_EDGE for shadows
Partially mitigates https://gitlab.com/OpenMW/openmw/-/issues/7944

The border was necessary in the olden days when the FFP might have shadows, but they require shaders now.
2024-04-29 01:21:29 +01:00
psi29a
e4fd852df6 Merge branch 'ba2' into 'master'
BA2 support fixes

See merge request OpenMW/openmw!4055
2024-04-28 07:40:40 +00:00
psi29a
1eb6b322a7 Merge branch 'morefunfallout4discoveries' into 'master'
Fix reading BSLightingShaderProperty backlight power in NIF Bethesda stream version 132

See merge request OpenMW/openmw!4058
2024-04-28 07:39:51 +00:00
Alexei Kotov
a5d936993f Clarify Fallout 4 next gen update BA2 version naming 2024-04-28 05:09:40 +03:00
Andrei Kortunov
98abfcfe00 Use grayscale images for disabled icons 2024-04-27 11:25:56 +04:00
Andrei Kortunov
070327a259 Change SVG color in the editor 2024-04-27 09:57:47 +04:00
Alexei Kotov
52bc744642 Fix reading backlight power in NIF stream version 132 2024-04-26 17:32:07 +03:00
Alexei Kotov
52d77e3a45 Version 8 texture BA2s found 2024-04-26 16:45:30 +03:00
Alexei Kotov
f0e4793321 Remove allow shadow map overlap setting (#7939) 2024-04-26 13:50:03 +03:00
Alexei Kotov
61b6150c01 Properly detect the version for post-FO4 BA2 formats 2024-04-26 10:50:06 +03:00
Alexei Kotov
f796e051cb Support zlib-compressed version 3 DDS BA2s 2024-04-26 10:45:03 +03:00
Alexei Kotov
b32385a0af Fix BA2 signature check 2024-04-26 10:32:17 +03:00
Alexei Kotov
22fb3d7f83 Add support for Fallout 4 next-gen update BA2s 2024-04-26 10:30:42 +03:00
psi29a
26f0e6b22c Merge branch 'nifmisc' into 'master'
Miscellaneous NIF loader corrections

See merge request OpenMW/openmw!4052
2024-04-25 08:45:36 +00:00
Alexei Kotov
7f13f6a4e9 Use osg::Fog::compare in NifOsg::Fog::compare 2024-04-25 03:09:04 +03:00
psi29a
a628c658a9 Merge branch 'lessgoofymaterialptr' into 'master'
Simplify material file pointer acrobatics

See merge request OpenMW/openmw!4049
2024-04-24 08:39:52 +00:00
psi29a
99a0755094 Merge branch 'remove_natural_sort' into 'master'
Remove dead code

See merge request OpenMW/openmw!4047
2024-04-24 08:38:26 +00:00
Alexei Kotov
745be2e91b Implement NifOsg::Fog::compare() 2024-04-24 01:45:09 +03:00
Alexei Kotov
a513049129 Adjust drawable property state changes
Reset shininess and specular strength when specular lighting is supposed to be disabled
Don't add the material redundantly if a sorter is pushed
Don't discard non-default emissive and specular multipliers if there's no sorter or material
2024-04-24 00:40:54 +03:00
Alexei Kotov
713e741f9c Share fog state attributes 2024-04-23 23:53:34 +03:00
Alexei Kotov
d7bd5e76ca Move wrapping flag handling to relevant properties 2024-04-23 23:40:14 +03:00
psi29a
02cdeb6252 Merge branch 'scalable_editor' into 'master'
Treat editor icons as scalable

See merge request OpenMW/openmw!4042
2024-04-23 07:04:59 +00:00
Alexei Kotov
78eda530ac Simplify material file pointer acrobatics 2024-04-23 00:34:38 +03:00
Andrei Kortunov
6390fdee7a Remove dead code 2024-04-22 20:41:58 +04:00
psi29a
023c0f7a46 Merge branch 'vfs_normalized_path_6' into 'master'
Use normalized path for music related functions

See merge request OpenMW/openmw!4038
2024-04-22 07:02:14 +00:00
Andrei Kortunov
1bb48bcef7 Treat editor icons as scalable 2024-04-21 20:56:06 +04:00
Alexei Kotov
884668927f BGSM Reader: include cleanup, adjust getFile return result 2024-04-20 23:38:01 +03:00
elsid
a863899eb1
Use normalized path for SoundManager::streamMusic 2024-04-20 21:14:09 +02:00
Alexei Kotov
77c3cd4467 More BGSM cleanup 2024-04-20 19:43:42 +03:00
Alexei Kotov
6be2bb70c3 Remove unused remnants of NIFStream from BGSMStream 2024-04-20 19:43:42 +03:00
Alexei Kotov
ea5e101821 Handle glow maps for BGSM files 2024-04-20 19:43:42 +03:00
Alexei Kotov
8325e100df More decal deduplication 2024-04-20 19:43:42 +03:00
Alexei Kotov
5789eb73b1 Deduplicate decal and alpha handling in NifLoader 2024-04-20 19:43:42 +03:00