Commit Graph

752 Commits (24eb1165fcdfe9a4a6561750adac901c6d809e77)

Author SHA1 Message Date
psi29a 4ff7f8ddfb Merge branch 'string_viewing' into 'master'
Use string_view in yet more places

See merge request OpenMW/openmw!2348
2 years ago
Andrei Kortunov 3037f190be Implement per-font resolution 2 years ago
Evil Eye 2222b47e3d Make Settings::Manager::getString return a reference 2 years ago
mpeco aa57d04b54 functor-based Qt signal-slot syntax launcher 2 years ago
psi29a 5aa1ab2c62 Merge branch 'clean_includes' into 'master'
Cleanup includes

See merge request OpenMW/openmw!2307
2 years ago
psi29a 4078f19c74 Merge branch 'SHADER_HOT_RELOAD' into 'master'
Shaders: Hot reload, togglable by lua debug command

See merge request OpenMW/openmw!2238
2 years ago
elsid 73f885db0e
Cleanup includes 2 years ago
Andrei Kortunov c3d3f3140b Allow to change font settings in the launcher 2 years ago
Andrei Kortunov 43f552f48f Allow users to decide if they need to import bitmap fonts 2 years ago
florent.teppe df69fc7659 Post processing shaders now use the same lua commands, no more launcher option to enable live reload 2 years ago
elsid 8b8e4f78b6
Support cylinder and rotating box collision shape types for actors
Cylinder collision shape should give the best consistency between physics
simulation and pathfinding. Rotating box is already used by some actors, so
add it to have the same collision shape type for all actors.
2 years ago
Ivan Beloborodov f960e30d01 Implement Add switch for armor degradation fix. #6888 2 years ago
glassmancody.info fd4966f77a temporary fix for auto exposure 2 years ago
Andrei Kortunov 4b257e496e Use static settings map for launcher and editor - the Settings::Manager has a static data anyway 3 years ago
Cody Glassman 24749b066c Add sky blending to launcher 3 years ago
elsid 9cda505ef3
Add missing save for a setting in launcher 3 years ago
elsid 4ecee2e167
Avoid using reserved identifier in the global namespace
apps/launcher/datafilespage.cpp:762:12: warning: declaration uses identifier '_reloadCellsMutex', which is reserved in the global namespace [bugprone-reserved-identifier]
std::mutex _reloadCellsMutex;
           ^~~~~~~~~~~~~~~~~
           reloadCellsMutex

apps/openmw/mwgui/journalwindow.cpp:86:103: warning: declaration uses identifier '_sender', which is reserved in the global namespace [bugprone-reserved-identifier]
        void adviseButtonClick (char const * name, void (JournalWindowImpl::*Handler) (MyGUI::Widget* _sender))
                                                                                                      ^~~~~~~
                                                                                                      sender

apps/openmw/mwgui/journalwindow.cpp:92:100: warning: declaration uses identifier '_sender', which is reserved in the global namespace [bugprone-reserved-identifier]
        void adviseKeyPress (char const * name, void (JournalWindowImpl::*Handler) (MyGUI::Widget* _sender, MyGUI::KeyCode key, MyGUI::Char character))
                                                                                                   ^~~~~~~
                                                                                                   sender
3 years ago
AnyOldName3 6609243c87 Merge branch 'dont_notice_me_launcher_senpai' into 'master'
Don't load content entries from global and local configs

Closes #6441

See merge request OpenMW/openmw!2068
3 years ago
Evil Eye 478ad07607 Only load global cfg if local wasn't found 3 years ago
elsid 7e6c13630a Use target_precompile_headers for the most expensive headers 3 years ago
Evil Eye c081b8cfa9 Don't load content entries from global and local configs 3 years ago
elsid 10fbf170a2
Reduce number of includes for boost/program_options 3 years ago
Petr Mikheev 3bf18c601c Better fog 3 years ago
psi29a aeed99ca2c Merge branch 'clean_qt_headers' into 'master'
Clean up Qt includes

See merge request OpenMW/openmw!2027
3 years ago
Alexei Kotov a8e409deef Make launcher viewing distance setup more precise 3 years ago
jvoisin 8b9ed57348 Clean up Qt includes 3 years ago
psi29a bf8cc36645 Merge branch 'camera_settings' into 'master'
In-game camera settings

Closes #6715

See merge request OpenMW/openmw!1924
3 years ago
psi29a bb0dad7c08 Update to C++20 and see if our CI can handle it. 3 years ago
Petr Mikheev 65efd6f1c2 Remove from settings.cfg camera settings that are controlled from Lua 3 years ago
ζeh Matt d5ec959449
Create platform component for platform specific things 3 years ago
Alexei Kotov d840f4e995 Launcher: Stop making redundant setting changes 3 years ago
cody glassman 04843fed6d moddable post-processing pipeline 3 years ago
cody glassman ad139f2f9a rename to windowed fullscreen 3 years ago
cody glassman 05901a2480 add borderless windows, deprecate fullscreen mode 3 years ago
fredzio bab5e56768 Make the launcher dara directory and bsa list play nicer with dark
themes.

Known issue: the padding icon for disabled data directories is of wrong
color.
3 years ago
Frederic Chardon ad1ab1c880 Follow up to !192 3 years ago
fredzio b88d32ff5b Add 3 tabs in the "Data Files" page
1 with the data directories
2 with the BSA archives
3 with the content selector

When user select a directory to be added, first we walk the directory
hierarchy to make a list of all potential data= entries. If we find
none, the selected directory is added.

If more than one data directory is found, user is presented with a
directory list to check which one(s) are to be added.

Directories containing one or more content file are marked with an icon.

data= and fallback-archive= lines are handled like content= lines:
- they are part of the profile in launcher.cfg, prefixed by the profile
name
- they are updated in openmw.cfg when profile is selected / created

Directories can be moved in the list by drag and drop or by buttons.
Insertion is possible anywhere in the list.
Global data path and data local are shown but are greyed out, as they
are always included.

No attempt is made to ensure that the user choice are valid
(dependencies, overwrite of content).

After a profile is loaded, any added content is highlighted in green.
3 years ago
psi29a 4575df957e Merge branch 'issue-6685' into 'master'
issue 6685 - wizard failure if config dir does not exist

See merge request OpenMW/openmw!1735
3 years ago
Eris Caffee ba57d0651f issue 6685 - wizard failure if config dir does not exist 3 years ago
Eris Caffee db84d9e649 Issue 2766 Warn user of old MW version detected 3 years ago
elsid 7038c82690
Configure mav navmeshdb file size from the launcher 3 years ago
elsid 1baee5ddba
Add check box to remove unused tiles 3 years ago
elsid 2d5ccc804b
Exchange binary messages between navmeshtool and launcher 3 years ago
elsid a21c17ab26
Use crash catcher in launcher 3 years ago
Petr Mikheev a453e5c198 Reuse the same code to load settings in apps/openmw, apps/launcher, apps/opencs 3 years ago
Bret Curtis 74e7cfc023 remove unused includes: part1
remove unused imports: part2

revert one tidy we will keep for c++20
3 years ago
Bret Curtis d1fb854521 move most of the files from esm to esm3, keep common code in esm; this is make space for a future with esm4
esm typo

esm typo
3 years ago
Cody Glassman 8ec0a52605 Toggable day night switch (#5928) 3 years ago
elsid ed3286994c
Fix ASAN error: heap-use-after-free
=================================================================
==20931==ERROR: AddressSanitizer: heap-use-after-free on address 0x607000206030 at pc 0x7fc8b0f3a72b bp 0x7ffcee176860 sp 0x7ffcee176008
READ of size 13 at 0x607000206030 thread T0
    #0 0x7fc8b0f3a72a in __interceptor_strlen /build/gcc/src/gcc/libsanitizer/sanitizer_common/sanitizer_common_interceptors.inc:389
    #1 0x562e069a0af7 in QString::fromUtf8(char const*, int) /usr/include/qt/QtCore/qstring.h:706
    #2 0x562e069a0af7 in Launcher::AdvancedPage::AdvancedPage(Config::GameSettings&, QWidget*) /home/elsid/dev/openmw/apps/launcher/advancedpage.cpp:29
    #3 0x562e06959613 in Launcher::MainDialog::createPages() /home/elsid/dev/openmw/apps/launcher/maindialog.cpp:127
    #4 0x562e069691d2 in Launcher::MainDialog::setup() /home/elsid/dev/openmw/apps/launcher/maindialog.cpp:228
    #5 0x562e06969d88 in Launcher::MainDialog::showFirstRunDialog() /home/elsid/dev/openmw/apps/launcher/maindialog.cpp:188
    #6 0x562e06957025 in main /home/elsid/dev/openmw/apps/launcher/main.cpp:35
    #7 0x7fc8ad0d9b24 in __libc_start_main (/usr/lib/libc.so.6+0x27b24)
    #8 0x562e0690fced in _start (/home/elsid/dev/openmw/build/gcc/asan/openmw-launcher+0x56ced)

0x607000206030 is located 16 bytes inside of 64-byte region [0x607000206020,0x607000206060)
freed by thread T0 here:
    #0 0x7fc8b0fb3f19 in __interceptor_free /build/gcc/src/gcc/libsanitizer/asan/asan_malloc_linux.cpp:127
    #1 0x7fc8b0de3388  (/usr/lib/libopenal.so.1+0x40388)

previously allocated by thread T0 here:
    #0 0x7fc8b0fb4fd6 in __interceptor_posix_memalign /build/gcc/src/gcc/libsanitizer/asan/asan_malloc_linux.cpp:226
    #1 0x7fc8b0e379cb  (/usr/lib/libopenal.so.1+0x949cb)

SUMMARY: AddressSanitizer: heap-use-after-free /build/gcc/src/gcc/libsanitizer/sanitizer_common/sanitizer_common_interceptors.inc:389 in __interceptor_strlen
Shadow bytes around the buggy address:
  0x0c0e80038bb0: 00 00 00 00 00 00 00 00 00 fa fa fa fa fa 00 00
  0x0c0e80038bc0: 00 00 00 00 00 00 00 fa fa fa fa fa 00 00 00 00
  0x0c0e80038bd0: 00 00 00 00 00 fa fa fa fa fa 00 00 00 00 00 00
  0x0c0e80038be0: 00 00 02 fa fa fa fa fa 00 00 00 00 00 00 00 00
  0x0c0e80038bf0: 02 fa fa fa fa fa fd fd fd fd fd fd fd fd fa fa
=>0x0c0e80038c00: fa fa fa fa fd fd[fd]fd fd fd fd fd fa fa fa fa
  0x0c0e80038c10: fa fa fa fa fa fa fa fa fa fa fa fa fa fa fa fa
  0x0c0e80038c20: fa fa fa fa fa fa fa fa fa fa fa fa fa fa fa fa
  0x0c0e80038c30: fa fa fa fa fa fa fa fa fa fa fa fa fa fa fa fa
  0x0c0e80038c40: fa fa fa fa fa fa fa fa fa fa fa fa fa fa fa fa
  0x0c0e80038c50: fa fa fa fa fa fa fa fa fa fa fa fa fa fa fa fa
Shadow byte legend (one shadow byte represents 8 application bytes):
  Addressable:           00
  Partially addressable: 01 02 03 04 05 06 07
  Heap left redzone:       fa
  Freed heap region:       fd
  Stack left redzone:      f1
  Stack mid redzone:       f2
  Stack right redzone:     f3
  Stack after return:      f5
  Stack use after scope:   f8
  Global redzone:          f9
  Global init order:       f6
  Poisoned by user:        f7
  Container overflow:      fc
  Array cookie:            ac
  Intra object redzone:    bb
  ASan internal:           fe
  Left alloca redzone:     ca
  Right alloca redzone:    cb
  Shadow gap:              cc
==20931==ABORTING
3 years ago
elsid 8fedca5780
Fix navmesh cache progress bar jumps
When initial approximation of maximum progress based on numer of cells is too
high comparing to real number of navmesh tiles.
3 years ago
elsid 9e0451c714
Support navmesh generation from launcher 3 years ago
Thomas Lowe f50cbcad81 * AA combo box no longer disables the AA alpha test checkbox.
* Updated AA alpha test description to be more accurate
3 years ago
Thomas Lowe 4f77c18af4 Removed unneeded signal. 3 years ago
Thomas Lowe 5f355a14cd Changed default setting for anti-alias alpha test to true.
Added checkbox in advanced page for anti-alias alpha test, connected to AA combobox in the graphics page.
3 years ago
psi29a 5c5c71778a Merge branch 'circular' into 'master'
Consistently sort content files

See merge request OpenMW/openmw!1350
3 years ago
Alexei Kotov 5afd6b0e46 Merge branch 'adding_settingint_methods' into 'master'
Adding saveSettingInt() and loadSettingInt()

See merge request OpenMW/openmw!1167
3 years ago
psi29a 5836d0225f Merge branch 'leave_butter_to_soften' into 'master'
Soft Particles (#6128)

See merge request OpenMW/openmw!980
3 years ago
Evil Eye a3e039d862 Explicitely sort by file name after adding all data dirs 3 years ago
glassmancody.info 4461366761 settings update and launcher option 3 years ago
Petr Mikheev 37386f417e Support *.omwscripts in openmw-launcher 3 years ago
elsid 18d3102148
Do not use union to access FIXED_STRING<4> as int
https://en.cppreference.com/w/cpp/language/union:
> It's undefined behavior to read from the member of the union that wasn't most recently written.
3 years ago
pi03k e4eeb9cce9 Remove 'no relevant classes' moc warning 3 years ago
Thunderforge 42ce22f568 Adding saveSettingInt() and loadSettingInt()
Convenience methods for saving and loading integer settings. Versions for QSpinBox and QComboBox are included. Right now, only simple settings are used for it; we have some additional settings that include validation that aren't using these new methods.
3 years ago
elsid e9b8933b2f
Do no link binaries with Qt where it's not used
Define components_qt static library with all qt dependent components that also
depends on other components. Link only cs, wizard and launcher with qt
dependent components.
3 years ago
glassmancody.info 166e23a6d9 fix CI artifacts, missing header 3 years ago
psi29a b92c6985cd Merge branch 'auto_in_most_apps' into 'master'
Using auto keyword in most apps

See merge request OpenMW/openmw!885
3 years ago
psi29a 7d7427015e Merge branch 'removing_unused_launcher_imports' into 'master'
Removing unused imports in the Launcher

See merge request OpenMW/openmw!884
3 years ago
Cédric Mocquillon 1051745f29 [Launcher] Add new setting 'allow zooming' to advanced tab in the launcher 3 years ago
elsid 4259f7f230
Add setting to enable/disabled notification for saved screenshots 4 years ago
Evil Eye b2acb322af Merge branch 'modernize_use_override_for_most_apps' into 'master'
Using override keyword in most apps

See merge request OpenMW/openmw!886
4 years ago
Thunderforge 89950e5528 Preventing type conversion of double to float for objectPagingMinSize 4 years ago
Thunderforge 9f2f5174d4 Adding Object Paging Min Size combo box to Advanced -> Visuals
Requested in Discord by CMAugust and hammered out with a few other users.
4 years ago
Thunderforge efcdb2dfdd Using override keyword in most apps
Detected by clang-tidy's modernize-use-override

Future MRs can be created to run this on OpenMW and OpenMW CS
4 years ago
Thunderforge ded7bd92e6 Using auto keyword in most apps
Detected by clang-tidy's modernize-use-auto
4 years ago
Thunderforge 6ba23a028c Removing unused imports in the Launcher 4 years ago
Thunderforge 4a15868c0e Moving Lighting Method from Advanced -> Visuals to Graphics -> Lighting
The plan is to add additional options to this new tab, and since it's of similar status as the Shaders settings, it makes sense to put them next to them on the Graphics page.
4 years ago
psi29a 4bc7012104 Merge branch 'pack-default-settings' into 'master'
Pack default settings

Closes #5925

See merge request OpenMW/openmw!822
4 years ago
AnyOldName3 09f39b29f0 Load defaults.bin instead of settings-default.cfg. Do not decode yet. 4 years ago
AnyOldName3 92325976e9 Update documentation to refer to defaults.bin 4 years ago
Thunderforge ead51784dc [Launcher] Replacing static method access through instances
This addresses the Clang Tidy check [readability-static-accessed-through-instance](https://clang.llvm.org/extra/clang-tidy/checks/readability-static-accessed-through-instance.html). It also simplifies the code by reducing the number of parameters we're passing around.
4 years ago
psi29a b10a817f7e Merge branch 'useuless_launcher' into 'master'
Remove some useless includes from the launcher

See merge request OpenMW/openmw!775

(cherry picked from commit a84bd643b334eb6ac715681c497184ac22212ced)

d3fff8cf Remove some useless includes from the launcher
4 years ago
Simon Meulenbeek cd419256ad don't forget to close the audio device after you're done with it. 4 years ago
Andrei Kortunov 33b8233887 Validate GUI scaling and place it to the launcher 4 years ago
psi29a f1cfdafd4d Merge branch 'why_are_the_christmas_lights_still_up' into 'master'
Remove 8 light limit and add configurable lighting enhancements

See merge request OpenMW/openmw!618
4 years ago
glassmancody.info 582f7b52cf Merge remote-tracking branch 'upstream/master' into why_are_the_christmas_lights_still_up 4 years ago
glassmancody.info 9e80091aff clear up force shaders and make it less convoluted 4 years ago
glassmancody.info d4e7d25d14 Make life not suck for whoever wants to edit lighting shaders 4 years ago
glassmancody.info 4ba473b684 Finalize settings, torch fix 4 years ago
elsid 634556be9d
Add setting to allow following creatures to find path over water surface 4 years ago
Andrei Kortunov b96929f3fc Avoid division by zero 4 years ago
Simon Meulenbeek 75b4871bab Add Audio settings to openmw-launcher 4 years ago
Alexei Dobrohotov 7be7af13d7 Downgrade FOV-dependent view distance factor to a recommendation 4 years ago
Andrei Kortunov c5a36ad440 Do not cast enums to booleans 4 years ago
fredzio dbdd397716 Remove deadcode. 4 years ago
Evil Eye 525292b184 Add graphic herbalism to the launcher 4 years ago
Andrei Kortunov 8084a336b5 Replace zeroes and nulls by nullptrs 4 years ago
Alexei Dobrohotov f49bf028b9 Put a stretch menu background checkbox into the launcher (#5672) 4 years ago
Andrei Kortunov 46a1950b0e Do not use deprecated Qt functions 4 years ago
Bret Curtis 82431b752d removed unnessary bits that cmake should be doing for us; replace Misc::gcd with std::gcd 4 years ago
psi29a 9d350ec824 Merge branch 'head_bobbing' into 'master'
Add head bobbing in first person mode

Closes #5043

See merge request OpenMW/openmw!320
4 years ago