1
0
Fork 0
mirror of https://github.com/OpenMW/openmw.git synced 2025-01-19 20:53:52 +00:00
Commit graph

567 commits

Author SHA1 Message Date
AnyOldName3
7556ab6f90 Make the launcher ignore case in bsa names 2024-10-21 18:07:13 +01:00
Evil Eye
68ebefc2dd Fix Lua memory usage 2024-10-15 21:18:13 +00:00
AnyOldName3
387b63909b Remove vestigial Boost libraries
Boost::zlib is basically part of Boost::iostreams, and depending on how you configure Boost, it can either be a separate library or get embedded into iostreams.
With the third-party-but-linked-on-Boost's-website package we've been using for years, it's a separate library.
Before https://gitlab.com/OpenMW/openmw/-/merge_requests/4307, we needed to explicitly link with it as CMake wasn't handling transitive dependencies for us.
With vcpkg, it's embedded, and doesn't have its own CMake config, so we couldn't explicitly link with it even if we wanted to.

Now CMake *is* handling transitive dependencies for us, we don't even need to think about this library.
It's all automatic.

Boost::locale, on the other hand, used to be something we used directly (I think for doing UTF-16/UTF-8 conversions when dealing with Windows paths).
However, it isn't anymore, and we just didn't purge it from our CMake when we should have.
It can go.
2024-08-23 14:06:13 +01:00
AnyOldName3
26be98966f Modernise Boost CMake stuff
Resolves https://gitlab.com/OpenMW/openmw/-/issues/8100

Also removes some old crud.
Hopefully the old crud is all:
* Handled automatically by CMake now we're using the modern approach.
* A hack-fix for a problem caused by not using the modern approach.
* Massively outdated so no longer necessary.

If it turns out this makes CI fail, I'll tweak things as necessary.

Changes that might not be wanted include:
* Getting rid of our BOOST_STATIC CMake option. In cases where the CMake config doesn't make the one correct choice from the build environment (i.e. because there's a choice) the CMake config exposes the option already.
  However, we were forcing this on for Windows, so that might matter.
  It seems to default to static on my machine even though I thought I read something suggesting otherwise, so we'll see how things go with that.
  If we eventually put CMake in charge of installing dependency DLLs this will be a moot point as we won't need to care.
* Bumping the minimum version of Boost to 1.70.0, as that's the first with working CMake config.
  It's from 2019, so plausibly there are distros too scared to use a library from five years ago as it can't legally drink in the US (although it could in limited quantities with parental supervision in the UK, as long as it's just something inconsequential like a single sip of beer).
2024-08-23 14:06:13 +01:00
Max Yari
55ffb6d7d2 Animation blending implementation for NIF and osgAnimation through YAML files
Signed-off-by: Sam Hellawell <sshellawell@gmail.com>
2024-07-19 00:04:15 +01: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
Alexei Kotov
93d1c6d7e0 Drop 360-degree screenshot support (#7720) 2024-06-06 14:46:01 +03:00
Andrei Kortunov
bf682d51a6 Support dark mode on Windows (feature 7985) 2024-05-20 16:50:24 +04:00
elsid
01166b1f26
Split ESM headers 2024-05-03 01:55:20 +02:00
Andrei Kortunov
070327a259 Change SVG color in the editor 2024-04-27 09:57:47 +04: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
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
Alexei Kotov
fe1cb3a5ae Add a resource manager for BGSM files 2024-04-20 19:43:41 +03:00
Alexei Kotov
aea7b10986 Add dummy BGSM/BGEM file reader 2024-04-20 19:43:40 +03:00
Evil Eye
a4625ea784 Deduplicate dialogue filter parsing 2024-04-11 22:29:33 +02:00
elsid
215404e126
Report more stats from caches 2024-03-29 14:25:39 +01: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
Andrei Kortunov
715efe892f Load YAML files via Lua (feature 7590) 2024-03-14 16:29:21 +04: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
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
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
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
AnyOldName3
93a84b38ac Give git-version its name back 2024-02-25 19:05:38 +00:00
AnyOldName3
42c7fc8e92 Update 2 files
- /components/CMakeLists.txt
- /cmake/GitVersion.cmake
2024-02-25 18:53:19 +00:00
uramer
86a82ae3f1 Open matching version of documentation for Launcher Help 2024-02-25 18:20:40 +01:00
AnyOldName3
36a75cdb29 Get the GLExtensions instance when a context is created 2024-02-23 00:15:23 +00:00
elsid
38990b1fd2
Set components property after it is defined 2024-02-22 11:15:39 +01:00
elsid
efbc37d22f
Build components with position independent code only for Android
openmw is build as shared library with position independent code enabled there
so linked static libraries need to have this too.
2024-02-18 19:36:58 +01:00
Andrei Kortunov
9a7b9572fd Deploy base Qt translations when needed 2024-02-15 09:26:14 +04:00
Andrei Kortunov
7e345436f4 Localize Launcher and Wizard 2024-02-01 09:47:25 +04:00
AnyOldName3
e0eb3feb89 Use OSG_PLUGIN_PREFIX instead of CMAKE_SHARED_MODULE_PREFIX
Logic to generate it copied from OSG's CMake instead of guessed.
2024-01-12 23:49:53 +00: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
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
cb24475662 Merge branch 'what-a-selection-you-have' into 'master'
Feat(CS): Add More Selection Controls

See merge request OpenMW/openmw!3674
2023-12-30 09:40:29 +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
Dave Corley
5c10727380 Feat(CS): Add definition files for selection group record type 2023-12-23 15:05:13 -06:00
Andrei Kortunov
e6690bbcc7 Use CMAKE_CURRENT_SOURCE_DIR instead of CMAKE_SOURCE_DIR 2023-12-19 19:58:52 +04:00
Andrei Kortunov
2e041073fc Move *.ui files for different applications to different folders 2023-12-19 15:21:08 +04:00
Alexei Kotov
9cdaf2c29b Handle NiFogProperty (feature #5173) 2023-12-09 17:13:16 +03:00
Andrei Kortunov
81a6a7cd2f Rework resolution selection (feature 7709) 2023-11-28 22:22:34 +04:00
elsid
f08ab9af56
Use SDL2 generate cmake files to find the package 2023-11-24 15:56:54 +01:00
Cody Glassman
de8c93d049 [Postprocessing] Add an API version, mirroring Lua 2023-11-16 15:24:16 +00:00
elsid
dcd81d026f
Use settings values for Video settings
* Convert window mode, vsync mode into enums, screenshot type into a struct.
* Add missing doc for screenshot type.
2023-10-27 14:31:23 +02:00
Bret Curtis
1bd4860026 no more obsolete mygui shizzle for macos 2023-10-22 11:25:39 +02:00
AnyOldName3
2ed584428c Add missing headers to components/CMakeLists.txt
Otherwise, they won't show up as part of the project in IDEs.
2023-10-15 15:44:24 +01:00