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

341 commits

Author SHA1 Message Date
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
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
elsid
d2ab366233
Use normalized path in PhysicsSystem 2024-10-18 13:45:29 +02:00
elsid
85edc49f2f
Remove unused argument 2024-09-18 23:53:04 +02:00
elsid
8cc744997f
Make path helpers constexpr and noexcept 2024-07-22 22:01:05 +02:00
elsid
34f5bc6fce
Use std math functions
To avoid implicit conversions from float to double and back.
2024-07-21 02:06:05 +02:00
elsid
041b3b233a
Normalize forward and up vectors
To avoid having any of their components to be out of the range [-1, 1].
2024-07-21 01:26:57 +02:00
elsid
75d9ab4d57
Pass Quat and Matrixf by reference
They don't fit into registers so without optimizations they are copied via
stack.
2024-07-15 22:08:54 +02:00
Andrei Kortunov
871263d436 Check if file is successfully opened 2024-07-04 09:55:24 +04: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
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
elsid
a863899eb1
Use normalized path for SoundManager::streamMusic 2024-04-20 21:14:09 +02:00
Alexei Kotov
1a961f3021 Extremely early handling for BGSM/BGEM files 2024-04-20 19:43:41 +03:00
elsid
e11a5a4352
Use normalized path for SoundManager::playPlaylist 2024-04-19 22:43:20 +02:00
Sam Hellawell
a51d560174 Move bone rename logic to ColladaDescriptionVisitor, undo formatting/refactoring 2024-04-05 01:59:40 +01:00
Sam Hellawell
2288a691d2 Replace osgAnimation bone underscore naming at load time, map bone instances, reset root bone transform each frame 2024-04-04 00:10:51 +01: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
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
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
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.
2024-03-12 23:30:11 +00:00
AnyOldName3
0730dc2ebb Get OSG to tell us the plugin filenames it's going to use
That way, we don't have issues like the checker getting false positives when the right plugins are present for the wrong OSG version or build config, or false negatives when we've generated the wrong filenames.
2024-03-10 18:04:38 +00:00
elsid
5acfb07850
Fix build with OSG_USE_UTF8_FILENAME 2024-03-06 20:51:48 +01:00
psi29a
231b5753e4 Merge branch 'launcher_help_version' into 'master'
Open matching version of documentation for Launcher Help

See merge request OpenMW/openmw!3909
2024-03-05 09:24:52 +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
Evil Eye
cef59e8928 Replace fixed size writeHNT calls with decomposition 2024-03-03 19:39:19 +01:00
AnyOldName3
bcd54ab1ff Format osgpluginchecker.cpp.in
I formatted the generated file that's part of the VS solution, then diffed it against the input and changed it to match.
2024-02-25 23:01:52 +00:00
uramer
86a82ae3f1 Open matching version of documentation for Launcher Help 2024-02-25 18:20:40 +01:00
elsid
ec9c829021
Use normalized path for correctSoundPath 2024-02-24 12:42:36 +01:00
Evil Eye
82c92a9a6c Merge branch 'bookart-is-textures-too' into 'master'
Consider bookart a valid prefix for regular textures and vice versa

Closes #7535

See merge request OpenMW/openmw!3342
2024-02-24 10:31:13 +00:00
AnyOldName3
3fbd97ffc8 Remove unused <vector> header 2024-02-23 12:48:39 +00:00
AnyOldName3
6406095bfb s p a n 2024-02-23 01:34:01 +00:00
AnyOldName3
1717e696b1 Format before clang notices and sends me an angry email 2024-02-23 00:06:51 +00:00
AnyOldName3
db5a43db30 Allow top-level prefix to be found in the middle of a path 2024-02-23 00:04:48 +00:00
AnyOldName3
2a5f8d5bab Skip the check on MacOS
It doesn't work, the workaround isn't enough to make it work, I can't be bothered making a more powerful workaround, and it's impossible to *package* a MacOS build missing the plugins we need anyway, even if you can build and attempt to run it.
2024-02-22 00:24:44 +00:00
AnyOldName3
2c1c8bc8de Work around for listAllAvailablePlugins 2024-02-19 23:16:50 +00:00
elsid
6451750890
Write AiSequence and Script data field by field via decompose function
Use the same function to load and save to have single place with field order
definition. Use concepts for overload over different types.
2024-01-14 23:04:56 +01:00
AnyOldName3
62f5c46f25 Split list in CMake instead of C++
That avoids the need for constexpr work, and therefore the need for an MSVC-specific extension
2024-01-12 23:43:14 +00:00
AnyOldName3
de107c6a98 Add missing _view 2024-01-12 23:43:14 +00:00
AnyOldName3
ef65f0c70d Make OSG plugin checker barely functional
* Work out what module filenames should be in CMake, and give those to C++
* Compare just the module filenames instead of the full strings
* Deal with OSG trying to support both UTF-8 and system-eight-bit-code-page file paths on Windows.
* Add a comment complaining about the constexpr situation.
* Use a stub implementation when using static OSG - apparently we don't actually support mixing and matching static and dynamic OSG plugins even though OSG itself does.
2024-01-12 23:43:14 +00:00
AnyOldName3
c2d1a4c861 Initial stab at OSG plugin checker
It doesn't work yet due to osgDB::listAllAvailablePlugins returning a list of paths to dynamic libraries.
That means:
* the check fails when the required plugin is linked statically.
* we're going to have to do something to slice up the filenames.
* there'll probably be unicode errors when the OpenMW installation path isn't representable by the current eight-bit code page on Windows.

Alternatively, we can switch to listing the required file extension support, and use osgDB::Registry::instance()->getReaderWriterList() and each element's supportedExtensions() function, but I don't think we've actually got that list of extensions anywhere and it might get desynced with the existing list of plugins if we add more.
2024-01-12 23:43:14 +00:00
psi29a
e9f3e5c6d1 Merge branch 'lua_actions_electric_boogaloo' into 'master'
Lua actions take 3

See merge request OpenMW/openmw!2628
2023-12-29 18:56:59 +00:00
uramer
0e2e386dc9 Lua actions take 3 2023-12-29 18:56:59 +00:00
elsid
81a483fc7f
Remove unused vfs argument from correctMeshPath 2023-12-26 14:14:52 +01:00
AnyOldName3
4d0aece001 Clarify variable name 2023-12-11 00:05:41 +00:00
AnyOldName3
3a71a78d9e Combine topLevelDirectory and alternativeDirectories 2023-12-10 19:01:30 +00:00
AnyOldName3
f30676cbc7 Invert condition
Rebased to account for upstream normalising slashes to replace forward
slashes with backslashes, simplifying the part that needed to check for
both variants. Perhaps if it'd been like that in the first place, I
wouldn't have made the mistake that made the original version of this
commit necessary.
2023-12-10 18:25:00 +00:00
AnyOldName3
575367bc18 v e c t o r 2023-12-10 18:25:00 +00:00