1
0
Fork 0
mirror of https://github.com/OpenMW/openmw.git synced 2025-11-01 03:26:39 +00:00
Commit graph

8469 commits

Author SHA1 Message Date
elsid
6464d99134
Throw system error on open file failure 2025-01-06 23:38:32 +01:00
elsid
be1ce81be7
Write debug recast mesh before generating navmesh 2025-01-06 23:38:29 +01:00
psi29a
52d1493500 Merge branch 'suntzuquote' into 'master'
Add an option to match sunlight to the sun (#8032)

Closes #8032

See merge request OpenMW/openmw!4490
2025-01-05 20:08:28 +00:00
Evil Eye
f92b5040c6 Don't add auto started local Lua scripts twice 2025-01-01 13:21:28 +01:00
Alexei Kotov
aa277c0934 Add an option to match sunlight to the sun (#8032) 2024-12-28 18:29:35 +03:00
Evil Eye
6090bfcdab Work around a regression in MSVC 2024-12-09 17:23:17 +01:00
psi29a
a66d4d77bc Merge branch 'todd1252encoding' into 'master'
Revise bitmap glyph replacements (#7531)

Closes #7531

See merge request OpenMW/openmw!4444
2024-12-05 08:01:03 +00:00
Alexei Kotov
b285e2f85f Merge branch 'fix_findpath_use_after_free' into 'master'
Fix findPath returning a raw vector

Closes #8238

See merge request OpenMW/openmw!4470
2024-12-03 09:24:45 +00:00
uramer
1675c74036 Fix findPath returning a raw vector 2024-12-02 21:22:29 +01:00
psi29a
c454675cff Merge branch 'nilightcolorcontroller' into 'master'
Give NiLightColorController its own struct

See merge request OpenMW/openmw!4472
2024-12-02 16:40:05 +00:00
Alexei Kotov
23a46a1bf9 Merge branch 'vfs_normalized_path_22' into 'master'
Use normalized path for KeyframeManager::get (#8138)

See merge request OpenMW/openmw!4463
2024-12-01 21:45:01 +00:00
Alexei Kotov
a923e311f5 Give NiLightColorController its own struct 2024-12-01 02:00:12 +03:00
psi29a
064e3c7c2e Merge branch 'useniftestinstead' into 'master'
Remove write nif debug log setting

See merge request OpenMW/openmw!4468
2024-11-28 18:05:22 +00:00
psi29a
7b992f98e7 Merge branch 'poisoncrank' into 'master'
Save interior fog bounds center to preserve rotation when expanding them

Closes #7013

See merge request OpenMW/openmw!4466
2024-11-27 08:18:29 +00:00
Alexei Kotov
95c38bacc7 Remove write nif debug log setting 2024-11-26 21:31:25 +03:00
psi29a
1dac165356 Merge branch 'precomputedbonematrices' into 'master'
Precompute bone matrices before skinning

See merge request OpenMW/openmw!4467
2024-11-26 09:25:14 +00:00
psi29a
690de3c3f9 Merge branch 'exorcisingtoddfrommyoblivioncopy' into 'master'
Support ESM4::Light with no spotlight data again

See merge request OpenMW/openmw!4465
2024-11-25 08:55:05 +00:00
Alexei Kotov
0f4e0ac818 Precompute bone matrices during skinning 2024-11-25 02:14:41 +03:00
Evil Eye
d57d5d9247 Save interior fog bounds center to preserve rotation when expanding them 2024-11-24 11:49:33 +01:00
Alexei Kotov
ec564b14df Support ESM4::Light with no spotlight data 2024-11-24 03:12:52 +03:00
Alexei Kotov
5433ecf861 Change default depth test mode to <= (#7040) 2024-11-23 08:32:25 +03:00
psi29a
cf3badb8a4 Merge branch 'data_files_menu' into 'master'
Implement a context menu for data directories page

Closes #8130

See merge request OpenMW/openmw!4458
2024-11-21 11:52:16 +00:00
elsid
a550a8af36
Use normalized path for KeyframeManager::get 2024-11-20 21:29:36 +01:00
Andrei Kortunov
bd59247270 Avoid trailing line breaks 2024-11-20 09:04:22 +04:00
elsid
630e815f66
Forbid to use toNormalized for normalized path 2024-11-18 21:21:33 +01:00
psi29a
79dbbceb10 Merge branch 'vfs_normalized_path_20' into 'master'
Use normalized path for correctMeshPath and getLODMeshName (#8138)

See merge request OpenMW/openmw!4455
2024-11-17 12:30:15 +00:00
Alexei Kotov
d11bd7397b Revise bitmap glyph replacements (#7531) 2024-11-16 22:48:52 +03:00
elsid
22817dd6a1
Use normalized path for correctMeshPath 2024-11-16 12:49:11 +01:00
elsid
36198e9413
Use normalized path for getLODMeshName 2024-11-15 01:05:36 +01:00
Andrei Kortunov
2522fe9517 Remove dead code 2024-11-14 22:16:05 +04:00
Evil Eye
d88ddc97cc Avoid an apparent compiler error in MSVC 2019 2024-11-11 17:54:48 +01:00
Pi03k
05a71e982d Move from qt_wrap_ui to AUTOUIC for qt components lib
(#7348)
2024-11-10 20:38:14 +01:00
Evil Eye
6572122acc Use the right deserializer for unloaded scripts 2024-11-09 13:05:39 +01:00
elsid
afa769408a
Use normalized path for correctActorModelPath 2024-11-03 13:50:17 +01:00
elsid
376911f645
Reduce duplication for getting file name 2024-11-03 13:50:17 +01:00
psi29a
362eec43be Merge branch 'noblacklisting' into 'master'
Exterminate script blacklisting (#8214)

Closes #8214

See merge request OpenMW/openmw!4440
2024-11-01 10:22:26 +00:00
psi29a
62079499c1 Merge branch 'nowaterculling' into 'master'
Allow opting out of water culling (#7318)

Closes #7318

See merge request OpenMW/openmw!4441
2024-11-01 10:21:45 +00:00
Evil Eye
81612a5358 Merge branch 'constcorrectattributes' into 'master'
Sprinkle const-correctness in NifLoader

See merge request OpenMW/openmw!4436
2024-10-31 18:55:45 +00:00
Alexei Kotov
5d37cb3b74 Exterminate script blacklisting (#8214) 2024-10-31 14:59:55 +03:00
Alexei Kotov
4f521a94d7 Allow opting out of water culling (#7318) 2024-10-31 14:54:05 +03:00
Alexei Kotov
e27732421e Adjust intro comment for user openmw-cs.cfg (#5859) 2024-10-30 20:23:46 +03:00
Alexei Kotov
b71ec84004 Sprinkle const-correctness in NifLoader 2024-10-30 17:10:08 +03:00
Alexei Kotov
964dafd42c Share texture type attributes 2024-10-29 12:48:54 +03:00
psi29a
1349fdb4f2 Merge branch 'serializable_readonly' into 'master'
Support table-valued settings

See merge request OpenMW/openmw!3917
2024-10-28 18:44:36 +00:00
uramer
e248ba293a Use sol helpers for metatable keys 2024-10-28 16:45:51 +01:00
Alexei Kotov
eea916a43d Save/load INI importer flags in the launcher (#8189) 2024-10-27 21:30:23 +03:00
Evil Eye
7bbb1bf05d Merge branch 'loosey-goosey' into 'master'
Store original representation of paths in content lists. Also compare against existing content lists in a more forgiving way.

See merge request OpenMW/openmw!4424
2024-10-27 12:31:41 +00:00
AnyOldName3
31c84e0407 We don't need to capture constexpr stuff 2024-10-25 00:49:46 +00:00
AnyOldName3
7640b6bcf4 Typo 2024-10-25 00:32:12 +00:00
AnyOldName3
b596902329 c a p i t u l a t e
Looks like I forgot to reformat after a typo fix.
2024-10-25 00:53:27 +01:00
AnyOldName3
c2b383ea92 Store original representation of paths in content lists
Also compare against existing content lists in a more forgiving way.

The first improvement makes it possible to use relative paths in openmw.cfg without the launcher canonicalising them.
This was really annoying if you used a relative path on purpose.
It also stops the launcher converting all paths to Qt's convention, where forward slashes are used on Windows even though they're not native.
The engine doesn't care, so you could always put either in the config file, but the launcher wouldn't stand for that, and would make them match.

To make this work, we need to store a path's originalRepresentation in the content list, compare paths loaded from openmw.cfg based on their originalRepresentation, and convert paths from originalRepresentation to absolute value when loading them from a content list.

The second improvement means that paths that are equivalent, but expressed differently (e.g. mismatched case on Windows, mismatched separators on Windows, or mild differences like unnecessary `./`es and doubled separators) don't trigger the creation of a new effectively-identical content list.

To make this work, we had to switch the comparison to lexicaly normalise the path first.
It could only be lexical normalisation as originalRepresentation might be absolute, relative, or absolute-but-based-on-a-path-slug, and we didn't want slugs to break things or relative paths to count as equivalent to absolute ones that refer to the same file.
The comparison is case-insensitive on Windows, and case-sensitive elsewhere.
This isn't strictly right, as you can have case-sensitive things mounted on Windows or tell a Linux directory to be case-insensitive, but we can't tell when that might happen based on a lexical path as it depends on real directory properties (and might differ for different parts of the path, which is too much hassle to support).
2024-10-25 00:49:59 +01:00
AnyOldName3
6330d80b9e Don't expect TangentSpaceGenerator to work without texcoords 2024-10-24 13:36:49 +01:00
Alexei Kotov
e9627e9b0c Merge branch 'cifileprofiles' into 'master'
Compare content files and archives case insensitively when matching existing profiles

See merge request OpenMW/openmw!4419
2024-10-24 03:23:10 +00:00
Evil Eye
6d182dcdae Compare content files and archives case insensitively when matching existing profiles 2024-10-21 19:42:37 +02:00
AnyOldName3
7556ab6f90 Make the launcher ignore case in bsa names 2024-10-21 18:07:13 +01:00
elsid
d2ab366233
Use normalized path in PhysicsSystem 2024-10-18 13:45:29 +02:00
Petr Mikheev
bac0018a09 Merge branch 'unloadedcontainers' into 'master'
Fix Lua memory usage

See merge request OpenMW/openmw!4363
2024-10-15 21:18:13 +00:00
Evil Eye
68ebefc2dd Fix Lua memory usage 2024-10-15 21:18:13 +00:00
psi29a
3e3ff00c72 Merge branch 'dialoguestuff' into 'master'
Improve TESCS dialogue compatibility

Closes #8181

See merge request OpenMW/openmw!4396
2024-10-15 07:42:47 +00:00
elsid
d1ccb4b804
Use normalized path for groundcover 2024-10-13 13:27:23 +02:00
psi29a
974c0ce158 Merge branch 'vfs_normalized_path_16' into 'master'
Use normalized path in multiple places and fix additional animation sources loading (#8138)

See merge request OpenMW/openmw!4398
2024-10-07 20:02:54 +00:00
Evil Eye
ffe164b28d Add a test and address feedback 2024-10-06 11:32:24 +02:00
elsid
6e0eb64538
Use normalized path for glow texture names 2024-10-06 11:19:58 +02:00
Evil Eye
7ce83c6cc8 Ensure NAME is null terminated for TESCS compatibility 2024-10-03 22:22:51 +02:00
Evil Eye
403189c711 Switch between DrawElementsUInt and DrawElementsUShort on demand 2024-10-03 19:05:57 +02:00
Evil Eye
5e16579793 Switch to DrawElementsUInt 2024-10-03 16:32:47 +02:00
Evil Eye
6644a7f27b Use more sensible types in pathgridutil 2024-10-02 21:10:51 +02:00
psi29a
f27030a87c Merge branch 'uipointers' into 'master'
Prevent stale pointers in UI widgets

See merge request OpenMW/openmw!4393
2024-10-02 10:31:19 +00:00
Alexei Kotov
56e200f8ac Merge branch 'ripply-doll' into 'master'
Fix inventory doll when non-compute-shader ripples are used with FFP

See merge request OpenMW/openmw!4390
2024-10-02 08:43:41 +00:00
Evil Eye
481e63ffa7 Prevent stale pointers in UI widgets 2024-09-29 22:36:31 +02:00
elsid
63e984ba24
Use normalized path in BulletShapeManager 2024-09-27 23:33:58 +02:00
psi29a
cb009db4bb Merge branch 'topicHighlighting' into 'master'
Topic Highlighting Mouse Over Fix

See merge request OpenMW/openmw!4113
2024-09-27 06:36:17 +00:00
psi29a
d1059aee8c Merge branch 'test_ptr' into 'master'
Add tests for MWWorld::Ptr

See merge request OpenMW/openmw!4344
2024-09-26 07:36:23 +00:00
AnyOldName3
95a1183ad3 Fix OpenGL debug groups 2024-09-25 16:10:18 +01:00
Evil Eye
772a0b3711 Merge branch 'vfs_normalized_path_14' into 'master'
Use normalized path in multiple places (#8138)

See merge request OpenMW/openmw!4383
2024-09-22 16:38:55 +00:00
elsid
cd6e49796e
Properly initialize local static pointers and collections
Static variables should be initalized once instead of initializing them with
nullptr and then doing actual initialization behind if condition. Otherwise a
race condition may happen leading to undefined behaviour.
2024-09-21 13:52:43 +02:00
Alexei Kotov
2ab6dd0229 Address my own review concerns
Correct the number of hyphens in documentation
Use the correct settings tag
Simplify color values
2024-09-19 04:05:54 +03:00
elsid
5f2582fe68
Use normalized path in SceneManager::checkLoaded 2024-09-19 00:51:17 +02:00
elsid
28faae69b0
Use normalized path in TextureManager 2024-09-19 00:39:43 +02:00
elsid
a78f5182e4
Replace toNormalized by Normalized
fname type cannot be changed because it's part of mygui library interface.
2024-09-18 23:53:20 +02:00
elsid
85edc49f2f
Remove unused argument 2024-09-18 23:53:04 +02:00
elsid
597d1853ee
Use normalized path in ESM LuaScripts 2024-09-18 23:52:44 +02:00
elsid
2ddc77138a
Use normalized path in ESM4 reader 2024-09-18 23:52:20 +02:00
Alexei Kotov
6e70893113 Parse bhkPoseArray 2024-09-18 23:53:33 +03:00
Alexei Kotov
695932d2db Parse BSDistantObjectInstancedNode 2024-09-18 23:53:33 +03:00
Alexei Kotov
7149fbb408 Parse NiPSysRotDampeningCtlr 2024-09-18 22:03:15 +03:00
Evil Eye
74d699c502 Merge branch 'vfs_normalized_path_13' into 'master'
Use normalized path in ImageManager (#8138)

See merge request OpenMW/openmw!4377
2024-09-18 18:47:27 +00:00
elsid
1fd6ac6438
Use normalized path in ImageManager 2024-09-17 00:49:57 +02:00
Alexei Kotov
5f7fa640b0 Parse bhkRagdollTemplate/bhkRagdollTemplateData 2024-09-17 00:26:06 +03:00
elsid
b4f77e8bd7
Store Lua script path as VFS normalized 2024-09-15 13:53:20 +02:00
jvoisin
f2be4072d9 Merge branch 'fix_build' into 'master'
Fix build with msvc

See merge request OpenMW/openmw!4372
2024-09-14 22:43:05 +00:00
elsid
ec6af1ef32
Fix build with msvc
components\resource\cachestats.hpp(23): error C2039: 'string': is not a member of 'std'
2024-09-14 14:05:24 +02:00
elsid
d8189a5aa1
Use normalized path in SceneManager 2024-09-13 14:21:49 +02:00
psi29a
b32f68fcd2 Merge branch 'vfs_normalized_path_10' into 'master'
Use normalized path in LuaState (#8138)

See merge request OpenMW/openmw!4365
2024-09-13 08:17:46 +00:00
Cody Glassman
b346a4a858 Add frame number to available postprocess uniforms 2024-09-10 16:58:27 +00:00
elsid
32ec92e71c
Use normalized path in LuaState 2024-09-08 11:53:57 +02:00
psi29a
4c28731f6a Merge branch 'optionallightfadeout' into 'master'
Make light attenuation fade optional

See merge request OpenMW/openmw!4267
2024-09-05 07:29:48 +00:00
psi29a
e1875d459a Merge branch 'boost-config-required' into 'master'
Modernise Boost CMake stuff

Closes #8100

See merge request OpenMW/openmw!4307
2024-09-04 19:04:57 +00:00
psi29a
b3677d07fd Merge branch 'pcallallthethings' into 'master'
Wrap all memory allocating Lua functions in protected calls

Closes #8099

See merge request OpenMW/openmw!4336
2024-09-04 07:22:26 +00:00
elsid
9e36b3fc0b
Use normalized path for models settings 2024-08-30 20:50:59 +02:00