1
0
Fork 0
mirror of https://github.com/OpenMW/openmw.git synced 2025-02-25 17:09:43 +00:00
Commit graph

20866 commits

Author SHA1 Message Date
Evil Eye
5448338b21 Allow bound effects to be recast if they're attached to a recastable effect 2022-10-28 23:10:47 +02:00
Petr Mikheev
4f5443118e Merge branch 'fix_coroutine_crash' into 'master'
Fix coroutine-related crashes

Closes #6996

See merge request OpenMW/openmw!2447
2022-10-18 22:30:13 +00:00
uramer
a2fa1fe0a5 Execute async callbacks on the main Lua stack 2022-10-18 22:12:11 +02:00
uramer
8108fa0724 Merge branch 'fix_7039' into 'master'
Fix #7039: freeze after throwing an error in a queued Lua callback

Closes #7039

See merge request OpenMW/openmw!2469
2022-10-18 19:53:30 +00:00
uramer
b13a4f6b01 Lua coroutine crash tests 2022-10-18 21:11:31 +02:00
Evil Eye
48726eedaa Mark constant methods const 2022-10-18 20:28:35 +02:00
Evil Eye
a207b5e419 Prevent potentially returning garbage flags 2022-10-18 20:28:35 +02:00
Evil Eye
c8a594d9d2 Don't use potentially invalid cache entry 2022-10-18 20:28:35 +02:00
psi29a
bc1e0d3522 Merge branch 'grayscale_dialogue' into 'master'
Fix dialogue issues

Closes #6419 and #7047

See merge request OpenMW/openmw!2478
2022-10-18 15:41:56 +00:00
psi29a
48232bfece Merge branch 'consecutiveseriouspunches' into 'master'
Don't process unexpected hit text keys (bug #7042)

Closes #7042

See merge request OpenMW/openmw!2473
2022-10-17 13:11:02 +00:00
psi29a
fdf1577918 Merge branch 'lua_records' into 'master'
Lua Armor, Static and Light record bindings

See merge request OpenMW/openmw!2341
2022-10-17 13:10:19 +00:00
psi29a
da9cbbce8f add some memory 2022-10-17 13:09:17 +00:00
Evil Eye
a24e9e4c0a Mark constant methods const 2022-10-17 09:43:20 +02:00
Evil Eye
81f138cea0 Prevent potentially returning garbage flags 2022-10-17 09:37:56 +02:00
Evil Eye
1c17260d87 Don't use potentially invalid cache entry 2022-10-17 09:35:43 +02:00
Alexei Kotov
ece7a98e03 Only prevent initially dead actors from floating up (bug #4204) 2022-10-14 19:35:28 +03:00
AnyOldName3
15c51dcbbc Restore false-positive unused includes
They're needed on MacOS as SDL_opengl_gletx.h doesn't define them there.

They don't actually work on MacOS, so long-term, the code that uses
these defines should be changed to use #ifdef to check they're available
before using them.
2022-10-13 00:49:24 +01:00
Alexei Kotov
eadade9dfc Don't process unexpected hit text keys (bug #7042) 2022-10-13 02:07:23 +03:00
AnyOldName3
77de37b1ed Revert "Merge branch 'fix_macos_build' into 'master'"
As well as fixing the MacOS build, it meddled with a bunch of files that
already did the right thing.

This reverts commit 8162541a14, reversing
changes made to e16c451d08.
2022-10-12 22:48:34 +01:00
mpeco
a2ce37b5b0 clang-format 2022-10-11 01:14:17 -03:00
mpeco
af3af6e091 update types.lua 2022-10-11 00:01:11 -03:00
mpeco
90a73b39ce Lua Armor, Static and Light record bindings 2022-10-11 00:01:08 -03:00
Petr Mikheev
395f7f0e9a Fix #7039: freeze after throwing an error in a queued Lua callback 2022-10-10 23:32:17 +02:00
Petr Mikheev
6371e002fd [Lua] More understandable error message when trying to change stats on anything except openmw.self 2022-10-10 22:57:06 +02:00
psi29a
59025f2bc9 Merge branch 'dont_make_me_press_twice' into 'master'
Derive sneaking state from character data

See merge request OpenMW/openmw!2360
2022-10-10 16:49:20 +00:00
psi29a
5dfbf6ffb7 Merge branch 'another_iwyu' into 'master'
Another pass with IWYU

See merge request OpenMW/openmw!2465
2022-10-10 16:48:57 +00:00
jvoisin
cd29c181cf Another pass with IWYU 2022-10-10 15:16:18 +02:00
psi29a
8162541a14 Merge branch 'fix_macos_build' into 'master'
Use separate header to define missing GL constants

See merge request OpenMW/openmw!2464
2022-10-10 07:49:01 +00:00
psi29a
e16c451d08 Merge branch 'l10n' into 'master'
Separate l10n manager from lua

See merge request OpenMW/openmw!2451
2022-10-10 07:34:18 +00:00
psi29a
c164437d91 Merge branch 'classism' into 'master'
Use class service flags for autocalc NPCs

Closes #7044

See merge request OpenMW/openmw!2461
2022-10-10 07:32:46 +00:00
psi29a
c562b0b72c Merge branch 'bootlegcharacter' into 'master'
Nitpicking in CharacterController::update()

See merge request OpenMW/openmw!2460
2022-10-10 07:27:07 +00:00
elsid
c324482338
Use separate header to define missing GL constants 2022-10-09 23:35:55 +02:00
elsid
843753da14
Remove unused includes 2022-10-09 16:44:18 +02:00
jvoisin
3cbf1dc042 First pass with include-what-you-use 2022-10-09 10:39:43 +00:00
Evil Eye
60491cc896 Derive sneaking state from character data 2022-10-08 17:22:33 +02:00
Evil Eye
60c26832d2 Use class service flags for autocalc NPCs 2022-10-08 17:00:33 +02:00
Alexei Kotov
961fe59736 Nitpicking in CharacterController::update() 2022-10-08 07:03:04 +03:00
Petr Mikheev
3697c9266b Separate l10n manager from lua 2022-10-07 17:19:04 +02:00
psi29a
6630dbb9c2 Merge branch 'window_manager_profile' into 'master'
Profile window manager update

See merge request OpenMW/openmw!2458
2022-10-07 07:38:03 +00:00
elsid
2f5adbb083
Profile window manager update 2022-10-06 21:50:31 +02:00
elsid
212c7c7f25
Move LuaWorker to a separate file 2022-10-06 21:50:31 +02:00
elsid
cd18c81e58
Move ScopedProfile to a separate file 2022-10-06 21:50:31 +02:00
elsid
bb8b5e2108
Add META_Node to clang-format StatementMacros 2022-10-06 21:11:52 +02:00
elsid
063fff7fa4
Fix and prevent -Wextra-semi warning 2022-10-06 00:26:43 +02:00
elsid
624d8bc931
Support unsigned settings values 2022-10-04 01:34:53 +02:00
elsid
da15db295e
Fix resetting player's animation on game loading
When game is loaded player's animation is replaced by a new object. Old object
is destructed without explicit removeFromScene call.
2022-10-02 13:50:51 +02:00
psi29a
6e71804048 Merge branch 'keying_in' into 'master'
Add key flag on load

Closes #7034

See merge request OpenMW/openmw!2444
2022-09-30 13:16:14 +00:00
Evil Eye
e6592aa850 Add key flag on load 2022-09-30 12:16:45 +02:00
elsid
4de8ea30c8
Report used memory by Lua interpreter 2022-09-30 02:15:21 +02:00
elsid
b92d80249e
Adjust initial distance when destination is changed for obstacle check
Changed destination may create a situation when the distance actor moved between
2 update calls is less than initial distance because destination has been changed.
This forces actor to take evasive action when there is no actual obstacle.
2022-09-28 22:01:29 +02:00
clang-format-bot
88ec8a9523
Apply clang-format 2022-09-25 18:23:43 +02:00
psi29a
f7da42870e Merge branch 'count' into 'master'
Improve item count handling

See merge request OpenMW/openmw!2430
2022-09-25 13:38:33 +00:00
psi29a
aed0ad6b83 Merge branch 'nifosg_tests' into 'master'
Add tests for NifOsg::Loader

See merge request OpenMW/openmw!2421
2022-09-25 13:37:14 +00:00
psi29a
d05494bfb9 Merge branch 'falling_actors' into 'master'
Do not adjust position for falling actors (#7009)

Closes #7009

See merge request OpenMW/openmw!2416
2022-09-25 13:36:55 +00:00
psi29a
f0e58ef872 Merge branch 'editor_fix' into 'master'
Fix topic infos creation

Closes #6686

See merge request OpenMW/openmw!2432
2022-09-25 13:34:43 +00:00
psi29a
d38c072030 Merge branch 'recall_how_to_recall' into 'master'
Prevent recursive calls to ActiveSpells::update

Closes #7022

See merge request OpenMW/openmw!2426
2022-09-25 13:30:07 +00:00
Andrei Kortunov
3163d9ed56 Fix topic infos creation 2022-09-25 15:17:20 +04:00
Andrei Kortunov
7d23ad29e0 Make count input box larger to fit larger text 2022-09-25 11:54:34 +04:00
Andrei Kortunov
dacb300dfb Improve item count handling 2022-09-25 11:22:17 +04:00
Project579
6fe89ff22b Fix dumb regression, initialize "std::filesystem::file_time_type" with "clock::now()". 2022-09-24 21:52:10 +02:00
Project579
5cf2a958eb Make conversions between std::chrono time_point and string safer by not using "localtime" directly. 2022-09-24 21:47:27 +02:00
elsid
d2e1f18924
Add tests for NifOsg::Loader 2022-09-24 19:10:39 +02:00
elsid
4b760e8846
Do not add redundant nullptr parent
There are no failed tests after this, so this is not really needed.
2022-09-24 19:10:31 +02:00
elsid
83bb2195b0
Move init functions for Nif nodes to a separate file
This will be used in other tests.
2022-09-24 19:10:25 +02:00
elsid
f2fb3d6de8
Separate NIFFileReader from NIFFile
NIFFile might not always be created from a file or stream containing NIF data.
Basically there are 2 different responsibilities for this class:
1. Read NIF file
2. Provide input for nifosg and bulletnifloader.

Remove no longer needed NIFFileMock since the state of NIFFfile can be
initialized independently from reading NIF file.
2022-09-24 19:10:14 +02:00
Evil Eye
d3253cb636 Prevent recursive calls to ActiveSpells::update 2022-09-24 18:13:45 +02:00
elsid
1fc7bd7775
Do not consider falling actors as grounded 2022-09-24 17:49:44 +02:00
elsid
953954ff95
Do not adjust position for falling actors 2022-09-24 17:49:42 +02:00
clang-format-bot
ddb0522bbf
Apply clang-format to code base 2022-09-22 21:35:26 +03:00
psi29a
9a9c7fa7cf Merge branch 'std-filesystem-hotfix' into 'master'
Use std::filesystem for unit tests temporary files path.

See merge request OpenMW/openmw!2402
2022-09-19 20:47:33 +00:00
psi29a
525f81393a Merge branch 'physics_refactor' into 'master'
Small physics refactoring

See merge request OpenMW/openmw!2417
2022-09-19 19:57:23 +00:00
Project579
b82176410b Use std::filesystem for unit tests temporary files path. 2022-09-19 21:42:18 +02:00
Evil Eye
7cc55022a1 Implement sun damage based on the research on the wiki 2022-09-19 19:05:22 +02:00
elsid
feb645d15f
Remove redundant Scene::updatePosition function 2022-09-17 01:14:04 +02:00
elsid
aeb4611d6c
Mark MWPhysics::Actor constructor and assignment operators as deleted 2022-09-17 01:14:04 +02:00
elsid
bceca33699
Do not lock mutex in MWPhysics::Actor constructor 2022-09-17 01:14:04 +02:00
elsid
bd98404890
Initialize PtrHolder::mPtr and positions by its constructor 2022-09-17 01:14:04 +02:00
AnyOldName3
84f8a6848a Renormalise line endings
This should replace accidental CRLF with LF
2022-09-16 00:53:24 +01:00
elsid
a0cfcc50a2
Fix dangling pointer access on clicking save in the main menu
getSignature() returns an object which means expression like:
className = it->getSignature().mPlayerClassName;
assigns a temporary object to className that does not outlive the statement.
Having className a string view such code leads to a dangling pointer.

Return a reference from getSignature to save on redundant copying.

Change getSignature implementation to make it visible that it finds a maximum
element.

Do not call getSignature multiple times when possible to avoid seaching for the
same max element multiple times.
2022-09-15 22:49:20 +02:00
psi29a
d1c79fa8d1 Merge branch 'pre_clang_format_fixes_2' into 'master'
Fixes before applying clang-format 2

See merge request OpenMW/openmw!2401
2022-09-15 08:24:23 +00:00
elsid
9c291535bb
Dump NIFZ and KFFZ sub records by esmtool 2022-09-15 00:01:40 +02:00
elsid
410a2881fe
Add comma to the last array element to prevent putting multiple elements on a single line 2022-09-14 00:36:02 +02:00
elsid
51314db2f1
Remove AI_CNDT from AI package types
AI_CNDT is a label of subrecord containing cell name. It's not AI package type.
2022-09-13 00:05:12 +02:00
psi29a
20abe6dcf5 Merge branch 'esmtool_string_view' into 'master'
Use std::string_view for esmtool labels

See merge request OpenMW/openmw!2396
2022-09-12 20:55:01 +00:00
elsid
52b7b66e9f
Add comma to the last array element to prevent putting multiple elements on a single line 2022-09-12 21:00:51 +02:00
elsid
5b1d6917ef
Add comments to prevent line splitting on formatting 2022-09-12 21:00:51 +02:00
elsid
4698a4cd2d
Use raw string literals to format command usage messages 2022-09-12 21:00:51 +02:00
elsid
f269406061
Do not wrap emit expresison with parenthesis
To avoid warnings like following after clang-format applied:

apps/launcher/utils/profilescombobox.cpp:85:9: warning: misleading indentation; statement is not part of the previous 'if' [-Wmisleading-indentation]
    emit(signalProfileChanged(mOldProfile, currentText()));
        ^
apps/launcher/utils/profilescombobox.cpp:82:5: note: previous statement is here
    if (index == -1)
    ^
2022-09-12 21:00:51 +02:00
elsid
40e899f56d
Use std::string_view for esmtool labels 2022-09-12 18:58:53 +02:00
elsid
6ae15f08e0
Avoid chained operator() calls to prevent formatting issues 2022-09-12 16:48:15 +02:00
unrelentingtech
1c8fd2ecdb Implement system-scaled HiDPI support (SDL_WINDOW_ALLOW_HIGHDPI - Wayland, macOS, etc) 2022-09-12 08:18:08 +00:00
elsid
a9826342b2
Print ESM4 EditorId and Model by esmtool dump 2022-09-12 01:42:08 +02:00
psi29a
80d52e3da8 Merge branch 'cursor' into 'master'
Support high-resolution cursor textures

Closes #6933

See merge request OpenMW/openmw!2262
2022-09-11 18:32:18 +00:00
psi29a
435eacdaad Merge branch 'debug_draw_commands' into 'master'
API to draw primitives

See merge request OpenMW/openmw!2345
2022-09-11 17:17:16 +00:00
Andrei Kortunov
a2c02d2999 Support high-resolution cursor textures (feature 6933) 2022-09-11 20:54:20 +04:00
florent.teppe
43b0ae1ce7 all debug renders now use the same shader and it works
remove debug draw shader, now that debug and debugdraw serve the same function

remove debug draw code from actors to clean

replaced int uniforms with bool for better readability

clang format

cleanup, remove unused func, and mistake whitespace

fix namespace

added more colors

fixed missing whitespace
2022-09-11 17:54:01 +02:00
florent.teppe
2a980ecb50 cleaned some code and fixed some naming issues
Moved debug draw to components, fixed some whitespace issues, added include guard

fixed uniform name, removed old files

Fixes some more whitespace weirdness
2022-09-11 17:53:53 +02:00
florent.teppe
12b3424dd7 initial work to get lines in
lines need the same synchronisation system as the other primitives

This two points are there because if I resize to 0 it crashes, si I need a pice of line at 0.,0.,0. so there is no crash.Not ideal

Lines are colored

didn't commit updated shader file
2022-09-11 17:53:51 +02:00
florent.teppe
80c97e48bf made code more consistent between cube, cylinder and wirecube, should also fix a clang compilation error
remove include to non existing file

Actors code displays different ways to use debug draw

oups, forgot to remove parameter in function

fix include case sensitivity

Jopefully fixes all linux issues

moves some code pieces, and the debug draw now has a group node to have different types of objects to draw
2022-09-11 17:53:49 +02:00
florent.teppe
76008e1ff8 Multiple shapes to draw
adds wireCube primitive

scale of the command taken into account

shading light is more vertical
2022-09-11 17:53:47 +02:00
florent.teppe
93af569a68 can place a cube at 0,0,0 Useless for now
Arbitrarly draw cubes at certain position with a certain color

Adds exemple of how it looks in the actor update code.

draws a green cube if alive, red else
2022-09-11 17:53:41 +02:00
psi29a
29f3de30c2 Merge branch 'master' into 'cellstore_refactor'
# Conflicts:
#   apps/openmw/mwworld/scene.cpp
2022-09-11 15:03:37 +00:00
Project579
886b8c7af2 Fix build error with stdlibc++ due to includes shuffling. 2022-09-11 14:41:21 +02:00
Project579
9ceafe770d Hard fail on loading BSA with records using unicode paths. 2022-09-11 14:41:21 +02:00
Project579
1a79f098fa Use std::filesystem::create_directories instead of std::filesystem::create_directory to recursively generate directories from the provided path. 2022-09-11 14:41:21 +02:00
Project579
ca14fc00dc Added dedicated functions for conversions between QString and std::filesystem::path. 2022-09-11 14:41:21 +02:00
Project579
c226b35f1f Fix some remaining encoding errors due to std::filesystem transition. 2022-09-11 14:41:20 +02:00
Project579
1fc197e404 Check std::getenv output before using it to construct a std::filesystem::path. 2022-09-11 14:41:20 +02:00
Project579
5456ef1d50 Add new functions and overloads to support std::u8string and std::filesystem::path. 2022-09-11 14:41:20 +02:00
Project579
796911e67d iniimporter: Work around some old MSVC compiler bugs. 2022-09-11 14:41:20 +02:00
Project579
199bf233e8 essimporter: Don't use "std::string" to store paths. 2022-09-11 14:41:20 +02:00
Project579
14a786bab0 iniimporter: Don't convert paths to "std::string". 2022-09-11 14:41:20 +02:00
Project579
4e428dee12 Update some settings that accept paths by "std::string" to accept them as "std::filesystem::path" instead. 2022-09-11 14:41:20 +02:00
Project579
928b131564 Implement std::filesystem::path conversion tests. 2022-09-11 14:41:20 +02:00
Project579
a13709c510 Replace implicit convertions from std::filesystem::path to std::string with correctly converting functions. 2022-09-11 14:41:20 +02:00
Project579
4d47e8d055 openmw-cs: model: world: data: Remove dead code. 2022-09-11 14:41:20 +02:00
Project579
864112b5db Fixed Windows build when using MSVC 14.26 and MacOS build. 2022-09-11 14:41:20 +02:00
Project579
6bf4c7a04f Upgraded "input-file" command line option to Files::MaybeQuotedPath from std::string to allow unicode characters on Windows. 2022-09-11 14:41:20 +02:00
Project579
e5c417c968 Make sure all paths are passed as std::filesystem::path instead of std::string where possible. 2022-09-11 14:41:15 +02:00
Project579
35fe214588 Updated components/misc/timeconvert.hpp to fix the Android build. 2022-09-11 02:20:01 +02:00
Project579
5446571aec Circumvent QT MOC bugs by including the filesystem header in a specific order. 2022-09-11 02:19:07 +02:00
Project579
cf0af87c80 Revert changes from "4c8e1ccf - Fixed windows build and updated tests to reflect changes of escape character from "&" to "\"" in "apps/openmw_test_suite/openmw/options.cpp" 2022-09-11 02:19:07 +02:00
Project579
e97eeca281 Attempt to work around QT MOC bugs caused by the filesystem header. 2022-09-11 02:19:07 +02:00
Project579
cd229a965b Fixed windows build and updated tests to reflect changes of escape character from "&" to "\" 2022-09-11 02:19:07 +02:00
Project579
4bb07282c9 Replace all remaining occurrences of boost::filesystem with std::filesystem. 2022-09-11 02:19:00 +02:00
florent.teppe
9a19bb84a4 fixed Clang and whitespace difference with master 2022-09-10 22:58:15 +02:00
florent.teppe
10de4a5156 created a relationship between the record type and the corresponding state
used in readReferences and writeReferences. Simplifies the calls to those functions
2022-09-10 22:20:47 +02:00
florent.teppe
256d8a699a moves one function from tuplemeta.hpp to newly created tuplehelpers.hpp 2022-09-10 20:13:18 +02:00
florent.teppe
73e3c0adf6 applies some review changes
fixed c style cast
fixed useless includes
fixed callback not last member
fixed situation where type==0 and therefore function call isn't necessary
2022-09-10 19:48:48 +02:00
psi29a
25fa8c3656 Merge branch 'rm_base_esm_reader' into 'master'
Remove ESM::Reader base class

See merge request OpenMW/openmw!2388
2022-09-10 14:38:13 +00:00
psi29a
525b904a44 Merge branch 'reflection-uniform' into 'master'
Added a uniform to indicate whether rendering is occurring in a reflection

See merge request OpenMW/openmw!2340
2022-09-10 14:19:20 +00:00
elsid
ac1688f9c1
Remove ESM::Reader base class
This class does not serve any useful purpose now. It was added as a first step
in attempt to define common interface for ESM3 and ESM4 readers. But this is not
going to happen.
2022-09-10 15:17:49 +02:00
florent.teppe
158eea934d removed more code from the header
simplified forEachInternal function using tupleForEach
moved some function that were in CellStoreImp that didn't need to be
2022-09-10 10:03:13 +02:00
florent.teppe
65bd007baa simplified some big switch/case 2022-09-09 23:40:56 +02:00
psi29a
95f9f00bcc Merge branch 'navigator_rtree' into 'master'
Optimize updating navmesh from the main thread primarily on cell loading

See merge request OpenMW/openmw!2382
2022-09-08 22:18:36 +00:00
florent.teppe
bcc004ecf5 Simplified read reference, by associating the types to the recNameInt using tuple + template + fold expresions magic 2022-09-08 23:39:44 +02:00
florent.teppe
0a5c863f27 fewer header includes 2022-09-08 21:08:59 +02:00
florent.teppe
c7e88344d0 cellstore refactor first version, simply replaces each individual reflist by a tuple and makes the necessary related changes 2022-09-08 20:52:00 +02:00
psi29a
95ad1d91df Merge branch 'esmstore-round-2' into 'master'
More ESMStore cleanup

See merge request OpenMW/openmw!2383
2022-09-08 13:08:26 +00:00
ζeh Matt
aa65df8872
Rename meta.hpp to tuplemeta.hpp 2022-09-08 15:03:01 +03:00
elsid
22ee592dd3
Lock TileCachedRecastMeshManager once per changing a cell
To save time on locking mutex and prevent AsyncNavMeshUpdater to use RecastMesh
for a tile in the middle of objects loading.
2022-09-08 11:06:35 +02:00
psi29a
b9ff117dfe Merge branch 'reuse_actors_positions_buffer' into 'master'
Reuse physics actors positions buffer

See merge request OpenMW/openmw!2384
2022-09-08 06:57:41 +00:00
Andrei Kortunov
6ec9616ddd Localize the 'show effect duration' option 2022-09-08 07:46:56 +04:00
ζeh Matt
c856095562
Use compile time generated indices for tuples types 2022-09-08 03:38:07 +03:00
elsid
cdc9141e2f
Reuse physics actors positions buffer 2022-09-08 01:57:45 +02:00
ζeh Matt
8f7703d5c8
Rename HasMember to TupleHasType and move code into misc/meta.hpp 2022-09-08 00:13:50 +03:00
elsid
d15e1dca84
Use R-tree for objects to be used for navmesh generation
Instead of storing a set of objects per tile.
2022-09-07 22:51:56 +02:00
psi29a
1859c6eded Merge branch 'pcvisionbonus' into 'master'
Implement PCVisionBonus functions

Closes #6983

See merge request OpenMW/openmw!2371
2022-09-07 20:27:22 +00:00
psi29a
1943486812 Merge branch 'savescreenshots' into 'master'
!2358 follow-up (bug #6661)

Closes #6661

See merge request OpenMW/openmw!2376
2022-09-07 20:24:41 +00:00
psi29a
fcd9b78cac Merge branch 'REFACTOR_STORE' into 'master'
Refactoring the ESM store to better support many new ESM4 types

See merge request OpenMW/openmw!2161
2022-09-07 20:22:29 +00:00
florent.teppe
31a14952b7 no more getIdType, only setIdType 2022-09-07 18:45:15 +02:00
Alexei Kotov
81c78f5477 Keep savegame screenshots up-to-date 2022-09-07 16:18:33 +03:00
Alexei Kotov
0d3a1470c9 Fix double quote marks 2022-09-07 16:12:26 +03:00
psi29a
912a4d69ee Merge branch 'reuse_simulations_buffer' into 'master'
Reuse physics simulations buffer (#6588)

Closes #6588

See merge request OpenMW/openmw!2374
2022-09-07 10:30:59 +00:00
elsid
277211c5b4
Reuse physics simulations buffer
To avoid redundant allocations.

Use 2 buffers to make sure there is no overlap between main and the background
threads.
2022-09-07 03:06:59 +02:00
florent.teppe
e961ac6f7c function doesn't need to return int 2022-09-06 23:30:51 +02:00
florent.teppe
b1d5d604be various fixes
fixed naming convention
replaced std::string by string_view when possible
removed unused function and member varaible
replaced type::value by type_v
set default destructor in cpp
function getTypeIndex => getnextindex
2022-09-06 23:10:58 +02:00
elsid
180d609e0d
Check "wait until min distance to player" only for requiredTilesPresent wait condition
allJobsDone should wait even if "wait until min distance to player" is 0.
2022-09-06 21:51:48 +02:00
elsid
955db8f825
Call Navigator::setWorldspace once per changing cell 2022-09-06 21:51:48 +02:00
elsid
204ab6fea3
Use version instead of generation and revision for recast mesh 2022-09-06 21:51:48 +02:00
florent.teppe
7bc506ff86 linux copmile 2022-09-06 14:33:03 +02:00
florent.teppe
564c5d6690 fixed naming convention issue 2022-09-06 14:27:53 +02:00
florent.teppe
e23d9c11a8 moved a bit of code back in the header to avoid many template specialization 2022-09-06 14:19:55 +02:00
florent.teppe
0dd529ab1d With the records include removed from store.hpp, need to include the relevant files accross the codebase.Lots of touched files, but very little done 2022-09-06 13:26:13 +02:00
Evil Eye
6117b10cfa Derive screen brightness from the blind modifier 2022-09-05 20:31:48 +02:00
Evil Eye
489c7a10b6 Implement PCVisionBonus functions 2022-09-05 20:21:19 +02:00
psi29a
8e7cee5861 Merge branch 'shut_it' into 'master'
Make the Sound magic effect make noise

Closes #6986

See merge request OpenMW/openmw!2369
2022-09-05 17:55:49 +00:00
florent.teppe
4bb9a4166d The tuple types declaration is back in the header, but there is no need for implementation details to be known for any of the types 2022-09-05 18:38:59 +02:00
Evil Eye
9484d8ce51 Make the Sound magic effect make noise 2022-09-05 18:04:31 +02:00
florent.teppe
57df51b4a6 fixed made by @ZehMatt in 6abb96250f and cdcf1393fc 2022-09-05 18:04:10 +02:00
florent.teppe
9092c32f2e fixed incompatibilities caused bu merge 2022-09-05 17:57:13 +02:00
florent.teppe
1ed22a298d fix compile 2022-09-05 17:35:36 +02:00
florent.teppe
7bd7105345 code cleanup 2022-09-05 17:35:36 +02:00
florent.teppe
33ea66b86d Type index type error fixed 2022-09-05 17:35:36 +02:00
florent.teppe
85a9edf2ee removes useless make_tuple, and changes type of typeIndex to size_t 2022-09-05 17:35:36 +02:00
florent.teppe
31330c9abc oups 2022-09-05 17:35:36 +02:00
florent.teppe
cbb9b65286 linux compile 2022-09-05 17:35:36 +02:00
florent.teppe
ee06cccbe1 gets rid of the macros, we use a tuple instead, with a mechanism to assign an index to each type.
so the tuple is only defined in the cpp, but we can still have template functions in the header that can ge tthe index with the type
2022-09-05 17:35:36 +02:00
florent.teppe
16482243fa rename StoreBase =>DynamicStore, and create new class Storebase
all stores inherit from base class StoreBase.Storebase is just an empty interface class
2022-09-05 17:35:36 +02:00
florent.teppe
0d84b32d46 Rename member to be clearer and more generic 2022-09-05 17:35:35 +02:00
florent.teppe
0d7bd19119 removes recname type, we use what is already included in ESM types 2022-09-05 17:35:35 +02:00
florent.teppe
bff4096652 Removed macro that didn't serve any real purpose
Renamed member that didn't respect the naming convention
2022-09-05 17:35:35 +02:00
florent.teppe
78ba3f91f3 Binds at compile time esm struct and RecNameInts to automatically populate mESM3RecordToStore
fewer possible mistakes now, one macro takes all the information to create all the stores and maps from RecName to Store
2022-09-05 17:35:35 +02:00
florent.teppe
a7207a9220 Linux compilation 2022-09-05 17:35:35 +02:00
florent.teppe
59ebee634b Very convincing experiment, by associatingg a compiletime index to the esm record, it becomes possible to automate the loop that creates them
it will also be possible to associate AT COMPILETIME the RecNameInt to the esm type, which in the same manner will automatically populate mESM3RecordToStore
2022-09-05 17:35:35 +02:00
florent.teppe
252550d86f Added records for ESM4s the throw std:: logic error ensures at compile time that there is no collision
static_assert doesn't work because the function can be called at run time
2022-09-05 17:35:35 +02:00
florent.teppe
0967c11128 mids and mStaticIds moved to mStoreImp
renamed recordid to storeid
2022-09-05 17:35:35 +02:00
florent.teppe
87224e3007 Fixes a bug with es3overrideRecord, esm3InsertStatic and esm3StoreInsert
This also comes with a change to the mapping from esm3 record name to Store to be more direct with a pointer
and the creation of a map from store pointer to esm3 record type
2022-09-05 17:35:07 +02:00
florent.teppe
dbfbad575b Fixes GCC compilation, hopefully for good 2022-09-05 17:35:07 +02:00
florent.teppe
30549155e0 Removed extra ; that GCC didn't like (fixes pendantic warning treated as error) 2022-09-05 17:35:07 +02:00
florent.teppe
800ada37ae removed getId public function 2022-09-05 17:35:07 +02:00
florent.teppe
c41c67b461 Fixed naming convention problems
removed 2 macros.
 - One is replaced by the underlying code
 - The second one ise replaced by a template function

removed tabulation used as indentation
used getWritable instead of a const_cast
used for( val : cont) loop
removed useless getId function
2022-09-05 17:35:07 +02:00
florent.teppe
0f41ae3b53 Oups forgot an extra ; not liked by Ubuntu GCC 2022-09-05 17:35:06 +02:00
florent.teppe
ede46745b5 Fixed Linux compialtion 2022-09-05 17:35:06 +02:00
florent.teppe
0be4521291 Removed mistakenly added space 2022-09-05 17:35:06 +02:00
florent.teppe
1ced0c912e partially revert "Store: moved all the template specialization to its own heaper file, included where it's needed"
This reverts commit 80a25bcd3021f7ebfaf2f864e34532009b9b8aeb.
It didn't really make sense to do all those changes in the same MR

partially Revert "Store refactoring: more forgotten storeSpecialization.hpp"

This reverts commit 9943a5bc96b9025f06cbaac5bb7f1bf51ebc746f.

removed remaining references to storeSpecialization  CMakeLists.txt,  and landmanager.cpp
2022-09-05 17:35:06 +02:00
florent.teppe
3b6ac53be4 Store refactoring: more forgotten storeSpecialization.hpp 2022-09-05 17:34:40 +02:00
florent.teppe
5ee3cfed57 There is one less necessary macro, it was possible to make a template function that works for all StoreBase stores 2022-09-05 17:34:40 +02:00
florent.teppe
1ed2244298 Store refactor: Now way easier to create new stores, a good chunk of it is automated, only simple macros are used now
The case of indexedStores remains an issue, because they can't be stored with the rest because they don't inherit of store base
2022-09-05 17:34:40 +02:00
florent.teppe
a78db85178 Store refactor: frogot a specialization include 2022-09-05 17:34:40 +02:00
florent.teppe
ae24d62f27 ESM store: new structure that associates each record type to an id, will make it easier to add new stores 2022-09-05 17:34:40 +02:00
florent.teppe
3a62ef3a99 Store added storespecialization to cmakelist, and removed the captial first letter 2022-09-05 17:34:40 +02:00
florent.teppe
0d85e7db7d Store: moved all the template specialization to its own heaper file, included where it's needed
in the esm store a function is defined in the cpp file to not rely on the knowledge of store.hpp in the header file
2022-09-05 17:34:22 +02:00
florent.teppe
0a0b301cc4 ESM Store: no more automatic function implementation that suppose a mId member
All the ESM3 store will continue to work the same, used a macro to quickly define the different functions
2022-09-05 17:33:17 +02:00
florent.teppe
db2b4600aa ESM Store: removed a lot of declarations that became useless
the default implementation of the template<> get() threw a reuntime error, when it is a compile time issue
now all the implementations are in the cpp file
2022-09-05 17:32:56 +02:00
florent.teppe
6467e48be8 ESMStore: greatly simplified the store declaration with a macro 2022-09-05 17:32:56 +02:00
florent.teppe
a4c1bff03d ESMStore: no longer necessary to include the type definitions in the header
For now there still needs to declare all the getters, but a macro may make that easier, or an different method entierly
2022-09-05 17:32:56 +02:00
elsid
e2d566b89d
Store changed tiles in TileCachedRecastMeshManager 2022-09-05 11:49:39 +02:00
psi29a
52ca14d881 Merge branch 'cast_spell' into 'master'
Minor refactor of CastSpell

See merge request OpenMW/openmw!2365
2022-09-04 19:01:50 +00:00
Evil Eye
06d6de50e6 Remove redundant store lookups 2022-09-04 15:42:40 +02:00
Evil Eye
325081dc07 Reuse CastSpell for explosions 2022-09-04 15:09:31 +02:00
Evil Eye
8d66b2e75d Remove redundant params 2022-09-04 14:51:19 +02:00
Evil Eye
4eafe3696c Move explodeSpell out of World 2022-09-04 14:01:36 +02:00
psi29a
647b22e175 Merge branch 'DistantLOD' into 'master'
Support for TES distant LOD

See merge request OpenMW/openmw!1861
2022-09-04 11:36:07 +00:00
psi29a
71cafeae38 Merge branch 'i_like_to_dance_close_to_the_explosion' into 'master'
Always create touch explosions for non-actors

Closes #5714

See merge request OpenMW/openmw!2364
2022-09-04 07:44:23 +00:00
psi29a
10b500da82 Merge branch 'we-use-c++-11-now' into 'master'
Eliminate &thing[0] pattern

See merge request OpenMW/openmw!2361
2022-09-04 07:43:46 +00:00
psi29a
a247bba981 Merge branch 'damage_over_time' into 'master'
Keep showing NPC health while dealing damage

Closes #6427

See merge request OpenMW/openmw!2362
2022-09-03 21:01:11 +00:00
Evil Eye
bd4322360d Always create touch explosions for non-actors 2022-09-03 22:43:29 +02:00
unknown
d5b42bc843 Reflect non-harmful effects as well 2022-09-03 20:02:58 +02:00
unknown
f68e7ce0b5 Keep showing NPC health while dealing damage 2022-09-03 19:49:59 +02:00
Cédric Mocquillon
83ee25711e Use the pattern according to the esm version 2022-09-03 18:55:06 +02:00
Cédric Mocquillon
6a3d27ce82 Add a dictionary to retrieve the LOD mesh name of a mesh cache 2022-09-03 18:52:27 +02:00
AnyOldName3
4e8e2e1c60 Eliminate &thing[0] pattern 2022-09-03 16:41:35 +01:00
Alexei Kotov
10ffacc82f Update saved game dialog debug messages 2022-09-03 09:08:46 +03:00
Alexei Kotov
a8e561d885 Avoid issues with saved games that have no screenshot data 2022-09-02 07:04:02 +03:00
Evil Eye
fcb820f1f7 Appease the evil spirits of C++ 2022-09-01 18:25:41 +02:00
Evil Eye
68d185ad4d Remove forward declarations used by smart pointers 2022-09-01 17:20:15 +02:00
Evil Eye
3c8943c876 Use make_unique 2022-08-31 21:16:03 +02:00
Evil Eye
f4bc06604a Use std::unique_ptr in WindowManager 2022-08-31 21:07:59 +02:00
Evil Eye
1b9da77455 Use std::unique_ptr in SpellWindow 2022-08-31 19:50:30 +02:00
Evil Eye
6d65885bd2 Use std::unique_ptr in QuickKeysMenu 2022-08-31 19:48:23 +02:00
Evil Eye
84911a300b Use std::unique_ptr in MessageBoxManager 2022-08-31 19:44:04 +02:00
Evil Eye
30d320f651 Use std::unique_ptr in MainMenu 2022-08-31 19:05:32 +02:00
Evil Eye
59fab4c9e2 Use std::unique_ptr in ItemView 2022-08-31 19:03:45 +02:00
Evil Eye
837183ec79 Use std::unique_ptr in ProxyItemModel 2022-08-31 18:49:50 +02:00
Evil Eye
fd720c0a7b Use std::unique_ptr in HUD 2022-08-31 18:03:46 +02:00
Evil Eye
b21c77a026 Use std::unique_ptr in EnchantingDialog 2022-08-31 18:02:12 +02:00
psi29a
58d08d402a Merge branch 'navigator_stats' into 'master'
Show stats for writing and reading navmesh db queue jobs

See merge request OpenMW/openmw!2346
2022-08-30 21:12:54 +00:00
psi29a
4ff7f8ddfb Merge branch 'string_viewing' into 'master'
Use string_view in yet more places

See merge request OpenMW/openmw!2348
2022-08-30 21:12:11 +00:00
psi29a
fab5236fcd Merge branch 'fix_ai_wander' into 'master'
Limit AiWander destination by wander distance (#6937)

Closes #6937

See merge request OpenMW/openmw!2353
2022-08-30 21:10:15 +00:00
elsid
709baafd12
Limit AiWander destination by wander distance
From initial actor position.

findRandomPointAroundCircle may return a position outside given range. Use
raycast to choose a different reachable point within a radius but double check
and discard if it's still outside.

Use wander radius instead of wander distance for findRandomPointAroundCircle to
have better chance for a position to be inside wander distance.
2022-08-30 20:51:36 +02:00
Andrei Kortunov
3037f190be Implement per-font resolution 2022-08-30 12:16:30 +04:00
psi29a
945448cdf1 Merge branch 'font_fixes' into 'master'
Improve built-in default fonts

See merge request OpenMW/openmw!2302
2022-08-30 07:54:20 +00:00
Andrei Kortunov
3178868cc3 Improve built-in default fonts 2022-08-30 07:54:20 +00:00
psi29a
a0029cb512 Merge branch 'load_menu' into 'master'
Enlarge character selection widget

See merge request OpenMW/openmw!2350
2022-08-30 07:43:05 +00:00
psi29a
ca90b53c30 Merge branch 'no_shiny_rocks' into 'master'
Only reflect spells that have a caster

Closes #6969

See merge request OpenMW/openmw!2349
2022-08-30 07:41:38 +00:00
Andrei Kortunov
8bac073f9c Enlarge character selection menu to fit long character or class names 2022-08-28 21:35:11 +04:00
Evil Eye
7729ef2e5b Only reflect spells that have a caster 2022-08-28 17:42:55 +02:00
Evil Eye
fb9bc5f535 Use string_view in Fallback::Map 2022-08-28 17:20:49 +02:00
Evil Eye
2222b47e3d Make Settings::Manager::getString return a reference 2022-08-28 16:38:11 +02:00
Evil Eye
dfcd34372d Use more string_view 2022-08-28 15:06:31 +02:00
elsid
c15848932b
Separate reading navigator stats and reporting 2022-08-28 14:52:34 +02:00
Evil Eye
d2a80cf112 Use unique_ptr in MWGui::DialogueWindow 2022-08-28 11:35:39 +02:00
Evil Eye
534994b42a Use more string_view in the character controller 2022-08-27 13:47:15 +02:00
Evil Eye
19bd2f3c3d Use more string_view and const string& 2022-08-27 13:07:59 +02:00
psi29a
d2d2282af5 Merge branch 'null_terminated' into 'master'
Improve format workaround and add unit tests

See merge request OpenMW/openmw!2338
2022-08-26 19:43:57 +00:00
Evil Eye
02bbb0be45 Improve format workaround and add unit tests 2022-08-26 19:43:57 +00:00
Joshua Barretto
df7d2e46c0 Added a uniform to indicate whether rendering is occurring in a reflection 2022-08-25 22:34:50 +01:00
Evil Eye
ac84027b90 Unify soulgems and restore soul text 2022-08-25 21:37:20 +02:00
psi29a
e46be1c220 Merge branch 'rm_get_poly_height_status' into 'master'
Do not check getPolyHeight status (#6964)

Closes #6964

See merge request OpenMW/openmw!2334
2022-08-25 08:55:01 +00:00
psi29a
c260a0d4c2 Merge branch 'string_me_along' into 'master'
Yet another string_view MR

See merge request OpenMW/openmw!2333
2022-08-25 08:53:28 +00:00
elsid
948e2f5db9
Do not use collision shapes with visual only collision to generate navmesh
These collision shapes are not used for actors movement physics simulation.
2022-08-25 00:56:03 +02:00
elsid
ab1ddc690e
Do not check getPolyHeight status
It may fail in some cases depending on a platform without obvious reason.
2022-08-24 23:30:36 +02:00
Evil Eye
4e2e5ad002 Revert format change and ensure string_view args are null-terminated 2022-08-24 23:10:05 +02:00
Evil Eye
1d21330fcc Return string_view from getGameSettingString 2022-08-24 22:16:03 +02:00
jvoisin
e0dbe976bc Merge branch 'qt_signalslot_syntax_update' into 'master'
Migrate to functor-based Qt signal-slot connection syntax

Closes #6948

See merge request OpenMW/openmw!2332
2022-08-24 19:01:35 +00:00
Evil Eye
0cded25033 Remove various string copies 2022-08-24 20:38:52 +02:00
Evil Eye
0df45a90b3 Use string_view in the remaining Class methods and push string_views closer to the MyGUI boundary 2022-08-23 22:14:27 +02:00
mpeco
aa57d04b54 functor-based Qt signal-slot syntax launcher 2022-08-23 17:14:12 -03:00
mpeco
9040209046 functor-based Qt signal-slot syntax construction set: changing visibility of certain slots for connecting on external/derived classes 2022-08-23 17:14:12 -03:00
mpeco
78700eee57 functor-based Qt signal-slot syntax construction set 2022-08-23 17:14:12 -03:00
Mat
405a5c5d25 functor-based Qt signal-slot syntax wizard 2022-08-23 17:14:11 -03:00
Evil Eye
42e59878c5 Use string_view in more animation code 2022-08-23 18:25:25 +02:00
Evil Eye
262b29ed40 Use string_view in modifyBaseInventory 2022-08-23 16:59:03 +02:00
psi29a
1f5277349c Merge branch 'span' into 'master'
Replace Misc::Span by std::span

See merge request OpenMW/openmw!2324
2022-08-22 17:34:51 +00:00
psi29a
9c24d6b390 Merge branch 'ci_starts_with' into 'master'
Replace ciCompareLen with ciStartsWith where possible

See merge request OpenMW/openmw!2325
2022-08-22 17:34:03 +00:00
psi29a
f1e95ad615 Merge branch 'scroll_indices' into 'master'
Properly transform item ID to enchantment ID

Closes #6959

See merge request OpenMW/openmw!2328
2022-08-22 17:18:15 +00:00
Evil Eye
2b9d475e50 Fix #6959 2022-08-22 17:44:49 +02:00
Evil Eye
150d1840d6 Use more string_view and const string& 2022-08-22 16:55:53 +02:00
elsid
5dc612aa54
Replace ciCompareLen with ciStartsWith where possible
`ciCompareLen(a, b, b.size()) == 0` expression is an equivalent of checking for
equality of `a` prefix with size `b.size()` with `b`.

`ciCompareLen(a, b, a.size()) == 0` is also the same thing but `a` is a prefix
`b` should start with.
2022-08-22 09:32:22 +02:00
elsid
e4a254deb7
Replace Misc::Span by std::span 2022-08-21 23:53:27 +02:00
psi29a
bf0865d03d Merge branch 'cherry-pick-0dacbaf31a5e0703c49eead6d6a977a28ec299f3' into 'master'
ActionManager::toggleMainMenu() should close PostProcessor HUD

See merge request OpenMW/openmw!2305
2022-08-21 20:16:36 +00:00
psi29a
36fbef1048 Merge branch 'apple-silicon-arm-build' into 'master'
Get build working on Apple Silicon

See merge request OpenMW/openmw!2286
2022-08-21 20:15:01 +00:00
psi29a
0889635dc7 Merge branch 'cherry-pick-31f0ef45d2bb53e0969962f23eb29350465993dd' into 'master'
Show a message if player attempts to access postprocessor hud when postprocessing is disabled.

See merge request OpenMW/openmw!2306
2022-08-21 20:13:13 +00:00
psi29a
5aa1ab2c62 Merge branch 'clean_includes' into 'master'
Cleanup includes

See merge request OpenMW/openmw!2307
2022-08-21 20:12:41 +00:00
psi29a
2a2268ea8b Merge branch 'optimize_navigator_update' into 'master'
Optimize navigator per frame update

See merge request OpenMW/openmw!2308
2022-08-21 20:12:30 +00:00
psi29a
f36e13444e Merge branch 'font_loading' into 'master'
Cleanup fonts loading

See merge request OpenMW/openmw!2309
2022-08-21 20:11:02 +00:00
psi29a
857dca058b Merge branch 'fix_memory_leak' into 'master'
Fix memory leak on cell loading

See merge request OpenMW/openmw!2318
2022-08-21 20:07:23 +00:00
psi29a
7c899364af Merge branch 'consistently_hostile' into 'master'
Clear the magic queue when unloading actors

Closes #6954

See merge request OpenMW/openmw!2317
2022-08-21 20:05:46 +00:00
psi29a
aa8eba239a Merge branch 'animation_view' into 'master'
Use string_view in animation code

See merge request OpenMW/openmw!2321
2022-08-21 20:05:00 +00:00
psi29a
a99c78c85f Merge branch 'animation_osg_ref_ptr' into 'master'
Avoid using owning raw pointer

See merge request OpenMW/openmw!2322
2022-08-21 20:04:38 +00:00
elsid
1e739ec741
Use std::unique_ptr to manage dialogs lifetime 2022-08-21 21:04:21 +02:00
elsid
838d75a2e2
Avoid using owning raw pointer 2022-08-21 21:00:29 +02:00
elsid
84944a7530
Store RefData::mBaseNode as osg::ref_ptr
Direct leak of 16197408 byte(s) in 56241 object(s) allocated from:
    #0 0x5572356d4d42 in operator new(unsigned long) (/home/elsid/dev/openmw/build/clang/asan/openmw+0xae0d42)
    #1 0x557236938196 in (anonymous namespace)::addObject(MWWorld::Ptr const&, MWWorld::World const&, std::__1::vector<ESM::RefNum, std::__1::allocator<ESM::RefNum> > const&, MWPhysics::PhysicsSystem&, MWRender::RenderingManager&) /home/elsid/dev/openmw/apps/openmw/mwworld/scene.cpp:119:42
    #2 0x55723692e51b in MWWorld::Scene::insertCell(MWWorld::CellStore&, Loading::Listener*)::$_7::operator()(MWWorld::Ptr const&) const /home/elsid/dev/openmw/apps/openmw/mwworld/scene.cpp:913:62
    #3 0x55723692e51b in void (anonymous namespace)::InsertVisitor::insert<MWWorld::Scene::insertCell(MWWorld::CellStore&, Loading::Listener*)::$_7>(MWWorld::Scene::insertCell(MWWorld::CellStore&, Loading::Listener*)::$_7&&) /home/elsid/dev/openmw/apps/openmw/mwworld/scene.cpp:230:21
    #4 0x55723692e51b in MWWorld::Scene::insertCell(MWWorld::CellStore&, Loading::Listener*) /home/elsid/dev/openmw/apps/openmw/mwworld/scene.cpp:913:23
    #5 0x55723692d451 in MWWorld::Scene::loadCell(MWWorld::CellStore*, Loading::Listener*, bool, osg::Vec3f const&) /home/elsid/dev/openmw/apps/openmw/mwworld/scene.cpp:449:9
    #6 0x5572369299f5 in MWWorld::Scene::changeCellGrid(osg::Vec3f const&, int, int, bool) /home/elsid/dev/openmw/apps/openmw/mwworld/scene.cpp:612:17
    #7 0x557236928521 in MWWorld::Scene::update(float) /home/elsid/dev/openmw/apps/openmw/mwworld/scene.cpp:315:13
    #8 0x5572368d4c98 in MWWorld::World::update(float, bool) /home/elsid/dev/openmw/apps/openmw/mwworld/worldimp.cpp:1833:22
    #9 0x557236ebbb72 in OMW::Engine::frame(float) /home/elsid/dev/openmw/apps/openmw/engine.cpp:418:25
    #10 0x557236ed250a in OMW::Engine::go() /home/elsid/dev/openmw/apps/openmw/engine.cpp:1102:14
    #11 0x557236eb621a in runApplication(int, char**) /home/elsid/dev/openmw/apps/openmw/main.cpp:228:17
    #12 0x55723774d622 in wrapApplication(int (*)(int, char**), int, char**, std::__1::basic_string<char, std::__1::char_traits<char>, std::__1::allocator<char> > const&, bool) /home/elsid/dev/openmw/components/debug/debugging.cpp:328:19
    #13 0x557236eb651f in main /home/elsid/dev/openmw/apps/openmw/main.cpp:240:12
    #14 0x7fbf58a3f2cf  (/usr/lib/libc.so.6+0x232cf) (BuildId: e637217a46491314667a7a37b2155cb07afc1a40)

Direct leak of 396288 byte(s) in 1376 object(s) allocated from:
    #0 0x5572356d4d42 in operator new(unsigned long) (/home/elsid/dev/openmw/build/clang/asan/openmw+0xae0d42)
    #1 0x557236938196 in (anonymous namespace)::addObject(MWWorld::Ptr const&, MWWorld::World const&, std::__1::vector<ESM::RefNum, std::__1::allocator<ESM::RefNum> > const&, MWPhysics::PhysicsSystem&, MWRender::RenderingManager&) /home/elsid/dev/openmw/apps/openmw/mwworld/scene.cpp:119:42
    #2 0x55723692e51b in MWWorld::Scene::insertCell(MWWorld::CellStore&, Loading::Listener*)::$_7::operator()(MWWorld::Ptr const&) const /home/elsid/dev/openmw/apps/openmw/mwworld/scene.cpp:913:62
    #3 0x55723692e51b in void (anonymous namespace)::InsertVisitor::insert<MWWorld::Scene::insertCell(MWWorld::CellStore&, Loading::Listener*)::$_7>(MWWorld::Scene::insertCell(MWWorld::CellStore&, Loading::Listener*)::$_7&&) /home/elsid/dev/openmw/apps/openmw/mwworld/scene.cpp:230:21
    #4 0x55723692e51b in MWWorld::Scene::insertCell(MWWorld::CellStore&, Loading::Listener*) /home/elsid/dev/openmw/apps/openmw/mwworld/scene.cpp:913:23
    #5 0x55723692d451 in MWWorld::Scene::loadCell(MWWorld::CellStore*, Loading::Listener*, bool, osg::Vec3f const&) /home/elsid/dev/openmw/apps/openmw/mwworld/scene.cpp:449:9
    #6 0x5572369299f5 in MWWorld::Scene::changeCellGrid(osg::Vec3f const&, int, int, bool) /home/elsid/dev/openmw/apps/openmw/mwworld/scene.cpp:612:17
    #7 0x557236936eb2 in MWWorld::Scene::changeToExteriorCell(ESM::Position const&, bool, bool) /home/elsid/dev/openmw/apps/openmw/mwworld/scene.cpp:888:9
    #8 0x55723689a5ac in MWWorld::World::changeToExteriorCell(ESM::Position const&, bool, bool) /home/elsid/dev/openmw/apps/openmw/mwworld/worldimp.cpp:1003:22
    #9 0x5572368c249d in MWWorld::World::changeToCell(ESM::CellId const&, ESM::Position const&, bool, bool) /home/elsid/dev/openmw/apps/openmw/mwworld/worldimp.cpp:1014:13
    #10 0x557236e9bbce in MWState::StateManager::loadGame(MWState::Character const*, std::__1::basic_string<char, std::__1::char_traits<char>, std::__1::allocator<char> > const&) /home/elsid/dev/openmw/apps/openmw/mwstate/statemanagerimp.cpp:545:52
    #11 0x557236e998db in MWState::StateManager::loadGame(std::__1::basic_string<char, std::__1::char_traits<char>, std::__1::allocator<char> > const&) /home/elsid/dev/openmw/apps/openmw/mwstate/statemanagerimp.cpp:377:17
    #12 0x557236ed18fb in OMW::Engine::go() /home/elsid/dev/openmw/apps/openmw/engine.cpp:1066:24
    #13 0x557236eb621a in runApplication(int, char**) /home/elsid/dev/openmw/apps/openmw/main.cpp:228:17
    #14 0x55723774d622 in wrapApplication(int (*)(int, char**), int, char**, std::__1::basic_string<char, std::__1::char_traits<char>, std::__1::allocator<char> > const&, bool) /home/elsid/dev/openmw/components/debug/debugging.cpp:328:19
    #15 0x557236eb651f in main /home/elsid/dev/openmw/apps/openmw/main.cpp:240:12
    #16 0x7fbf58a3f2cf  (/usr/lib/libc.so.6+0x232cf) (BuildId: e637217a46491314667a7a37b2155cb07afc1a40)
2022-08-21 20:58:37 +02:00
unknown
206711876d Address feedback 2022-08-21 19:43:29 +02:00
elsid
3057fa6bee
Remove redundant components/esm/records.hpp include 2022-08-21 19:08:30 +02:00
unknown
827a2f0b77 Use string_view in animation code 2022-08-21 18:53:38 +02:00
Evil Eye
443420ea60 CI compare cells 2022-08-21 14:46:13 +02:00
psi29a
5ed9764f3b Merge branch 'effect_indices' into 'master'
Preserve effect indices when applying AoE and targeted spells

Closes #6957

See merge request OpenMW/openmw!2315
2022-08-21 12:03:43 +00:00
psi29a
8ec8e733a1 Merge branch 'unique_summons' into 'master'
Mark summon effects as applied if they have spawned a creature

Closes #6955

See merge request OpenMW/openmw!2316
2022-08-21 12:02:38 +00:00
Evil Eye
afcbb3cb5e Clear the magic queue when unloading actors 2022-08-21 13:33:21 +02:00
Evil Eye
a547608289 Preserve effect indices when applying AoE and targeted spells 2022-08-21 12:44:07 +02:00
Evil Eye
8b02c17ad4 Mark summon effects as applied if they have spawned a creature 2022-08-21 12:41:45 +02:00
Andrei Kortunov
9e1ab590f1 Cleanup fonts loading 2022-08-21 13:19:04 +04:00
psi29a
4078f19c74 Merge branch 'SHADER_HOT_RELOAD' into 'master'
Shaders: Hot reload, togglable by lua debug command

See merge request OpenMW/openmw!2238
2022-08-21 09:08:27 +00:00
elsid
e1bed86d7e
Do single navigator update per frame
Primarily for crossing cell border case. Each Navigator::update call has a cost.
Doing it multiple times per frame increased frame duration on cell loading.

Call Navigator::wait only when cell has changed but do not use
Scene::hasCellChanged because it doesn't always indicates it.
2022-08-20 19:15:55 +02:00
AnyOldName3
17c1053777 Validate near and far clip distances 2022-08-20 16:14:22 +01:00
Mads Buvik Sandvei
5863790c74 Show a message if player attempts to access postprocessor hud when postprocessing is disabled 2022-08-20 16:33:33 +02:00
Mads Buvik Sandvei
642d0ad631 ActionManager::toggleMainMenu() should close PostProcessor HUD. 2022-08-20 16:32:48 +02:00
elsid
226f12528b
Remove redundant .cpp file 2022-08-19 22:06:59 +02:00
elsid
2a79a8074a
Use forward declarations 2022-08-19 22:05:15 +02:00
elsid
73f885db0e
Cleanup includes 2022-08-19 22:05:15 +02:00
elsid
b3882777ab
Cleanup opencs includes 2022-08-19 19:25:03 +02:00
elsid
bf1f4f2117
Mark private template functions defined in cpp as inline 2022-08-19 19:17:21 +02:00
psi29a
ab2931223e Merge branch 'cleanup_openmw_includes_2' into 'master'
Cleanup openmw class and mechanics includes

See merge request OpenMW/openmw!2301
2022-08-19 14:53:00 +00:00
Kindi
da4a72ab19 Sun Damage for QuasiExt 2022-08-19 14:51:52 +00:00
elsid
a66c095ec3
Cleanup openmw class and mechanics includes 2022-08-19 15:46:39 +02:00
psi29a
9761ff14f9 Merge branch 'cleanup_openmw_lua_includes' into 'master'
Cleanup openmw lua includes

See merge request OpenMW/openmw!2293
2022-08-19 13:34:07 +00:00
psi29a
7bb1856b74 Merge branch 'font_fixes' into 'master'
Font fixes

See merge request OpenMW/openmw!2297
2022-08-18 12:53:37 +00:00
Andrei Kortunov
2cd2b42e33 Improve handling of larger font size 2022-08-18 13:29:12 +04:00
Andrei Kortunov
c3d3f3140b Allow to change font settings in the launcher 2022-08-18 13:29:12 +04:00
Alexei Kotov
d458894868 Make getWeaponDrawn return 1 only when the weapon is attached (bug #4816) 2022-08-18 05:04:51 +03:00
elsid
552301c8fb
Cleanup openmw lua includes 2022-08-17 23:47:30 +02:00
psi29a
92f3b4ba82 Merge branch 'windows_save' into 'master'
[Postprocessing] Mitigate clashes with live reload and external saves on windows

See merge request OpenMW/openmw!2237
2022-08-17 21:19:14 +00:00
psi29a
1e4dd46688 Merge branch 'fontconfig' into 'master'
Allow users to decide if they need to import bitmap fonts

See merge request OpenMW/openmw!2270
2022-08-17 21:16:31 +00:00
psi29a
bf40f9b287 Merge branch 'name_view' into 'master'
Make Class::getName return string_view

See merge request OpenMW/openmw!2289
2022-08-17 20:14:27 +00:00
psi29a
4f6c97fa10 Merge branch 'cleanup_openmw_includes' into 'master'
Cleanup openmw render, physics, world, dialogue, gui, input includes

See merge request OpenMW/openmw!2291
2022-08-17 20:08:43 +00:00
Andrei Kortunov
43f552f48f Allow users to decide if they need to import bitmap fonts 2022-08-17 22:12:15 +04:00
Alexei Kotov
aee8150d65 Autoresize table subview columns (bug #6939)
Use the contents of the first 500 records, clamp the width to [100, 300]
2022-08-17 19:58:39 +03:00
elsid
5498c169e3
Cleanup openmw render, physics, world, dialogue, gui, input includes 2022-08-17 18:45:52 +02:00
Andrew Dunn
a61237f265 Cleaned up macOS FFmpeg framework linking
I'm not sure why but CoreMedia, VideoToolbox, and AudioToolbox aren't
being found by find_library, so I've converted framework imports to a
standard link option. I really don't think this will be an issue given
that this change will only ever apply to Apple platforms.
2022-08-18 00:22:46 +10:00
psi29a
5b9acd0bb9 Merge branch 'esmstore-fixes' into 'master'
Some ESMStore fixes

See merge request OpenMW/openmw!2279
2022-08-17 14:10:54 +00:00
Andrew Dunn
808a2e587a Merge commit '5ee4ce1232b0f334f29dd702f811c58dccf5c00d' into apple-silicon-arm-build 2022-08-17 23:45:51 +10:00
psi29a
6346ffca72 Merge branch 'cleanup_components_includes' into 'master'
Cleanup components includes

See merge request OpenMW/openmw!2287
2022-08-17 07:50:02 +00:00
Evil Eye
4ff12d8945 Make Class::getName return string_view 2022-08-16 21:15:03 +02:00
elsid
274afbc7a0
Add missing include 2022-08-16 20:06:25 +02:00
elsid
cc8c7002ea
Cleanup components includes 2022-08-16 19:14:04 +02:00
Andrew Dunn
1d7d3d5765 Get build working on Apple Silicon
Will validate issues with Intel OSX later
2022-08-17 02:18:48 +10:00
psi29a
b382e92953 Merge branch 'please_dont_copy_my_nfts' into 'master'
Prevent various values from being copied

See merge request OpenMW/openmw!2267
2022-08-16 08:36:34 +00:00
psi29a
1f25f430d6 Merge branch 'swimhack' into 'master'
Remove 0.43.0 death animation backward compatibility hack (#5977)

Closes #5977

See merge request OpenMW/openmw!2274
2022-08-16 07:40:13 +00:00
psi29a
1d270e1683 Merge branch 'levelincrease' into 'master'
Update both instances of level detail text

See merge request OpenMW/openmw!2282
2022-08-16 07:17:04 +00:00
psi29a
823b8ebc22 Merge branch 'cleanup_detournavigator_includes' into 'master'
Cleanup detournavigator includes

See merge request OpenMW/openmw!2281
2022-08-16 07:16:01 +00:00
Alexei Kotov
a4427235df Update both instances of level detail text 2022-08-16 01:43:28 +03:00
Alexei Kotov
1ce162a95c Correct follow animation attack strength dependence 2022-08-15 22:08:59 +03:00
elsid
b1fb42a28c
Cleanup detournavigator includes 2022-08-15 19:46:10 +02:00
ζeh Matt
cdcf1393fc
Fix increment of dynamic id when player is inserted 2022-08-15 17:06:01 +03:00
ζeh Matt
6abb96250f
Fix using the wrong id for insertStatic 2022-08-15 17:04:37 +03:00
psi29a
6756f4397e Merge branch 'aidisplay' into 'master'
Fix display for some package settings

See merge request OpenMW/openmw!2271
2022-08-15 12:32:30 +00:00
Alexei Kotov
c857346f7b Remove 0.43.0 death animation backward compatibility hack (#5977) 2022-08-15 14:58:01 +03:00
psi29a
be947bfcf6 Merge branch 'hackercenturions' into 'master'
Override non-biped follow animation by movement

See merge request OpenMW/openmw!2276
2022-08-15 07:58:28 +00:00
Alexei Kotov
6b07acbbae Override non-biped follow animation by movement 2022-08-15 04:14:57 +03:00
Alexei Kotov
ff5a042f5b Remove cooldown for ranged back up (bug #5129) 2022-08-15 03:51:16 +03:00
Alexei Kotov
e537f2b6f3 Fix display for some package settings 2022-08-14 19:51:43 +03:00
Evil Eye
eaa108d25d Return string_view from SoundId methods 2022-08-14 14:39:58 +02:00
Evil Eye
4e9335f10a Fix include 2022-08-13 11:15:12 +02:00
Alexei Kotov
7f3d2c18e1 Evaluate melee hits on weapon release (bug #5057) 2022-08-13 01:15:42 +03:00
Alexei Kotov
6c05192afa Fix swish sound volume and pitch (bug #5057) 2022-08-13 01:15:41 +03:00
Evil Eye
2deec591cd Use heterogenous maps for scripts 2022-08-12 20:56:50 +02:00
Evil Eye
51938f9ef7 Use string_view in Interpreter::Context 2022-08-12 19:42:35 +02:00
Evil Eye
4eb6c48285 Avoid copying in InputManager 2022-08-12 18:42:12 +02:00
florent.teppe
decfbc5387 Fix threading issues 2022-08-12 18:37:19 +02:00
psi29a
8e7ddc7c0d Merge branch 'attackattackattack' into 'master'
Character controller, round 8: rewrite attack animation logic (bug #4127)

Closes #4127

See merge request OpenMW/openmw!2263
2022-08-12 15:17:51 +00:00
Evil Eye
685906afdf Make getScript return string_view 2022-08-11 22:51:55 +02:00
Alexei Kotov
3e34d5e9f2 Rewrite attack animation logic (bug #4127) 2022-08-11 15:55:26 +03:00
psi29a
18dbf722eb Merge branch 'store_view' into 'master'
Allow string_view lookups in MWWorld::Store

See merge request OpenMW/openmw!2010
2022-08-10 22:29:18 +00:00
elsid
bd91ced754
Move weapon types definition to .cpp file
Use template and switch instead of std::map to make sure all types are handled
and there is no lookup for a default value.
2022-08-10 20:41:04 +02:00
Alexei Kotov
bd7ddada7b Cancel stagger when random attack animations end 2022-08-10 12:59:41 +03:00
Alexei Kotov
af12736baf Cancel stagger and attack animations simultaneously 2022-08-10 12:53:32 +03:00
psi29a
10ee0e6e1b Merge branch 'sheerheartattackhasnoweaknesses' into 'master'
Animation regression fixes

See merge request OpenMW/openmw!2255
2022-08-10 07:55:01 +00:00
psi29a
b551e69b6f #5534 remove OSG 3.4 support and require at least 3.6.5 support 2022-08-09 21:07:28 +00:00
Alexei Kotov
083fda357b Fix creature attack swish pitch and invisibility break 2022-08-09 23:03:53 +03:00
Evil Eye
de51525c76 Allow string_view lookups in MWWorld::Store and get some use out of that 2022-08-09 20:43:14 +02:00
psi29a
bb9884c024 Merge branch 'split_stringops' into 'master'
Split components/misc/stringops.hpp into multiple headers

See merge request OpenMW/openmw!2233
2022-08-09 18:06:40 +00:00
Alexei Kotov
c4881c8613 Move weapon equip sound logic to weapon equip animation logic 2022-08-09 15:46:24 +03:00
Alexei Kotov
9f39f6d48e Streamline attack body pitching 2022-08-09 14:53:02 +03:00
Alexei Kotov
2b167317da Clean up updateWeaponState inventory block 2022-08-09 14:34:49 +03:00
Alexei Kotov
1b3baa812a Streamline hit/follow animation key construction 2022-08-09 14:34:49 +03:00
Alexei Kotov
2e112847be Further updateWeaponState cleanup 2022-08-09 14:10:46 +03:00
Alexei Kotov
ea78e904a9 Merge inventory blocks in updateWeaponState 2022-08-09 14:00:16 +03:00
florent teppe
baadc06e98 Merge branch 'master' into 'SHADER_HOT_RELOAD'
# Conflicts:
#   apps/openmw/mwrender/postprocessor.hpp
2022-08-09 09:26:55 +00:00
Alexei Kotov
ad62f5cda3 Move werewolf/ranged weapon swish logic to playSwishSound 2022-08-08 22:22:34 +03:00
Alexei Kotov
09141388ad Detangle attack start, knockdown attack cancel and on-going wind-up logic 2022-08-08 22:22:34 +03:00
Alexei Kotov
8f280c521c Play pick/probe animation in attack start animation logic 2022-08-08 22:22:32 +03:00
Alexei Kotov
a4b5bfc051 Don't cancel the attack prematurely after running out of ammo 2022-08-08 22:19:51 +03:00
Alexei Kotov
d280a29b18 Re-enable lower body crossbow animation playback 2022-08-08 20:45:29 +03:00
Alexei Kotov
ac892f2bfd Clean up updateWeaponState() 2022-08-08 20:45:29 +03:00
Alexei Kotov
e5ef9f1464 Improve upper body character state naming 2022-08-08 19:46:46 +03:00
psi29a
69654b6697 Merge branch 'revert_active' into 'master'
Revert traversal mode to default

See merge request OpenMW/openmw!2249
2022-08-07 16:23:19 +00:00
psi29a
6ee20835fc Merge branch 'main_pp' into 'master'
[Postprocessing] Remove default shader and simplify pipeline

Closes #6920

See merge request OpenMW/openmw!2248
2022-08-07 14:50:08 +00:00
cody glassman
ac4b29be08 cleanup default shaders and remove confusing main shader 2022-08-07 06:42:48 -07:00
psi29a
e75d3285cf Merge branch 'paged_refs_vector' into 'master'
Use std::vector to store paged ref nums

See merge request OpenMW/openmw!2245
2022-08-07 13:35:54 +00:00
florent.teppe
df69fc7659 Post processing shaders now use the same lua commands, no more launcher option to enable live reload 2022-08-07 00:19:19 +02:00
cody glassman
c770c462e4 revert traversal nodes, discovered to break some NIFs with UV controllers 2022-08-06 11:39:23 -07:00
Alexei Kotov
0fd817150e Merge branch 'ordinator_farming_restored' into 'master'
Save state for disposed actors if they can respawn

Closes #6923

See merge request OpenMW/openmw!2232
2022-08-06 11:03:06 +00:00
Alexei Kotov
263a955290 Merge branch 'coverity' into 'master'
Avoid possible null dereference

See merge request OpenMW/openmw!2243
2022-08-06 10:53:38 +00:00
Andrei Kortunov
7dd668bf12 Allow mouse scrolling in the race preview widget (feature 6925) 2022-08-06 11:25:27 +04:00
elsid
dffb12ac05
Use std::vector to store paged ref nums 2022-08-06 02:11:58 +02:00
Andrei Kortunov
8812705838 Avoid possible null dereference - throw an exception instead 2022-08-05 20:26:27 +04:00
Alexei Kotov
86a4d530c4 Merge branch 'luaprofiler' into 'master'
Implementing profiler stats for LuaManager::synchronizedUpdate

See merge request OpenMW/openmw!2215
2022-08-05 16:19:57 +00:00
Christian Haro
19a08d19d6 Implementing profiler stats for LuaManager::synchronizedUpdate 2022-08-05 16:19:57 +00:00
psi29a
00f8c9760a Merge branch 'fixed_string_tests' into 'master'
Replace deprecated std::is_pod

See merge request OpenMW/openmw!2239
2022-08-04 09:55:51 +00:00
psi29a
b55a511ad8 Merge branch 'idlechance' into 'master'
Fix Wander random idle chance

See merge request OpenMW/openmw!2242
2022-08-04 09:55:05 +00:00
psi29a
9c4ca98421 Merge branch 'sheathing' into 'master'
Avoid cosmetic view-mode dependent issues in shield sheathing

Closes #6845

See merge request OpenMW/openmw!2241
2022-08-04 09:54:43 +00:00
Alexei Kotov
19dc4cda9b Avoid cosmetic view-mode dependent issues in shield sheathing 2022-08-04 05:33:54 +03:00
elsid
8e4f6fc4e4
Use FetchContent to get googletest 2022-08-04 01:12:11 +02:00
glassmancody.info
0f9a7594bb wait a brief moment before reading a file marked as modified 2022-08-03 15:48:58 -07:00
florent.teppe
fc8838c7dd Renamed lua binding, and use action to avoid concurrency issue 2022-08-03 23:05:35 +02:00
elsid
f99ed6f1db
Split components/misc/stringops.hpp into multiple headers
Replace all ciEqual overloads with one having std::string_view as argument.
2022-08-03 22:06:24 +02:00
elsid
da0a1ac9ba
Do compile time checks in compile time instead of tests 2022-08-03 21:47:00 +02:00
elsid
c42c0dcbc9
Replace deprecated std::is_pod
apps/openmw_test_suite/esm/test_fixed_string.cpp:99:23: warning: ‘template<class _Tp> struct std::is_pod’ is deprecated: use is_standard_layout && is_trivial instead [-Wdeprecated-declarations]
   99 |      ASSERT_TRUE(std::is_pod<ESM::NAME>::value);
      |                       ^~~~~~
2022-08-03 21:47:00 +02:00
florent.teppe
6b38d62223 Added lua bindings to toggle hot reload (disabled by default) or to trigger a reload 2022-08-03 19:56:19 +02:00
florent.teppe
8d194a1601 Shaders: rudimentary hot reloader on shaders
every frame we poll the files and check if they are older or newer than the last test, if they are newer we find all the shader that included that file and update them
2022-08-03 19:12:45 +02:00
glassmancody.info
5d6a26c10f dont ignore tested objects in postpass 2022-08-03 07:55:56 -07:00
elsid
228a0dc723
Avoid redundant lowerCase call 2022-08-03 00:19:16 +02:00
elsid
ba69146ced
Use std::string_view to avoid redundant std::string construction 2022-08-03 00:18:55 +02:00
Evil Eye
1248bdc816 Save state for disposed actors if they can respawn 2022-08-02 19:33:27 +02:00
psi29a
caf971b979 Merge branch 'invis' into 'master'
Restore invisibility early-out in combat engagement

See merge request OpenMW/openmw!2229
2022-08-02 13:26:27 +00:00
Alexei Kotov
b4f743ad60 Fix Wander idle chance 2022-08-02 15:55:29 +03:00
Alexei Kotov
acfff6b25e Restore invisibility early-out in combat engagement 2022-08-01 15:11:18 +03:00
psi29a
454684bad3 Merge branch 'custom_actor_collision_shape_type' into 'master'
Support cylinder and rotating box collision shape types for actors (#6138)

Closes #6138

See merge request OpenMW/openmw!2043
2022-08-01 11:00:23 +00:00
Alexei Kotov
aa5fcc6649 Don't center spell and enchanted item effect lists (bug #4310) 2022-08-01 11:12:06 +03:00
psi29a
861f1d5303 Merge branch 'pleaseshutupyoustupiddoor' into 'master'
Don't stop playing sounds attached to removed objects (bug #6896)

Closes #6896

See merge request OpenMW/openmw!2221
2022-08-01 08:05:27 +00:00
psi29a
77f4ea7d7c Merge branch 'titleofthemovie' into 'master'
Prevent Movies_Morrowind_Logo video from pausing sounds (bugs #6049, #6109)

Closes #6109 and #6049

See merge request OpenMW/openmw!2223
2022-08-01 08:00:01 +00:00
psi29a
6f9c3c111e Merge branch 'inertia' into 'master'
Discard momentum upon player's teleportation (bug #6545)

Closes #6545

See merge request OpenMW/openmw!2226
2022-08-01 07:48:26 +00:00
psi29a
881a784bcf Merge branch 'transparent_fix' into 'master'
[Postprocessing] Force enable depth writes in transparent post-pass

See merge request OpenMW/openmw!2214
2022-08-01 06:24:46 +00:00
Alexei Kotov
bccdefd63f Discard momentum upon teleportation (bug #6545) 2022-08-01 07:59:14 +03:00
Alexei Kotov
2126cedb7d Prevent Movies_Morrowind_Logo video from pausing sounds (bug #6049)
Fix custom decoder tracks update (bug #6109)
2022-08-01 05:55:09 +03:00
Alexei Kotov
f9d41fcfe8 Don't stop playing sounds attached to removed objects (bug #6896) 2022-08-01 04:03:00 +03:00
Petr Mikheev
9a4df75f3c Merge branch 'luaIngredient' into 'master'
Lua Bindings for Ingredient Records

See merge request OpenMW/openmw!2205
2022-07-31 20:31:29 +00:00
Christian Haro
86bb3195a0 Lua Bindings for Ingredient Records 2022-07-31 20:31:29 +00:00
psi29a
9ba3ab2be9 Merge branch 'post_fog' into 'master'
[Postprocessing]  API to work with fog

See merge request OpenMW/openmw!2212
2022-07-31 17:33:08 +00:00
psi29a
1029114172 Merge branch 'water_level' into 'master'
[Postprocessing] Improve water level handling

See merge request OpenMW/openmw!2217
2022-07-31 17:32:45 +00:00
psi29a
42db39e281 Merge branch 'esscamera' into 'master'
essimporter: Recover player's pitch from PCDT (bug #6818)

Closes #6818

See merge request OpenMW/openmw!2210
2022-07-31 17:31:11 +00:00
Alexei Kotov
0b1e6a2b59 Fix pipeline errors 2022-07-31 14:43:57 +03:00
psi29a
a41c9240d9 Merge branch 'wallflower_breakdancing' into 'master'
Break invisibility before applying CE enchantments

Closes #6913

See merge request OpenMW/openmw!2218
2022-07-31 09:49:14 +00:00
psi29a
e3f04794e3 Merge branch 'spellcasting' into 'master'
Fix spellcasting state getting stuck due to premature attack attempts

Closes #6917

See merge request OpenMW/openmw!2216
2022-07-31 08:14:31 +00:00
psi29a
7236135631 Merge branch 'esscellrefs' into 'master'
essimporter: fix doubled actors

See merge request OpenMW/openmw!2213
2022-07-31 08:12:22 +00:00
psi29a
015a5c6b93 Merge branch 'essskills' into 'master'
essimporter: fix doubled stats

See merge request OpenMW/openmw!2211
2022-07-31 08:11:58 +00:00
Evil Eye
6196e777da Break invisibility before applying CE enchantments 2022-07-31 09:48:01 +02:00
Andrei Kortunov
5bfca57835 Add a way to check if water is enabled in post processing shaders 2022-07-31 10:33:18 +04:00
Alexei Kotov
7a6e984e90 Fix spellcasting state getting stuck due to premature attack attempts 2022-07-31 09:05:35 +03:00
glassmancody.info
066185fbcf override depth write flag from object paging in transparent post-pass 2022-07-30 14:37:49 -07:00
Andrei Kortunov
888f4d2ac1 Add a post processing API to work with fog 2022-07-30 21:44:18 +04:00
Alexei Kotov
9f49682d01 essimporter: refactor ESSImport::CellRef and fix doubled actors 2022-07-30 19:30:32 +03:00
Alexei Kotov
c7676a9de6 essimporter: fix doubled stats 2022-07-30 16:48:14 +03:00
Alexei Kotov
8f9b2becde essimporter: Recover player pitch from PCDT (bug #6818) 2022-07-30 15:46:14 +03:00
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.
2022-07-30 14:28:21 +02:00
psi29a
a62b16df5d Merge branch 'delevelled' into 'master'
Editor: Decouple levelled list table columns (bug #6705)

Closes #6705

See merge request OpenMW/openmw!2209
2022-07-30 12:17:07 +00:00
psi29a
79cdc08253 Merge branch 'clean_despawn' into 'master'
Remove effects added by unloading cells

Closes #6914

See merge request OpenMW/openmw!2208
2022-07-30 10:09:36 +00:00
Alexei Kotov
0d18f76271 Editor: Decouple levelled list columns (bug #6705) 2022-07-30 12:48:29 +03:00
Evil Eye
9fc5ced9c9 Remove effects added by unloading cells 2022-07-30 10:59:27 +02:00
psi29a
f2a2880998 Merge branch 'empty_scripts_revival' into 'master'
Bring back empty script message

See merge request OpenMW/openmw!2207
2022-07-30 08:07:24 +00:00
Cody Glassman
89e0de2314 Bring back empty script message 2022-07-30 08:07:24 +00:00
psi29a
5cd4dbd9a9 Merge branch 'unrestrictedfailure' into 'master'
Spellcasting timing fixes (bug #4227)

Closes #4227

See merge request OpenMW/openmw!2201
2022-07-30 07:35:46 +00:00
psi29a
7361a1c6fd Merge branch 'awareness' into 'master'
Fix invisibility handling in awareness checks

See merge request OpenMW/openmw!2203
2022-07-30 06:41:07 +00:00
psi29a
7abcb9b0a7 Merge branch 'positioncell' into 'master'
Snap down any actor teleported with Position/PositionCell (bug #6154)

Closes #6154

See merge request OpenMW/openmw!2204
2022-07-30 06:40:38 +00:00
Alexei Kotov
1e7cbb88d2 Merge branch 'fix_initial_player_landing' into 'master'
Trace down player on initial cell loading after all cells are loaded (#6907)

Closes #6907

See merge request OpenMW/openmw!2206
2022-07-29 23:45:10 +00:00
elsid
37b0ff596c
Trace down player on initial cell loading after all cells are loaded 2022-07-29 23:16:25 +02:00
Alexei Kotov
fede5c7c02 Fix invisibility handling in awareness checks 2022-07-29 18:54:14 +03:00
Alexei Kotov
435ddcfb6b Snap down any actor teleported with Position/PositionCell (bug #6154) 2022-07-29 18:51:49 +03:00
Alexei Kotov
8005d3ca25 Rename updateState back into updateWeaponState 2022-07-29 17:22:51 +03:00
Alexei Kotov
a914d7a9b0 Spellcasting timing fixes (bug #4227)
Play spellcasting animation and VFX (but not hand VFX) if spellcasting failed due to insufficient magicka
Apply spellcasting fatigue loss when the spellcasting starts instead of when the spell is applied
2022-07-29 16:24:28 +03:00
psi29a
4f9bcfd3f5 Merge branch 'issue_6888' into 'master'
Implement Add switch for armor degradation fix. #6888

See merge request OpenMW/openmw!2184
2022-07-29 13:24:16 +00:00
Ivan Beloborodov
f960e30d01 Implement Add switch for armor degradation fix. #6888 2022-07-29 13:24:16 +00:00
Alexei Kotov
93eb470024 Break invisibility after stopping preparing the attack (bug #5976) 2022-07-29 14:01:55 +03:00
psi29a
461fdcd11b Merge branch 'mybodyisready' into 'master'
Delay any quick key use while the player isn't ready (bug #6054)

Closes #6054

See merge request OpenMW/openmw!2198
2022-07-29 09:47:08 +00:00
psi29a
4ecfc0e9ac Merge branch 'torchwood' into 'master'
Don't extinguish held light sources when they're hidden (bug #6910)

Closes #6910

See merge request OpenMW/openmw!2194
2022-07-29 09:40:48 +00:00
psi29a
48c26117da Merge branch 'stagger' into 'master'
Cancel stagger after weapon release animations (bug #6869)

Closes #6869

See merge request OpenMW/openmw!2192
2022-07-29 09:40:22 +00:00
psi29a
3db753a30c Merge branch 'invisibility' into 'master'
Don't headtrack or greet magically hidden actors (bug #5978)

Closes #5978

See merge request OpenMW/openmw!2196
2022-07-29 09:38:54 +00:00
Alexei Kotov
55f34f4f0d Delay any quick key use while the player isn't ready (bug #6054) 2022-07-29 11:29:41 +03:00
Alexei Kotov
88bd3d559a Don't headtrack or greet magically hidden actors (bug #5978) 2022-07-29 10:47:50 +03:00
Alexei Kotov
94dfcdd062 Don't extinguish held light sources when they're hidden (bug #6910) 2022-07-29 10:16:29 +03:00
Alexei Kotov
16e373f30e Make enchanted item casting use accurate aiming for 1 frame (bug #6909) 2022-07-28 19:10:53 +03:00
Alexei Kotov
a2c5161ac4 Cancel stagger animation when an attack ends (bug #6869) 2022-07-28 18:42:38 +03:00
psi29a
c54822acf9 Merge branch 'locale_menu' into 'master'
Add a way to configure locale settings in-game

See merge request OpenMW/openmw!2179
2022-07-28 07:23:55 +00:00
Andrei Kortunov
351ce94f56 Make ComboBox usage consistent 2022-07-27 13:03:34 +04:00
Andrei Kortunov
4ac3c347ad Add a None item for cases when there is no secondary localization 2022-07-27 13:03:34 +04:00
Andrei Kortunov
cf90581995 Set ComboBox value prior to interactive MessageBox 2022-07-27 13:03:34 +04:00
Andrei Kortunov
cb64f49ba1 Allow to configure locales via settings menu 2022-07-27 13:03:34 +04:00
Andrei Kortunov
8ff64ca176 Add a default way to store arrays in the settings.cfg 2022-07-27 13:03:34 +04:00
psi29a
f315afbcce Merge branch 'character_string_view' into 'master'
Use string_view in the CharacterController

See merge request OpenMW/openmw!2189
2022-07-27 08:37:02 +00:00
psi29a
59f1bcc966 Merge branch 'quickerkeys' into 'master'
Allow activating quick keys menu in menus (bug #6898)

Closes #6898

See merge request OpenMW/openmw!2178
2022-07-27 08:36:10 +00:00
Evil Eye
55134d1e31 Use string_view in the CharacterController 2022-07-26 17:23:00 +02:00
psi29a
26bd907b0b Merge branch 'hdr_quick' into 'master'
Fix auto exposure

See merge request OpenMW/openmw!2174
2022-07-26 15:13:22 +00:00
Alexei Kotov
45a94bdf32 Merge branch 'no_hugs' into 'master'
Don't allow non-bipedal actors to use non-weapon animations while moving

Closes #6868

See merge request OpenMW/openmw!2153
2022-07-26 14:48:54 +00:00
psi29a
d43e85051f Merge branch 'walkwhenyoucantride' into 'master'
Revert MR 2048

See merge request OpenMW/openmw!2175
2022-07-26 14:19:32 +00:00
psi29a
17a0063a7c Merge branch 'async_delete_animation' into 'master'
Destruct animation asynchronously when unloading a cell

See merge request OpenMW/openmw!2177
2022-07-26 13:42:43 +00:00
psi29a
bbcf7809f0 Merge branch 'gui_cleanup' into 'master'
GUI cleanup

See merge request OpenMW/openmw!2169
2022-07-26 13:39:33 +00:00
psi29a
843728aadb Merge branch 'breakingcharacter' into 'master'
Make the character controller less miserable, round 5: landing animation

See merge request OpenMW/openmw!2176
2022-07-26 07:44:42 +00:00
Alexei Kotov
f99bcd7ccf Fix local map viewing distance lower bound 2022-07-26 00:00:42 +03:00
Alexei Kotov
ae4df2e038 Only close quick keys-related modals when the menu is closed 2022-07-25 18:55:23 +03:00
Alexei Kotov
80a2ef29ad Allow activating quick keys menu in menus 2022-07-25 18:55:21 +03:00
psi29a
e2b245d3b7 Merge branch 'issue_6901' into 'master'
Fix Morrowind.exe soul gem usage discrepancy #6901

See merge request OpenMW/openmw!2181
2022-07-25 09:39:42 +00:00
psi29a
4e1b5f9761 Merge branch 'sky_fix' into 'master'
Fix sky blending when sky is toggled

See merge request OpenMW/openmw!2185
2022-07-25 08:52:30 +00:00
glassmancody.info
299735ba4d fix sky rtt traversing sky when sky disabled 2022-07-24 19:35:37 -07:00
myrix
782cb7699d use std::string, no unlocalized message, show soul gem id 2022-07-25 02:56:25 +03:00
myrix
3698d96b46 use ciCompareLen, move checks to Miscellaneous::use and ActionSoulgem 2022-07-25 01:47:10 +03:00
myrix
8817f802cb message when using empty soul gems, using preferentially filled ones with equip command 2022-07-24 23:02:26 +03:00
elsid
0614b82452
Restore UnrefQueue to destruct animation asynchronously 2022-07-24 21:08:43 +02:00
elsid
1e7989c5e5
Remove animation objects from scene outside destructor 2022-07-24 21:08:27 +02:00
unknown
95a074b8aa Shorten diff 2022-07-24 20:43:05 +02:00
Alexei Kotov
578b58ca14 Properly handle negative count RemoveItem (bug #6895) 2022-07-24 20:15:44 +03:00
Alexei Kotov
510d1d76d7 Fix applying of falling damage 2022-07-24 19:08:54 +03:00
elsid
34fd8abf5f
Move Animation::getPtr definitions to header 2022-07-24 17:29:27 +02:00
elsid
1168895bf3
Remove redundant reset calls from destructor 2022-07-24 17:29:27 +02:00
Alexei Kotov
819101144d Landing animation playback fixes
Cancel landing animation immediately after moving during the first frame of landing and due to turning animation
2022-07-24 17:24:17 +03:00
Alexei Kotov
bbb8a5e1cb Revert MR 2048 2022-07-24 00:31:57 +03:00
glassmancody.info
fd4966f77a temporary fix for auto exposure 2022-07-22 20:41:08 -07:00
psi29a
ad687c380a Merge branch 'nif' into 'master'
Move NIF implementation to cpp files

Closes #6518

See merge request OpenMW/openmw!2170
2022-07-21 16:09:33 +00:00
Andrei Kortunov
c36c28e8f9 Move NIF implementation to cpp files 2022-07-21 15:54:52 +04:00
Petr Mikheev
643e33c11a Merge branch 'lua_pathfinding_bindings' into 'master'
Add bindings for navigator utils functions (#6690)

See merge request OpenMW/openmw!2128
2022-07-20 23:52:16 +00:00
elsid
27cc901e76
Add bindings for navigator utils functions 2022-07-21 00:04:26 +02:00
elsid
a281bcaf90
Remove redundant Platform::initialize function 2022-07-20 22:49:44 +02:00
Andrei Kortunov
de58c9dff3 Get rid of obsolete osg::Geode where it is possible 2022-07-20 15:28:56 +04:00
psi29a
3b75ae7ff1 Merge branch 'terrain-include-cleanup' into 'master'
Cleanup includes in Terrain component

See merge request OpenMW/openmw!2157
2022-07-19 14:42:43 +00:00
psi29a
8da463926e Merge branch 'warnfix' into 'master'
Follow-up for MR 2112

See merge request OpenMW/openmw!2162
2022-07-18 20:57:56 +00:00
Andrei Kortunov
4e7fe5a8bd Set VFS only once 2022-07-18 23:37:41 +04:00
elsid
c197896765
Use unique_ptr for Wizard::InstallationPage members 2022-07-18 20:29:37 +02:00
psi29a
40cab76de5 Merge branch 'fonts' into 'master'
Enhance a way to setup fonts and layout files

See merge request OpenMW/openmw!2112
2022-07-18 17:36:31 +00:00
ζeh Matt
ddf43ec42f
Move structs into separate headers, cleanup includes, cleanup forwarders 2022-07-18 19:15:03 +03:00
Andrei Kortunov
845a812ebf Drop fonts export - users are supposed to use TrueType fonts or mods with legacy format 2022-07-18 10:40:03 +04:00
Andrei Kortunov
5bc5c1bb0c Use our fonts as a fallback 2022-07-18 09:57:20 +04:00
psi29a
79cc55b2a3 Merge branch 'rename-drawstate' into 'master'
Rename DrawState_ to DrawState and use enum class

See merge request OpenMW/openmw!2151
2022-07-17 20:24:50 +00:00
Evil Eye
4e65829cec Don't allow non-bipedal actors to use non-weapon animations while moving 2022-07-17 21:47:50 +02:00
Andrei Kortunov
c47a48e25d Inject layout files to VFS 2022-07-17 22:01:48 +04:00
Andrei Kortunov
2630bc21dd Allow to override MyGUI layout 2022-07-17 22:01:48 +04:00
Andrei Kortunov
4ddba5142e Introduce font mappings 2022-07-17 22:01:48 +04:00
Andrei Kortunov
dd04bfccfb Load fonts 2022-07-17 22:01:48 +04:00
Evil Eye
3967509cdd Use meaningful names instead of pretending we don't know what snow is 2022-07-17 19:54:59 +02:00
ζeh Matt
841fd9618f
Rename DrawState_ to DrawState and use enum class 2022-07-17 20:50:26 +03:00
elsid
c040da36de
Use std::unique_ptr to manage lifetime for InputManager members 2022-07-17 14:13:21 +02:00
elsid
6c8ed4d19c
Move Files::IStreamPtr alias to a separate header
To avoid transitive include of Windows.h all over the engine.
2022-07-17 11:35:39 +02:00
psi29a
06db2446b1 Merge branch 'cleanup_aistate' into 'master'
Cleanup MWMechanics::AiState

See merge request OpenMW/openmw!2141
2022-07-17 09:13:04 +00:00
psi29a
2a967725d4 Merge branch 'aisetting' into 'master'
Move AiSetting out of MWMechanics::CreatureStats

See merge request OpenMW/openmw!2140
2022-07-17 09:11:03 +00:00
elsid
b8937a493a
Avoid manual memory management for MWMechanics::DerivedClassStorage 2022-07-16 17:13:16 +02:00
elsid
d2b7253c7f
Use forward declarations instead of including aistate.hpp 2022-07-16 17:13:16 +02:00
elsid
f5c2e09df9
Move AiTemporaryBase to a separate header 2022-07-16 17:13:16 +02:00
elsid
e11fbc10b1
Remove unused member functions from MWMechanics::DerivedClassStorage 2022-07-16 17:13:16 +02:00
elsid
49f8445f87
Move AiSetting out of MWMechanics::CreatureStats
To replace creaturestats.hpp include in mwworld/class.hpp with forward
declaration reducing total size of preprocessed code.
2022-07-16 16:43:33 +02:00
elsid
9398e97600
Avoid manual memory management for VFS archives 2022-07-16 15:30:14 +02:00
Evil Eye
1a5a526b15 Remove unecessary casts and prevent nullptr dereference in getWalkSpeed 2022-07-13 21:17:11 +02:00
Evil Eye
ed921ad377 Fix modstat for negative numbers 2022-07-12 19:59:18 +02:00
elsid
22ed6d5c1e
Use unsigned to define number of threads 2022-07-12 15:19:52 +02:00
elsid
8c3c65fe9f
Use variant and optional to implement Maybe*Locks
To avoid calling lock and unlock on the mutex. User-defined destructor is no
more needed.
2022-07-12 15:19:52 +02:00
psi29a
bcaeb579c3 Merge branch 'modified_stats' into 'master'
Calculate the modified property based on cached values

See merge request OpenMW/openmw!2121
2022-07-12 13:03:54 +00:00
psi29a
0eb674ec84 Merge branch 'settings_fix' into 'master'
Refactor usage of settings storage in the launcher and editor

See merge request OpenMW/openmw!2123
2022-07-12 13:00:52 +00:00
psi29a
a8ec69045c Merge branch 'coverity' into 'master'
Coverity fixes

See merge request OpenMW/openmw!2125
2022-07-12 12:59:00 +00:00
Andrei Kortunov
4b257e496e Use static settings map for launcher and editor - the Settings::Manager has a static data anyway 2022-07-12 14:56:20 +04:00
Andrei Kortunov
a5b0ef0912 Avoid possible null dereference 2022-07-12 13:43:47 +04:00
Andrei Kortunov
42b9a6daaf Do not use an invalid iterator 2022-07-12 12:45:11 +04:00
psi29a
54db3a97bb Merge branch 'multiview-refactor' into 'master'
[Multiview] refactoring

See merge request OpenMW/openmw!2122
2022-07-12 08:44:43 +00:00
Petr Mikheev
9fbcc5df5e Merge branch 'localization' into 'master'
Use Lua's YAML-based localization for MyGUI

See merge request OpenMW/openmw!2099
2022-07-12 08:13:33 +00:00
Andrei Kortunov
ccbb5e03fb Use YAML files to translate MyGUI's localization tags 2022-07-12 08:20:40 +04:00
Mads Buvik Sandvei
b277fa48c7 Refactor multiview to avoid littering OSG_HAS_MULTIVIEW and multiview-related uniforms around the code, keep them all in multiview.cpp. 2022-07-11 17:27:05 +02:00
Evil Eye
011a822408 Calculate the modified property based on cached values 2022-07-11 16:40:06 +02:00
psi29a
aaaeed572a Merge branch 'fix_6841' into 'master'
Treat empty `RootCollisionNode` in NIF as NC flag and generate VisualOnly collision shape

Closes #6841

See merge request OpenMW/openmw!2084
2022-07-11 08:31:59 +00:00
Cody Glassman
24749b066c Add sky blending to launcher 2022-07-11 00:26:22 +00:00
elsid
9cda505ef3
Add missing save for a setting in launcher 2022-07-10 22:48:25 +02:00
Petr Mikheev
8b8c304953 Treat empty RootCollisionNode in NIF as NCC flag and generate CameraOnly collision shape 2022-07-10 00:46:11 +02:00
psi29a
98f839982e Merge branch 'refactor_actors' into 'master'
Refactor MWMechanics::Actors

See merge request OpenMW/openmw!2094
2022-07-07 17:56:09 +00:00
Evil Eye
e42d63f4a4 Don't try to start combat with oneself and don't tell the player what to do 2022-07-06 19:12:36 +02:00
psi29a
1ef8ca1f27 Merge branch 'fix_tidy_warnings' into 'master'
Fix several Clang-Tidy warnings

See merge request OpenMW/openmw!2107
2022-07-06 13:47:59 +00:00
elsid
520738277a
Support google benchmark v1.6.1 2022-07-06 15:06:59 +02:00
elsid
bd7f56ddb4
Don't rely on virtual dispatch in constructor
apps/openmw/mwrender/animation.cpp:1841:60: warning: Call to virtual method 'ObjectAnimation::canBeHarvested' during construction bypasses virtual dispatch [clang-analyzer-optin.cplusplus.VirtualCall]
        if (ptr.getRefData().getCustomData() != nullptr && canBeHarvested())
                                                           ^~~~~~~~~~~~~~~~

apps/openmw/mwrender/bulletdebugdraw.cpp:33:5: warning: Call to virtual method 'DebugDrawer::setDebugMode' during construction bypasses virtual dispatch [clang-analyzer-optin.cplusplus.VirtualCall]
    setDebugMode(debugMode);
    ^~~~~~~~~~~~~~~~~~~~~~~

openmw/mwinput/controllermanager.cpp:63:17: warning: Call to virtual method 'ControllerManager::controllerAdded' during construction bypasses virtual dispatch [clang-analyzer-optin.cplusplus.VirtualCall]
                controllerAdded(fakeDeviceID, evt);
                ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
2022-07-06 13:52:28 +02:00
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
2022-07-06 13:52:28 +02:00
elsid
7501597813
Do not use float as loop variable
apps/opencs/view/render/instanceselectionmode.cpp:294:9: warning: Variable 'i' with floating point type 'float' should not be used as a loop counter [clang-analyzer-security.FloatLoopCounter]
        for (float i = 0.0; i <= resolution; i += 2)
        ^                   ~                ~
2022-07-06 13:52:28 +02:00
elsid
f1ded70366
Remove redundant condition
apps/openmw/mwmechanics/character.cpp:500:14: warning: redundant condition 'isRealWeapon' [bugprone-redundant-branch-condition]
        else if (isRealWeapon)
             ^~~~~~~~~~~~~~~~~
2022-07-06 13:52:25 +02:00
psi29a
95a6fa8d0c DeathKnockOut when KnockOut... 2022-07-06 10:48:22 +00:00
psi29a
9ed4d17f8a Merge branch 'hidden_marker' into 'master'
Use single implementation to check whether marker is hidden

See merge request OpenMW/openmw!2096
2022-07-06 07:30:56 +00:00
psi29a
cec707e994 No attack animation while blocking fix 2022-07-05 18:29:21 +00:00
psi29a
715b8497f9 Merge branch 'live_cell_ref' into 'master'
Use descriptive names for range elements

See merge request OpenMW/openmw!2092
2022-07-05 18:26:40 +00:00
psi29a
7470f6971d Merge branch 'TisIPickles27-test' into 'master'
[WIP] Maybe force dedicated GPU on dual-AMD machines

See merge request OpenMW/openmw!1214
2022-07-05 15:56:02 +00:00
Andrei Kortunov
38042fd7a2 Init missing variables 2022-07-05 17:47:52 +04:00
Andrei Kortunov
aed0da46a9 Check a result of dynamic_cast 2022-07-05 17:47:49 +04:00
jvoisin
f451b09f10 Merge branch 'rm_stream_include' into 'master'
Remove redundant ostream, istream, iostream and sstream includes

See merge request OpenMW/openmw!2097
2022-07-05 11:00:50 +00:00
psi29a
85a8359b36 Merge branch 'only_when_necassary' into 'master'
Conditional soft particles

See merge request OpenMW/openmw!2078
2022-07-05 10:14:32 +00:00
elsid
bef15edf0b
Remove redundant ostream, istream, iostream and sstream includes
* Replace by std::to_string and operator+ where possible.
* Move the code requiring to include <sstream> from .hpp to .cpp files.
2022-07-05 01:41:28 +02:00
elsid
20c15b30de
Move getLuaType out of MWWorld::PtrBase
This function is used only for Lua related code and don't need to be present
everywhere ptr.hpp is included.
2022-07-05 00:53:19 +02:00
elsid
4613840914
Use single implementation to check whether marker is hidden 2022-07-05 00:36:37 +02:00
elsid
c476437b6e
Mark Actors member functions as const where possible 2022-07-04 22:37:27 +02:00
elsid
ae4ec0a1d0
Convert static const to constexpr where possible 2022-07-04 22:16:38 +02:00
elsid
2ec757ab0f
Remove unnecessary member functions from Actors 2022-07-04 22:16:38 +02:00
elsid
0132b6e19c
Use range-based for loop 2022-07-04 22:16:37 +02:00
elsid
5e8df40718
Mark not changing variables as const 2022-07-04 22:16:37 +02:00
elsid
f8b8569f3b
Initialize variables on declaration 2022-07-04 21:38:26 +02:00
elsid
a05ed48a57
Move lua controls update into a separate function 2022-07-04 21:31:55 +02:00
elsid
03792eebdb
Reuse isPlayer variable instead of using operator != 2022-07-04 21:26:44 +02:00
elsid
77eaf2082f
Move head tracking update into a separate function 2022-07-04 21:26:42 +02:00
elsid
fe206c1526
Remove updateHeadTracking from member functions 2022-07-04 21:17:07 +02:00
elsid
1b117af5e1
Use descriptive names for range elements
iter does not describe the nature of the object. Range-based for loop provides
elements of the iterator range, not iterators.
2022-07-04 21:03:45 +02:00
psi29a
c9264de22a Merge branch 'warnfix' into 'master'
Suppress a GCC 11's format-overflow warning

See merge request OpenMW/openmw!2080
2022-07-04 12:08:31 +00:00
psi29a
bc3421642d Merge branch 'light' into 'master'
Fix emissive in character preview

See merge request OpenMW/openmw!2088
2022-07-04 06:56:23 +00:00
psi29a
9da84480f0 Merge branch 'misc_ui' into 'master'
Improved settings window

Closes #6780

See merge request OpenMW/openmw!2087
2022-07-04 06:55:42 +00:00
glassmancody.info
9a0e9ac4fe fix emissives in character preview 2022-07-03 18:46:22 -07:00
glassmancody.info
63d9fa55c6 settings window cleanup 2022-07-03 12:49:37 -07:00
jvoisin
498a835b77 Merge branch 'coverity' into 'master'
Fix some Coverity issues

See merge request OpenMW/openmw!2082
2022-07-03 16:29:05 +00:00
Andrei Kortunov
41a976b5f0 Suppress a GCC 11's format-overflow warning 2022-07-03 18:21:55 +04:00
Cody Glassman
051832d7ae [Lua] Set simulation time scale 2022-07-03 12:51:28 +00:00
Andrei Kortunov
14b5674d32 Init missing data members 2022-07-03 15:44:50 +04:00
Andrei Kortunov
03cdffb555 Init some missing variables 2022-07-03 15:44:50 +04:00
Andrei Kortunov
1274a229d1 Remove pointless null check 2022-07-03 15:44:50 +04:00
Andrei Kortunov
e97172bbb2 Add a check for null 2022-07-03 15:44:50 +04:00
Andrei Kortunov
aa349f2ed9 Initialize some missing variables 2022-07-03 15:44:50 +04:00
Andrei Kortunov
62f5bedef5 Remove pointless check 2022-07-03 15:44:31 +04:00
glassmancody.info
a0265ffb89 only enable soft particles when enabled in settings 2022-07-02 09:42:15 -07:00
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
2022-07-02 16:02:10 +00:00
Mads Buvik Sandvei
6dc727cf8f More stereo-postprocessing integration 2022-07-02 15:26:35 +00:00
Evil Eye
478ad07607 Only load global cfg if local wasn't found 2022-07-02 11:19:36 +02:00
elsid
e074ebde96
Fix C4389 msvc warning
'==': signed/unsigned mismatch
2022-07-01 18:47:47 +02:00
elsid
2eae3227ba
Fix C4305 msvc warning
'argument': truncation from 'double' to 'float'
2022-07-01 18:47:46 +02:00
elsid
8544aa481c
Fix C4459 msvc warning
declaration of 'navMeshVersion' hides global declaration
2022-07-01 18:47:40 +02:00
elsid
7e6c13630a Use target_precompile_headers for the most expensive headers 2022-07-01 14:05:17 +00:00
Evil Eye
c081b8cfa9 Don't load content entries from global and local configs 2022-06-30 20:57:51 +02:00
psi29a
56187ad977 Merge branch 'soften_me_up_like_one_of_your_french_meshes' into 'master'
Allow soft particle effect on any NIF

See merge request OpenMW/openmw!2015
2022-06-30 13:46:22 +00:00
glassmancody.info
b09411d396 allow soft particles on meshes and add extra data extensions 2022-06-29 18:15:12 -07:00
psi29a
451cc6a07c Merge branch 'correct_path' into 'master'
Use existing functions and objects to call correctMeshPath etc (#6837)

Closes #6837

See merge request OpenMW/openmw!2063
2022-06-29 10:22:08 +00:00
psi29a
e861491127 Merge branch 'quickfix' into 'master'
Fix a couple typos

See merge request OpenMW/openmw!2052
2022-06-29 09:22:15 +00:00
elsid
ce263af393
Use existing functions and objects to call correctMeshPath etc
Remove WindowManager wrappers.

It's not safe to use WindowManager in all places and it's not required.
Environment stores resource system providing VFS required to call these
functions. In the case of ObjectPaging it's available from the member variable.
Also ObjectPaging::createChunk may access WindowManager when it's already
destructed when exiting the game because it's destructed before CellPreloader
finishes all background jobs. Engine::mResourceSystem is destructed after all
other systems so it's safe to use it.
2022-06-29 00:58:49 +02:00
AnyOldName3
066575821b Merge branch 'fog_alpha' into 'master'
Several fixes related to sky blending

See merge request OpenMW/openmw!2046
2022-06-28 22:17:37 +00:00
psi29a
776cae4c95 Merge branch 'assert' into 'master'
Use string_view in Layout and remove dead code

See merge request OpenMW/openmw!2060
2022-06-27 20:02:20 +00:00
Petr Mikheev
d0deb37f5c Fix several issues with sky blending 2022-06-27 21:51:41 +02:00
Evil Eye
81ec7e80bb Use string_view in Layout and remove dead code 2022-06-27 19:13:17 +02:00
jvoisin
3403ea1d9e Merge branch 'FixUBOnDoubleMove' into 'master'
Avoid double move when an area with same coordinates already exists

See merge request OpenMW/openmw!2059
2022-06-27 16:28:17 +00:00
psi29a
a814d11a39 Merge branch 'move_left_shift_to_cpp' into 'master'
Move std::ostream& operator<< to .cpp

See merge request OpenMW/openmw!2058
2022-06-27 09:24:01 +00:00
elsid
1a5932a669
Move std::ostream& operator<< to .cpp 2022-06-26 22:43:53 +02:00
elsid
ffd1bd30ef
Remove redundant includes from groundcoverstore.hpp 2022-06-26 22:28:10 +02:00
Cédric Mocquillon
cbf48b4382 Avoid double move when an area with same coordinates already exists 2022-06-26 21:45:42 +02:00
elsid
fdf6e58ea3
Split apps/openmw/mwmechanics/actorutil.hpp 2022-06-26 16:42:29 +02:00
glassmancody.info
54e2e74c2a quickfix 2022-06-25 22:41:03 -07:00
elsid
10fbf170a2
Reduce number of includes for boost/program_options 2022-06-25 18:32:10 +02:00
Petr Mikheev
50b143b53f Fast fix in cellbindings.cpp 2022-06-24 23:41:11 +00:00
Petr Mikheev
377c00261a [Lua] Ability to distinguish normal interiors and quasi exteriors (like Mournhold). 2022-06-24 18:24:02 +02:00
psi29a
c3599ada2e Merge branch 'imayhaverunoutofclevernifbranchnames' into 'master'
Clean up NIF record flags/modes

See merge request OpenMW/openmw!2047
2022-06-22 21:15:14 +00:00
Evil Eye
b79c42fa77 Exclude followers in combat with their leader 2022-06-22 16:37:03 +02:00
Evil Eye
cc081c3d2d Don't add additional targets to allies that are already in combat 2022-06-22 16:36:58 +02:00
psi29a
ede09309a6 Merge branch 'groundcover_progress' into 'master'
Show groundcover loading progress

See merge request OpenMW/openmw!1978
2022-06-22 13:02:22 +00:00
psi29a
e50c1dbcb1 Merge branch 'slaughteredslaughterfish' into 'master'
Avoid assigning idle animations to non-actors (bug #5371)

Closes #5371

See merge request OpenMW/openmw!2048
2022-06-22 12:38:15 +00:00
psi29a
e2ae381a6c Merge branch 'lua_worker_join' into 'master'
Correctly terminate LuaWorker if the game is being terminated due to an unhanded exception.

See merge request OpenMW/openmw!2044
2022-06-22 12:35:21 +00:00
Alexei Kotov
fbb0004aae Avoid assigning idle animations to non-actors (bug #5371) 2022-06-22 03:53:39 +03:00
Alexei Kotov
e673f9fa76 Clean up NIF flags 2022-06-22 01:58:16 +03:00
Petr Mikheev
8123e41a75 Fix #6824 2022-06-21 21:11:15 +02:00
Petr Mikheev
241b414aa6 Correctly terminate LuaWorker if the game is being terminated due to an unhanded exception. 2022-06-21 20:56:19 +02:00
psi29a
1a478875f0 Merge branch 'navmesh_agent_bounds' into 'master'
Support different agent collision shape type for pathfinding

See merge request OpenMW/openmw!2030
2022-06-21 16:13:41 +00:00
psi29a
feef257584 Merge branch 'postprocessor-stereo' into 'master'
[Postprocessing] Stereo integration

See merge request OpenMW/openmw!1988
2022-06-21 15:55:06 +00:00
Mads Buvik Sandvei
b0e4c7e76a [Postprocessing] Stereo integration 2022-06-21 15:55:06 +00:00
psi29a
a822044199 Merge branch 'riggeoosgaext' into 'master'
custom class for osgAnimation::RigGeometry, Collada animated deforming body parts

See merge request OpenMW/openmw!1682
2022-06-21 15:27:34 +00:00
Nelsson Huotari
334c6dde0b custom class for osgAnimation::RigGeometry, Collada animated deforming body parts 2022-06-21 15:27:34 +00:00
elsid
1a12c453d6
Support different agent collision shape type for pathfinding
Actors may have different collision shapes. Currently there are axis-aligned
bounding boxes and rotating bounding boxes. With AABB it's required to use
bounding cylinder for navmesh agent to avoid providing paths where actor can't
pass. But for rotating bounding boxes cylinder with diameter equal to the front
face width should be used to not reduce of available paths. For example rats
have rotating bounding box as collision shape because of the difference between
front and side faces width.

* Add agent bounds to navmesh tile db cache key. This is required to distinguish
  tiles for agents with different bounds.
* Increase navmesh version because navmesh tile db cache key and data has changed.
* Move navmesh version to the code to avoid misconfiguration by users.
* Fix all places where wrong half extents were used for pathfinding.
2022-06-21 12:57:32 +02:00
psi29a
15c7ed774c Merge branch 'shaders_fog' into 'master'
Better fog

See merge request OpenMW/openmw!2006
2022-06-21 08:39:48 +00:00
psi29a
d2df89b013 Merge branch 'aitravelendtolerance' into 'master'
Give AITravel time to end if the actor is close to the destination (#6495)

Closes #6495

See merge request OpenMW/openmw!2036
2022-06-21 07:31:37 +00:00
Petr Mikheev
3bf18c601c Better fog 2022-06-21 02:21:20 +02:00
Bret Curtis
37a440a0ee add one include back 2022-06-20 16:26:52 +02:00
psi29a
aeed99ca2c Merge branch 'clean_qt_headers' into 'master'
Clean up Qt includes

See merge request OpenMW/openmw!2027
2022-06-20 14:05:33 +00:00
Petr Mikheev
e466a812d8 Merge branch 'lua_consume' into 'master'
Refactor consuming mechanics, improve Lua onConsume handler

See merge request OpenMW/openmw!1848
2022-06-20 12:12:50 +00:00
Alexei Kotov
bd6716d89d Give AITravel time to end if the actor is close to the destination 2022-06-20 15:07:18 +03:00
Cody Glassman
66aa546e97 [Postprocessing] Small cleanup 2022-06-20 06:58:40 +00:00
Alexei Kotov
e5e6645575 Merge branch 'more_romantic_disable' into 'master'
Enable collision for postponed objects when any object is disabled

Closes #6648

See merge request OpenMW/openmw!2035
2022-06-19 21:42:30 +00:00
Evil Eye
aa2fab8db5 Enable collision for postponed objects when any object is disabled 2022-06-19 20:16:31 +02:00
Alexei Kotov
a8e409deef Make launcher viewing distance setup more precise 2022-06-19 20:20:12 +03:00
uramer
36a1e18b6f Increment Lua API revision 2022-06-19 17:31:53 +02:00
uramer
c1f8d7c20a Make comment style consistently inconsistent 2022-06-19 17:31:18 +02:00
Alexei Kotov
3baf346200 Use numeric_limits for indefinite idle looping 2022-06-19 08:58:12 +03:00
uramer
3761e7b24e Pass a 0-count object to onConsume instead of the record id 2022-06-18 11:13:54 +02:00
uramer
c3c48f21d7 Consolidate item consumption code 2022-06-18 11:13:54 +02:00
Alexei Kotov
183378e34a Fix idle swim/sneak animation fallback again 2022-06-18 03:24:45 +03:00
jvoisin
8b9ed57348 Clean up Qt includes 2022-06-17 11:56:54 +02:00
jvoisin
5065e4e571 Merge branch '1234knockout' into 'master'
Avoid clearing the current weapon animation group if it's still going to be in use

See merge request OpenMW/openmw!2025
2022-06-17 09:53:13 +00:00
Alexei Kotov
0b38e165f7 Avoid clearing the current weapon animation group if it's still going to be in use 2022-06-17 09:53:13 +00:00
Alexei Kotov
a5d8286cf2 Reject models that don't have grass\ prefix from groundcover cache 2022-06-16 16:26:25 +03:00
psi29a
67e764a44a Merge branch 'severecharacterdisorder' into 'master'
Make the character controller less miserable, round 4: juicy stuff (bug #5592)

Closes #5592

See merge request OpenMW/openmw!2014
2022-06-15 11:42:17 +00:00
elsid
fdd84265b3
Use proper agent height and radius when render actor path
That are based on half extents used to find path over navmesh which is different
for interior and exterior cells.

Use common functions to get agent height and radius for actor path rendering and
navmesh generation.
2022-06-15 01:11:11 +02:00
Alexei Kotov
2b019864b7 Remove more legacy states 2022-06-14 13:47:16 +03:00
Alexei Kotov
30ef7ad81b Properly cancel the landing animation during movement 2022-06-14 12:50:30 +03:00
Alexei Kotov
c2ac52c82a Remove dead code 2022-06-14 12:50:30 +03:00
Alexei Kotov
61d382dc9f Set the initial IdleState to CharState_None 2022-06-14 12:50:30 +03:00
Alexei Kotov
4ce08664e9 Fix swim spellcasting stance turning fallback 2022-06-14 12:50:30 +03:00
Alexei Kotov
5dfce6205a Reset the idle animation after a movement animation ends
Fix non-biped actor idle reset
2022-06-14 12:50:30 +03:00
Alexei Kotov
1a646374b0 Always reset the idle animation after the landing animation ends 2022-06-14 12:50:30 +03:00
Alexei Kotov
69a1d8ac86 Restart idle instantly only after the hit state ends 2022-06-14 12:50:30 +03:00
Alexei Kotov
35db7b8319 Fix fallback for missing swim/sneak idle animations 2022-06-14 01:12:05 +03:00
Alexei Kotov
253de65d13 Fix knockout animation interruption/looping 2022-06-13 17:53:38 +03:00
Alexei Kotov
b8018024a6 Avoid passing weapon short group to refreshXAnims 2022-06-13 17:53:38 +03:00
Alexei Kotov
0a38c3ab78 Reset current animation states in a consistent way 2022-06-13 17:53:38 +03:00
Alexei Kotov
dd42a69ca5 Consolidate refreshIdleAnims 2022-06-13 17:53:38 +03:00
Alexei Kotov
2c3d385672 Consolidate refreshHitRecoilAnims 2022-06-13 17:53:38 +03:00
Alexei Kotov
a105ba14e4 Consolidate refreshJumpAnims 2022-06-13 12:59:18 +03:00
Alexei Kotov
ab46337c41 Rewrite handleTextKey using substring views 2022-06-13 12:28:12 +03:00
Alexei Kotov
9e6b7fed1a Consolidate refreshMovementAnims() 2022-06-13 12:13:10 +03:00
psi29a
c8eb246198 Merge branch 'no_update_useless_ugly_nodes' into 'master'
Only update active children

See merge request OpenMW/openmw!2001
2022-06-12 18:47:56 +00:00
psi29a
eac1d8599a Merge branch 'lua_record_paths' into 'master'
Correct VFS paths in Lua records

See merge request OpenMW/openmw!1853
2022-06-12 18:45:24 +00:00
psi29a
b7918282ad Merge branch 'minor_simpl_sortfilteritemodel' into 'master'
Minor simplifications in sortfilteritemmodel.cpp

See merge request OpenMW/openmw!1975
2022-06-12 18:43:50 +00:00
psi29a
33c5b192c9 Merge branch 'crossovercharacter' into 'master'
Make the character controller less miserable, round 2: state mappings

See merge request OpenMW/openmw!2003
2022-06-12 18:37:13 +00:00
jvoisin
8d56e79877 Minor simplifications in sortfilteritemmodel.cpp
- Change an if-else-if-else… spaghetti into a switch-case
- Replace a linear search in a dynamically constructed
  vector with a switch-case. Thanks elsid for the idea!
2022-06-12 18:00:43 +02:00
psi29a
bf8cc36645 Merge branch 'camera_settings' into 'master'
In-game camera settings

Closes #6715

See merge request OpenMW/openmw!1924
2022-06-12 12:47:11 +00:00
uramer
bf905fce4c Don't use WindowManager outside of UI, correct paths for new record types 2022-06-12 13:07:50 +02:00
uramer
fd7965d77f Use correctMeshPath instead of string constants 2022-06-12 11:30:29 +02:00
uramer
1fb136a417 Correct icon and mesh paths in Lua records 2022-06-12 11:30:29 +02:00
psi29a
bb0dad7c08 Update to C++20 and see if our CI can handle it. 2022-06-12 08:00:11 +00:00
Alexei Kotov
c2e637d661 Mark setAttackingOrSpell as const 2022-06-12 03:02:23 +03:00
Alexei Kotov
47f574e14b Move death state mapping out of playDeath/playRandomDeath 2022-06-12 02:58:04 +03:00
Alexei Kotov
b4e87abfe1 Clean up run-to-walk state conversion 2022-06-12 02:52:49 +03:00
Alexei Kotov
31d636ea20 Map movement animation groups with a switch 2022-06-12 02:49:13 +03:00
Petr Mikheev
5f0a7c2b16 Fix jumping when using move360 with a controller 2022-06-12 00:09:13 +02:00
Petr Mikheev
65efd6f1c2 Remove from settings.cfg camera settings that are controlled from Lua 2022-06-12 00:06:39 +02:00
Petr Mikheev
c548708a27 Remove Lua package openmw.settings 2022-06-12 00:06:39 +02:00
psi29a
f8a6001e87 Merge branch 'outofcharacter' into 'master'
Make CharacterController less miserable, round 1

See merge request OpenMW/openmw!1999
2022-06-11 18:50:06 +00:00
psi29a
9c1970dce4 Merge branch 'lua_esm' into 'master'
Advanced Lua scripts configuration in omwaddon

See merge request OpenMW/openmw!1947
2022-06-11 18:48:23 +00:00
glassmancody.info
d7425cc016 change update visitor to only traverse active children in scenegraph 2022-06-11 00:09:33 -07:00
Alexei Kotov
45e6add5f5 Optimize clearAnimQueue(true) 2022-06-11 04:54:50 +03:00
Alexei Kotov
d4d4304f1e Fix walk animation fallback replace call 2022-06-11 04:54:50 +03:00
Alexei Kotov
93068d71ea Use std::string_view whenever reasonable in CharacterController
C++ Core Guidelines SL.str.2
2022-06-11 04:54:50 +03:00
Alexei Kotov
97d4206a3d Improve CharacterController const-correctness
C++ Core Guidelines Con. 2
2022-06-11 02:08:43 +03:00
Alexei Kotov
788de7edcb Initialize most of CharacterController in-class
See C++ Core Guidelines C.48
2022-06-11 00:40:14 +03:00
ζeh Matt
9559feaa90
Fix effects not being removed from scene graph 2022-06-10 22:59:23 +03:00
psi29a
436db8c0e5 Merge branch 'ffmpeg5' into 'master'
fix hang with ffmpeg5 (ffmpeg_decoder: signal EOF/errors on readPacket)

Closes #6631

See merge request OpenMW/openmw!1941
2022-06-09 20:45:50 +00:00
Matt
4d74f8137c Use vector for EffectManager effects 2022-06-09 20:43:53 +00:00
psi29a
ee89eccb06 Merge branch 'reload_l10n' into 'master'
Console command `reloadlua` also reloads l10n used by Lua scripts

See merge request OpenMW/openmw!1984
2022-06-09 12:17:38 +00:00
psi29a
5d88b39574 Merge branch 'fix/macos' into 'master'
make use of std::filesystem::absolute as ::system_complete was dropped from spec

See merge request OpenMW/openmw!1990
2022-06-08 14:04:16 +00:00
Bret Curtis
339169b60a make use of std::filesystem::absolute as ::system_complete was dropped from spec 2022-06-08 15:35:35 +02:00
psi29a
f687827f98 Merge branch 'compile-times' into 'master'
Improve compile time a bit

See merge request OpenMW/openmw!1985
2022-06-08 12:07:30 +00:00
Dominique Martinet
c5cdb0c277 ffmpeg_decoder: signal EOF/errors on readPacket
openmw with ffmpeg 5 would hang in an infinite loop trying to read at end of
files in avformat_open_input()
avio_read() apparently now no longer handlers 0 as a return value to signal
EOF and we need ot explicitly return AVERROR_EOF; their documentation
explicitely states "For stream protocols, must never return 0 but rather
a proper AVERROR code." for avio_alloc_context's read_context.

Also fix the exception case to return AVERROR_UNKNOWN -- I assume we'd
otherwise get stuck there too, but I don't know what would trigger this
case.

Fixes #6631
2022-06-08 12:33:25 +09:00
uramer
fa72e14d92 Keep the scripts settings page open 2022-06-07 16:18:13 +02:00
ζeh Matt
952999153c
Move statics into cpp and properly guard buffer from race conditions 2022-06-07 16:59:44 +03:00
glassmancody.info
f6943f9f66 bind framebuffer when msaa enabled in transparent postpass 2022-06-06 20:52:40 -07:00
ζeh Matt
e0936b04c0
Correct the comment 2022-06-07 02:21:57 +03:00
ζeh Matt
38b6927b31
Fix missing includes 2022-06-07 02:08:50 +03:00
Petr Mikheev
1240b60a24 Console command reloadlua also reloads l10n used by Lua scripts 2022-06-06 23:56:08 +02:00
psi29a
e6fcb8bd2d Merge branch 'issue/6756' into 'master'
Create platform component for platform specific things

See merge request OpenMW/openmw!1960
2022-06-06 19:11:18 +00:00
psi29a
8bce0a1bcf Merge branch 'classy' into 'master'
Replace empty NPC class with fallback

Closes #6799

See merge request OpenMW/openmw!1982
2022-06-06 18:18:20 +00:00
ζeh Matt
d5ec959449
Create platform component for platform specific things 2022-06-06 20:45:51 +03:00
psi29a
787f8fb627 Merge branch 'launcher' into 'master'
Launcher consistency fixes

See merge request OpenMW/openmw!1983
2022-06-06 16:51:19 +00:00
psi29a
5aeee0a520 Merge branch 'threading_gone_wrong' into 'master'
[Postprocessing] Fix race condition when techniques are dirtied

See merge request OpenMW/openmw!1979
2022-06-06 16:32:35 +00:00
Petr Mikheev
f48646b3e6 Merge branch 'addrepairluabinds' into 'master'
Lua API for Repair records

See merge request OpenMW/openmw!1958
2022-06-06 16:24:54 +00:00
Kindi
aa2e724342 Lua API for Repair records 2022-06-06 16:24:54 +00:00
Alexei Kotov
d840f4e995 Launcher: Stop making redundant setting changes 2022-06-06 12:42:05 +03:00
Evil Eye
f41e46db64 Replace empty NPC class with fallback 2022-06-06 10:59:26 +02:00
elsid
f8eafe0dfd
Fix checking whether content file is master file 2022-06-06 00:57:44 +02:00
glassmancody.info
acc209c294 fix threading issue when dispatching frame dependent data 2022-06-05 15:46:25 -07:00
elsid
9c93de65be
Show groundcover loading progress 2022-06-05 22:21:12 +02:00
psi29a
c7449dc272 Merge branch 'bullet_includes' into 'master'
Clean up bullet includes

See merge request OpenMW/openmw!1974
2022-06-05 10:17:57 +00:00
Petr Mikheev
a70d5831c5 Lua scripts configuration in omwaddon 2022-06-05 01:36:39 +02:00
psi29a
58fd560ce9 Merge branch 'esm_readers_cache' into 'master'
Limit the number of simultaneously open not actively used content files (#6756)

Closes #6756

See merge request OpenMW/openmw!1966
2022-06-04 19:11:27 +00:00
psi29a
22ad2615e3 Merge branch 'mygui_includes' into 'master'
Clean up MyGUI includes

See merge request OpenMW/openmw!1972
2022-06-04 19:07:28 +00:00
jvoisin
72a6d1f69f Clean up bullet includes 2022-06-04 20:15:10 +02:00
Cody Glassman
ce49aa1202 Attach lights at origin when missing AttachLight node 2022-06-04 13:35:27 +00:00
jvoisin
0cc304e659 Clean up MyGUI includes
This should improve incremental compilation.
2022-06-04 15:26:36 +02:00
elsid
3affe9913f
Limit the number of simultaneously open not actively used content files
Use LRU cache for ESMReaders. When cache capacity is reached close least
recently used ESMReader. Remember the file name if a reader was open. Once the
reader requested again open the file if there is stored name for it. Put
released ESMReader to the back of the free items list. Close ESMReader's from
the front of the free items list.

Cached item can be used only by one client at the same time. If the same item is
requested twice exception is thrown. This should never happen in practice. If
this happens need to fix the client logic.

It's allowed to go over the capacity limit when requesting different readers.
Ideally this should never happen but there will be system error anyway
signalizing about too many open files. Need to fix client logic in this case.

All places that were using a vector of ESMReaders now using the cache. Cache is
local for each use case and there is no need for a thread safety.
2022-06-03 01:29:03 +02:00
psi29a
e78d36ff50 Merge branch 'no_input' into 'master'
[Postprocessing] Take away mouse input from headers, remove unnecessary dirty

See merge request OpenMW/openmw!1965
2022-06-02 08:57:48 +00:00
psi29a
160cbb51d2 Merge branch 'nobody-cared-who-he-was-until-he-didnt-put-on-the-mask' into 'master'
Apply Mask_RenderToTexture to local map RTT node

Closes #6784

See merge request OpenMW/openmw!1962
2022-06-02 07:14:30 +00:00
glassmancody.info
a3d95785d7 remove unecassary dirty, don't allow dividers to have mouse input 2022-06-01 22:03:58 -07:00
Mads Buvik Sandvei
6bb296723e Apply Mask_RenderToTexture to local map RTT node 2022-06-01 21:28:15 +02:00
beelzebielsk
fb5eb542ff Lua api for potion records 2022-06-01 13:19:03 +00:00
uramer
bca05d018e Merge branch 'fix_tests' into 'master'
Fix  #6771

Closes #6771

See merge request OpenMW/openmw!1925
2022-05-31 08:54:33 +00:00
Petr Mikheev
11f21c39ec Merge branch 'addmiscluabinds' into 'master'
Lua API for Miscellaneous records

See merge request OpenMW/openmw!1954
2022-05-31 08:54:08 +00:00
Kindi
638ad15af8 Lua API for Miscellaneous records 2022-05-31 08:54:07 +00:00
Cody Glassman
447b586d7d [Postprocessing] Fix a couple awkward issues with Lua API 2022-05-31 08:45:27 +00:00
AnyOldName3
feb5d5bbc2 Merge branch 'main_noboost' into 'master'
Remove boost:: from openmw/main.cpp

See merge request OpenMW/openmw!1943
2022-05-30 20:22:38 +00:00
psi29a
f7b9ab583e Merge branch 'nostring_sprintf' into 'master'
Don't pass a std::string to C's sprintf

Closes #6762

See merge request OpenMW/openmw!1950
2022-05-30 09:57:50 +00:00
Petr Mikheev
709d186b8d Put tests output files to a separate dir 2022-05-30 01:34:23 +02:00
Petr Mikheev
ab1be50b86 Merge branch 'addapparatusluabinds' into 'master'
Lua API for Apparatus records

See merge request OpenMW/openmw!1942
2022-05-29 23:03:37 +00:00
Kindi
3d0adf259b Lua API for Apparatus records 2022-05-29 23:03:36 +00:00
jvoisin
a6d46ecc75 Don't pass a std::string to C's sprintf
This should fix #6762
2022-05-29 23:27:50 +02:00
psi29a
af82140dda Merge branch 'filter_physics_actors' into 'master'
Do not perform physics simulation for actors outside processing range

See merge request OpenMW/openmw!1934
2022-05-29 19:19:35 +00:00
Evil Eye
c231c3e360 Replace new with make_unique in essimporter 2022-05-29 13:25:59 +02:00
Evil Eye
db1a372e5b Replace new with make_unique in opencs 2022-05-29 13:25:17 +02:00
Evil Eye
3c83117e99 Replace new with make_unique in openmw 2022-05-29 13:24:48 +02:00
jvoisin
d903e4b1b2 Remove boost:: from openmw/main.cpp 2022-05-28 22:51:32 +02:00
psi29a
f84be8c3f9 Merge branch 'lua-api-containers' into 'master'
Add bindings for container record

See merge request OpenMW/openmw!1932
2022-05-28 08:03:13 +00:00
elsid
bf76faeb2d
Increment iterator before fast forward
When player is located in the exterior cell AiTravel::fastForward may move
another actor into a cell outside active grid. This will remove the actor from
MWMechanics::Actors::mActors which invalidates current iterator in the
Actors::fastForwardAi loop.
2022-05-27 13:35:21 +02:00
psi29a
9d232a72d3 Merge branch 'position_to_index' into 'master'
Use free function instead of virtual MWBase::World::positionToIndex (#5336)

See merge request OpenMW/openmw!1922
2022-05-26 20:38:38 +00:00
elsid
ac5844cad2
Do not perform physics simulation for actors outside processing range
Actors with disabled collisions still have physics simulations. Assuming they
should not be processed at all instead of disabling collision add a new flag to
make them inactive.
2022-05-26 10:36:03 +02:00
adam
e2528a1562 Add docs and automagical declaration 2022-05-26 07:20:50 +00:00
adam
dddc1dc2bb Add bindings for capacity and encumbrance 2022-05-26 06:41:53 +00:00
psi29a
d74ee0f3fe Merge branch 'postprocess_hud' into 'master'
[Postprocessing] Improve HUD

See merge request OpenMW/openmw!1933
2022-05-26 06:24:36 +00:00
psi29a
389e1bd92c Merge branch 'noboost_more_more_more' into 'master'
Remove some more of boost::

See merge request OpenMW/openmw!1930
2022-05-26 06:19:40 +00:00
psi29a
31c0c0cb58 Merge branch 'fix_initial_landing' into 'master'
Do not play landing animation for actors entering to scene without a reason (#6346 + #6513)

Closes #6513 and #6346

See merge request OpenMW/openmw!1926
2022-05-26 06:15:59 +00:00
cody glassman
11845e7d9b improve layout of postprocessor hud 2022-05-25 19:07:01 -07:00
adam
aa56e40bc3 Add bindings for container record 2022-05-26 01:11:22 +00:00
jvoisin
cb226e00f9 Remove some more of boost:: 2022-05-25 21:16:26 +02:00
Petr Mikheev
29328867dc Merge branch 'moar_noboost' into 'master'
Remove even more of boost::filesystem

See merge request OpenMW/openmw!1927
2022-05-25 18:29:04 +00:00
jvoisin
4e4debb1cb Remove even more of boost::filesystem 2022-05-25 18:29:02 +00:00
Evil Eye
921a4c7bca Fix inverted logic 2022-05-25 16:49:03 +02:00
elsid
85c79d382c
Enable collisions for actor before adjusting position
Otherwise adjustPosition does not call traceDown and actor appears flying for
the first physics simulation.
2022-05-24 23:30:57 +02:00
elsid
617cd4ceb6
Make sure physics simulation does not reset flags for nonprocessed actors
Actor::getOnGround and Actor::getOnSlope is used to initialize ActorFrameData.
After a physics simulation the result is copied back. But when actor is outside
processing range, Actor::mInternalCollisionMode is false and physics simulation
does not recalculate OnGround and OnSlope flags. So the flags are always set to
false that makes actor play landing animation when they exit and then enter
actors processing range.
2022-05-24 23:25:35 +02:00
AnyOldName3
59e7f61205 Merge branch 'deboost' into 'master'
Remove boost::filesystem from a couple of files

See merge request OpenMW/openmw!1917
2022-05-24 21:18:22 +00:00
jvoisin
6feb92a9bf Remove boost::filesystem from a couple of files 2022-05-24 21:18:21 +00:00
elsid
e1110f5151 Merge branch 'noboost_bulletojbecttool' into 'master'
Remove some unused includes from bulletobjecttool

See merge request OpenMW/openmw!1912
2022-05-24 19:10:25 +00:00
Evil Eye
ec6ba3deeb Merge branch 'fix_cs_typos' into 'master'
Correct CS typo

Closes #6704

See merge request OpenMW/openmw!1920
2022-05-24 18:33:23 +00:00
elsid
639bdd5801
Use free function instead of virtual MWBase::World::positionToIndex
The virtual function does the same thing.

* Change return type to osg::Vec2i to avoid dependency on ESM3.
* Rename to positionToCellIndex to make it clear what is the index.
2022-05-24 19:31:23 +02:00
elsid
92a64b0bbd
Fix typo in navmeshtool log message 2022-05-24 19:28:48 +02:00
Michał Plichta
5ee5e8f2f7
Correct CS typo described in #6704 2022-05-24 19:24:39 +02:00
psi29a
499e688289 Merge branch 'fix_navigator_tests' into 'master'
Increase precision error for navigator tests (#6770)

Closes #6770

See merge request OpenMW/openmw!1909
2022-05-24 17:19:43 +00:00
Kindi
1b37d5d2ad Lua API for Lockpick and Probe records 2022-05-24 11:48:13 +00:00
psi29a
09757d0b87 Merge branch 'noboost_essimporter' into 'master'
Remove boost::filesystem from essimporter

See merge request OpenMW/openmw!1913
2022-05-24 07:57:37 +00:00
psi29a
0299529067 Merge branch 'remove_boost_' into 'master'
Remove dependency on boost::filesystem in bsatool and niftest CMakeLists.txt

See merge request OpenMW/openmw!1915
2022-05-24 07:56:19 +00:00
psi29a
a737b05d84 Merge branch 'faster_toLower' into 'master'
Improve the speed of toLower

See merge request OpenMW/openmw!1889
2022-05-24 07:53:01 +00:00
psi29a
14b9abbcbf Merge branch 'no_resize' into 'master'
[Postprocessing] Don't resize user defined samplers to power of 2

See merge request OpenMW/openmw!1918
2022-05-24 07:50:27 +00:00
glassmancody.info
ee6e60005b remove log spam on failures 2022-05-23 21:27:32 -07:00
jvoisin
0554afeb67 Remove boost::filesystem from navmashtool 2022-05-23 21:55:06 +02:00
jvoisin
34ae6e8221 Remove dependency on boost::filesystem in bsatool and niftest CMakeLists.txt 2022-05-23 21:52:22 +02:00
jvoisin
8a63bc0def Remove boost::filesystem from essimporter 2022-05-23 21:50:48 +02:00
jvoisin
6f5025e6fd Remove some unused includes from bulletobjecttool 2022-05-23 21:35:07 +02:00
jvoisin
998f1c960e Improve the speed of toLower
This significantly improves the speed of my fuzzer,
by something like 15%.
2022-05-23 21:24:17 +02:00
elsid
87073e26f2
Increase precision error for navigator tests 2022-05-23 17:18:00 +02:00
elsid
5b592e09e6
Log more information when navmeshtool fails on not enough space 2022-05-23 13:01:30 +02:00
cody glassman
6093cb5f2c postprocessing lua api extensions 2022-05-22 18:53:38 -07:00
elsid
6db4b78dcb
Fix playing explore music after loading the game from main menu 2022-05-23 01:08:53 +02:00
psi29a
e3f891c0b0 Merge branch 'fix_boost' into 'master'
Fix build with lld linker

See merge request OpenMW/openmw!1903
2022-05-22 20:53:57 +00:00
psi29a
f17d7fc00b Merge branch 'string_view' into 'master'
Make getStringLiteral return a string_view

See merge request OpenMW/openmw!1896
2022-05-22 20:50:04 +00:00
psi29a
392606441d Merge branch 'remove_boost_fs_bsatool' into 'master'
Remove boost::filesystem from bsatool

See merge request OpenMW/openmw!1905
2022-05-22 20:47:27 +00:00
jvoisin
472af7c164 Remove boost::filesystem from niftest 2022-05-22 18:56:14 +02:00
jvoisin
fb732d74a2 Remove boost::filesystem from bsatool 2022-05-22 18:53:10 +02:00
psi29a
8dd3e53a30 Merge branch 'string_view' into 'master'
Move a couple of files from `const std::string&` to `std::string_view`

See merge request OpenMW/openmw!1901
2022-05-22 10:45:35 +00:00
psi29a
d2a9334f39 Merge branch 'mechanics_actors_list' into 'master'
Use std::list to store mechanics actors

See merge request OpenMW/openmw!1893
2022-05-22 10:41:46 +00:00
psi29a
d40bfc9e99 Merge branch 'update_ptr' into 'master'
Avoid changing map when updating ptr

See merge request OpenMW/openmw!1894
2022-05-22 10:40:45 +00:00
psi29a
e64b8d1fbb Merge branch 'lua_real_time' into 'master'
[Lua] core.getRealTime()

See merge request OpenMW/openmw!1880
2022-05-22 10:38:53 +00:00
psi29a
5fe6f6333c Merge branch 'log_viewer' into 'master'
Initialize in-game log viewer earlier in order not to miss the beginning of the log

See merge request OpenMW/openmw!1904
2022-05-22 10:38:20 +00:00
Evil Eye
5146d9fc55 Fix 2022-05-22 09:51:08 +02:00
Evil Eye
ac78b537d2 Address feedback 2022-05-22 09:29:03 +02:00
Petr Mikheev
7f8d433775 Initialize log recorder right after initializing the logging 2022-05-22 02:47:58 +02:00
elsid
42841002b5
Remove unused dependency to Boost.Thread 2022-05-22 02:42:01 +02:00
elsid
9abfaef7a1
Use std::any instead of boost::any 2022-05-22 02:42:01 +02:00
elsid
68caff9c7b
Use unique_ptr to manage scripts context and encoder lifetime 2022-05-22 01:47:06 +02:00
jvoisin
23eccebe9e Convert esmtool from const std::string& to std::string_view 2022-05-21 21:39:26 +02:00
jvoisin
8047a2138e Merge branch 'fix_warning' into 'master'
Fix warning: -Wunused-lambda-capture

See merge request OpenMW/openmw!1899
2022-05-21 18:17:37 +00:00
elsid
5269ba6f3c Fix warning: -Wunused-lambda-capture 2022-05-21 18:17:36 +00:00
elsid
148519fe48
Destruct Stereo::Manager after World
ShadowManager access Stereo::Manager in destructor. ShadowManager owned by
RenderingManager owned by World.
2022-05-21 17:04:03 +02:00
Evil Eye
266a0634eb Add more includes 2022-05-21 12:41:56 +02:00
Evil Eye
e79f803402 Change includes 2022-05-21 10:48:32 +02:00
Cody Glassman
5fc530335b Merge branch 'refactor/postprocessor' into 'master'
Refactor PostProcessor code

See merge request OpenMW/openmw!1888
2022-05-21 06:42:05 +00:00
Matt
395de4b251 Refactor PostProcessor code 2022-05-21 06:42:05 +00:00
Evil Eye
c6ca0e78c9 Make getStringLiteral return a string_view 2022-05-21 01:21:55 +02:00
elsid
19e471741a
Use PtrBase::mRef instead of getBase for mechanics objects
getBase adds a condition and can throw an exception. Which is redundant for
MWMechanics::Objects functions.
2022-05-21 00:41:57 +02:00
elsid
1bb1053569
Make all MWMechanics::Actor functions inline 2022-05-21 00:41:56 +02:00
elsid
77c09dff39
Store CharacterController by value in MWMechanics::Actor 2022-05-21 00:41:55 +02:00
elsid
24712e2cb1
Avoid changing map when updating ptr
This is not necessary and has overhead.
2022-05-21 00:12:33 +02:00
elsid
e2c44d13f3
Use std::list to store mechanics actors
To make the order of elements deterministic. Using memory address based objects
as map key makes order of elements there nondeterministic. Later it can be
replaced with vector when there are no indirect munipulations with container
inside iteration loops.

Change map key to const MWWorld::LiveCellRefBase* to avoid erasing and inserting
elements on MWWorld::Ptr update.
2022-05-20 22:55:55 +02:00
Petr Mikheev
6a0a2eed33 [Lua] core.getRealTime() 2022-05-20 21:49:19 +02:00
uramer
70eacbbefc onObjectActive and onItemActive Lua engine handlers 2022-05-20 19:27:21 +00:00
psi29a
67421a400a Merge branch 'bookluabinds' into 'master'
Lua API for Book records

See merge request OpenMW/openmw!1886
2022-05-20 14:09:09 +00:00
psi29a
6b7c302102 Merge branch 'mechanics_objects_list' into 'master'
Use std::list to store mechanics objects

See merge request OpenMW/openmw!1881
2022-05-20 14:08:02 +00:00
kuyondo
5109777d3b remove duplication 2022-05-20 18:50:00 +08:00
elsid
ce3bba0cdc
Use std::list to store mechanics objects
To make the order of elements deterministic. Using memory address based objects
as map key makes order of elements there nondeterministic. Later it can be
replaced with vector when there are no indirect munipulations with container
inside iteration loops.

Change map key to const MWWorld::LiveCellRefBase* to avoid erasing and inserting
elements on MWWorld::Ptr update.

Store CharacterController by value instead of pointer to avoid redundant memory
allocation.
2022-05-20 00:47:10 +02:00
kuyondo
7dbccc914a no skill returns nil 2022-05-20 06:03:12 +08:00
kuyondo
8a1a838ffa update book.cpp and weapon.cpp 2022-05-20 00:39:19 +08:00
kuyondo
a26898d8ed no addtype 2022-05-19 20:18:47 +08:00
kuyondo
cad68a5566 Add lua binding for books 2022-05-19 20:02:18 +08:00
psi29a
d4e2000d5b Merge branch 'render_targets' into 'master'
Bind custom render targets per pass

See merge request OpenMW/openmw!1884
2022-05-19 11:03:02 +00:00
psi29a
33746c4b70 Merge branch 'fix_gcc_warning' into 'master'
Fix gcc warning: -Wuninitialized

See merge request OpenMW/openmw!1869
2022-05-19 11:00:32 +00:00
glassmancody.info
3d03052717 dont bind rendertargets unless we use them, otherwise texture limit will be reached quickly 2022-05-18 19:45:09 -07:00
kuyondo
93aae5e116 Add lua binding for activators 2022-05-19 04:23:22 +08:00
psi29a
b9b4f1c3c2 Merge branch 'console_log' into 'master'
In-game log viewer

See merge request OpenMW/openmw!1799
2022-05-18 07:57:59 +00:00
psi29a
d3f331793e Merge branch 'sol' into 'master'
Update sol. Replace combined sol.hpp with loose files.

See merge request OpenMW/openmw!1851
2022-05-18 07:57:32 +00:00
ζeh Matt
18f16eac4c
Refactor DetourNavigator to pass prng along, use world prng for AiWander 2022-05-17 20:37:15 +03:00
ζeh Matt
b2fab5f5ad
Use World prng for weather system as it influences actors 2022-05-17 18:22:45 +03:00
ζeh Matt
3a90bc7187
Use World prng for head/blink animations 2022-05-17 18:22:45 +03:00
ζeh Matt
cb99e8643a
Use World prng for selection of random creature spawning 2022-05-17 18:22:45 +03:00
elsid
215b46503c
Support rendering for navmesh update frequency as a heatmap
Useful when need to find tiles with high number of updates.

Add debug Lua package with new functions to toggle render mode and set navmesh
render mode.
2022-05-17 01:54:20 +02:00
elsid
98f53eca65
Fix gcc warning: -Wuninitialized
/home/elsid/dev/openmw/apps/opencs/model/world/data.cpp: In constructor ‘CSMWorld::Data::Data(ToUTF8::FromType, bool, const Files::PathContainer&, const std::vector<std::__cxx11::basic_string<char> >&, const boost::filesystem::path&)’:
/home/elsid/dev/openmw/apps/opencs/model/world/data.cpp:69:36: warning: member ‘CSMWorld::Data::mCells’ is used uninitialized [-Wuninitialized]
   69 | : mEncoder (encoding), mPathgrids (mCells), mRefs (mCells),
      |                                    ^~~~~~
2022-05-16 22:26:19 +02:00
elsid
c88d3e712d
Cleanup mwlua includes 2022-05-16 22:25:48 +02:00
psi29a
0ca9510224 Merge branch 'fix_gcc_build' into 'master'
Fix build on gcc 12.1 (#6744)

Closes #6744

See merge request OpenMW/openmw!1862
2022-05-16 20:15:09 +00:00
psi29a
3e3cb133bc Merge branch 'fix_unity_build' into 'master'
Fix unity build

See merge request OpenMW/openmw!1860
2022-05-16 20:12:17 +00:00
Petr Mikheev
cf49b46d64 Show logs in the debug window
Some part of UI code is written by @andrew-app
2022-05-16 20:50:44 +02:00
Evil Eye
2531e24ee3 Fix inverted logic 2022-05-16 18:29:16 +02:00
psi29a
f092d8da9a Merge branch 'post_malone' into 'master'
Post Processing

See merge request OpenMW/openmw!1124
2022-05-16 14:51:13 +00:00
elsid
94dc696f4f
Fix gcc build
In file included from /home/elsid/dev/openmw/apps/openmw/mwphysics/actor.hpp:7,
                 from /home/elsid/dev/openmw/apps/openmw/mwphysics/trace.cpp:9:
/home/elsid/dev/openmw/apps/openmw/mwphysics/ptrholder.hpp: In member function ‘osg::Vec3f MWPhysics::PtrHolder::velocity()’:
/home/elsid/dev/openmw/apps/openmw/mwphysics/ptrholder.hpp:42:25: error: ‘exchange’ is not a member of ‘std’
   42 |             return std::exchange(mVelocity, osg::Vec3f());
      |                         ^~~~~~~~
2022-05-16 15:59:18 +02:00
elsid
c33966c4a4
Fix unity build
In file included from /home/elsid/dev/openmw/build/clang/unity/apps/openmw/ub_mwworld.cpp:41:
/home/elsid/dev/openmw/apps/openmw/mwworld/groundcoverstore.cpp:10:9: error: no type named 'Query' in 'MWWorld::EsmLoader'; did you mean '::EsmLoader::Query'?
        EsmLoader::Query query;
        ^~~~~~~~~~~~~~~~
        ::EsmLoader::Query
/home/elsid/dev/openmw/./components/esmloader/load.hpp:23:12: note: '::EsmLoader::Query' declared here
    struct Query
           ^
2022-05-16 15:04:47 +02:00
psi29a
dd0e0fea72 Merge branch 'lua_strict_index' into 'master'
[Lua] makeStrictReadOnly for enums

See merge request OpenMW/openmw!1859
2022-05-16 10:59:20 +00:00
psi29a
65c95d97c3 Merge branch 'disable_navmeshdb_write_on_lock' into 'master'
Disable writes to navmeshdb on database is locked error

See merge request OpenMW/openmw!1837
2022-05-16 07:38:12 +00:00
Petr Mikheev
7ccbf95503 [Lua] makeStrictReadOnly for enums 2022-05-16 00:16:26 +02:00
Petr Mikheev
d16fa553c8 Fix LuaUtil::Callback 2022-05-15 21:34:48 +02:00
cody glassman
dae0914820 workarounds for gl4es 2022-05-15 10:03:58 -07:00
cody glassman
0cb63ca4e6 experimental point light bindings 2022-05-15 10:03:58 -07:00
cody glassman
04843fed6d moddable post-processing pipeline 2022-05-15 10:03:58 -07:00
Petr Mikheev
0643685ea5 [Lua] Rename onInputUpdate -> onFrame and call it even when the game is on pause (#6745) 2022-05-13 19:14:34 +02:00
uramer
95ad67eb8b Add extraRoll to the Lua camera package 2022-05-12 23:21:47 +02:00
elsid
a710cf6d10
Remove Environment cleanup
Some managers may use the environment in the destructors. Setting them to
nullptr may lead to nullptr dereference when the object is still alive and can
be accessible. But after object is destructed it's UB anyway to dereference
nullptr or a dangling pointer.
2022-05-11 23:26:39 +02:00
ζeh Matt
926cdfbe19
Use random seed specified by settings for new games 2022-05-11 16:37:16 +03:00
elsid
a75c7c49f0
Disable writes to navmeshdb on database is locked error
Simultaneously writing to sqlite3 database is not possible. Process exclusively
locks the database for this. Another process will fail to perform any request
when database is locked. Alternatively it can wait. Handling this situation
properly requires complexity that is not really needed. Users are not expected
to run multiple openmw processes simultaneously using the same navmeshdb.

Before this change running multiple openmw processes using the same navmeshdb
can lead to a crash when first transaction fails to start because there is
exception thrown and not catched.

Remove use of explicit transactions from DbWorker. Handling all possible
transaction states due to different errors brings unnecessary complexity.
Initially they were introduced to increase time between flushes to disk. This
makes sense for navmeshtool because of massive number of writes but for the
engine this is not an issue.
2022-05-09 22:54:46 +02:00
Cody Glassman
882245b935 Lua Bindings: Add view distance bindings to camera 2022-05-09 19:40:48 +00:00
psi29a
8bf5de69ad Merge branch 'rm_actors_static' into 'master'
Make MWMechanics::Actors local static variables to be members

See merge request OpenMW/openmw!1839
2022-05-09 07:31:15 +00:00
cody glassman
ad139f2f9a rename to windowed fullscreen 2022-05-08 22:56:39 -07:00
cody glassman
05901a2480 add borderless windows, deprecate fullscreen mode 2022-05-08 22:56:39 -07:00
elsid
ef64587cbf
Mark unchanging static as const 2022-05-09 00:59:51 +02:00
elsid
66c9b6c199
Make MWMechanics::Actors local static variables to be members 2022-05-09 00:59:37 +02:00
elsid
87ca575d60
List private members of MWMechanics::Actors in a single place 2022-05-09 00:55:09 +02:00
Petr Mikheev
45161d91c9 Merge branch 'lua_record_types' into 'master'
Lua API for NPC and Creature records

See merge request OpenMW/openmw!1823
2022-05-08 20:32:00 +00:00
uramer
9c5887aab6 Add NPC and Creature record bindings 2022-05-08 16:36:17 +02:00
elsid
31bd87936f
Remove redundant virtual World::adjustSky function 2022-05-08 15:41:53 +02:00
elsid
b32a787cd8
Add explicit dependency to World from Scene
To avoid redundant MWBase::Environment::get().getWorld() calls and virtual
calls.
2022-05-08 15:41:53 +02:00
elsid
9320fb50ab
Remove redundant MWBase::Environment::get().getWorld() calls 2022-05-08 15:41:53 +02:00
elsid
f03360b666
Move RenderingManager::update call to World::update
There is no need to do that in Scene::update and pass paused argument there.
2022-05-08 15:41:52 +02:00
elsid
8473336b06
Remove redundant virtual functions 2022-05-08 15:41:52 +02:00
Petr Mikheev
6a97a21fbd [Lua] Fix stupid bug in tostring for ESM::Weapon and ESM::Door 2022-05-08 13:09:02 +02:00
psi29a
408540517a Merge branch 'refactor/fCombatInvisoMult' into 'master'
Avoid looking up settings from gmst each frame

See merge request OpenMW/openmw!1771
2022-05-08 10:43:08 +00:00
psi29a
49487a17e6 Merge branch 'environment' into 'master'
Make Environment a storage of referencing pointers instead of owned

See merge request OpenMW/openmw!1830
2022-05-08 08:47:34 +00:00
psi29a
71e4e5ceec Merge branch 'lua_activate' into 'master'
[Lua] Fix the bug that object:activate() doesn't trigger mwscripts

See merge request OpenMW/openmw!1834
2022-05-08 08:30:50 +00:00
Petr Mikheev
2d1d7e644c [Lua] Fix the bug the object:activate() doesn't trigger mwscripts 2022-05-06 23:46:36 +02:00
elsid
2dc6e755b2
Remove redundant update virtual functions 2022-05-06 23:44:04 +02:00
elsid
79676aee15
Make Environment a storage of referencing pointers instead of owned
Engine controls lifetime of managers therefore it should own them. Environment
is only access provider.

This allows to avoid redundant virtual calls and also some functions from
managers base classes can be removed if they are used only by Engine.
2022-05-06 23:44:01 +02:00
Petr Mikheev
70c7f1880d [Lua] pairs and ipairs for ObjectList (resolves #6732) 2022-05-06 23:11:47 +02:00
AnyOldName3
d975e9e138 Merge branch 'position_in_radians' into 'master'
Fix copy paste error

See merge request OpenMW/openmw!1829
2022-05-05 20:57:47 +00:00
Evil Eye
bc5e43ab60 Fix copy paste error 2022-05-05 21:53:20 +02:00
jvoisin
331363d469 Merge branch 'fix_uninit' into 'master'
Fix uninitialized coverity warnings

See merge request OpenMW/openmw!1819
2022-05-05 17:35:16 +00:00
Alexei Kotov
6aaf2c33bf Merge branch 'refactor/5336-1' into 'master'
#5336 (1): Refactor World::updatePlayer in to Player::update

See merge request OpenMW/openmw!1828
2022-05-05 06:46:28 +00:00
Alexei Kotov
6857f4f7ff Merge branch 'empty_and_clear' into 'master'
Replace empty std::string assignments

See merge request OpenMW/openmw!1827
2022-05-05 06:43:30 +00:00
ζeh Matt
2bbd0ba976
#5336: Refactor World::updatePlayer in to Player::update 2022-05-05 00:57:15 +03:00
Evil Eye
a64979e25d Replace empty std::string assignments 2022-05-04 22:33:39 +02:00
Evil Eye
55d32432b9 Don't mark idle animations as bad when blocking them 2022-05-04 21:15:08 +02:00
Alexei Kotov
bbec296891 Merge branch 'we-are-anonymous-we-are-quivers-apparently' into 'master'
Don't return a random anonymous node from getArrowBone when the current weapon doesn't fire arrows.

Closes #6718

See merge request OpenMW/openmw!1822
2022-05-04 03:00:57 +00:00
uramer
03659bef86 MWUI interface (resolve https://gitlab.com/OpenMW/openmw/-/issues/6594) 2022-05-03 17:36:49 +00:00
AnyOldName3
a6c9c9d1f8 Don't return a random anonymous node from getArrowBone when the current weapon doesn't fire arrows. 2022-05-02 20:11:01 +01:00
Max Henzerling
41be5a17f4 comments from PR 2022-05-01 11:52:19 -07:00
Max Henzerling
af5b1b3083 Add option to open record editting subviews in new windows instead of exclusive docking. 2022-05-01 11:52:19 -07:00
elsid
b67a0a8f2b
Fix uninitialized coverity warnings 2022-05-01 18:36:16 +02:00
psi29a
dccbd3e980 Merge branch 'try_and_hit_me' into 'master'
Bring HitAttemptOnMe in line with HitOnMe

See merge request OpenMW/openmw!1816
2022-04-30 18:26:30 +00:00
psi29a
265fa51128 Merge branch 'respect_water_filtering' into 'master'
Simple water should respect filter settings (#5989)

Closes #5989

See merge request OpenMW/openmw!1813
2022-04-30 17:02:32 +00:00
psi29a
828f394200 Merge branch 'stacked_up' into 'master'
Make stack manipulation unconditional

Closes #6717

See merge request OpenMW/openmw!1815
2022-04-30 16:58:57 +00:00
psi29a
275bebb066 Merge branch 'Stereo-MR' into 'master'
Stereo

See merge request OpenMW/openmw!1757
2022-04-30 16:40:09 +00:00
unknown
1bc24d5120 Bring HitAttemptOnMe in line with HitOnMe 2022-04-30 18:32:10 +02:00
Evil Eye
db19700599 Make stack manipulation unconditional 2022-04-30 16:45:45 +02:00
cody glassman
ed6cd487ee allow updating filtering at runtime 2022-04-29 17:26:09 -07:00
cody glassman
13a05dbd63 simple water should respect filter settings 2022-04-29 17:01:28 -07:00
madsbuvi
79577f37de Rebase artifacts + cleaned up the remaining unnecessary exposures of stereo awareness. 2022-04-29 17:35:24 +02:00
psi29a
51024a8208 Merge branch 'issue-6706-save-the-size-of-the-options-window' into 'master'
Issue-6706 Save the size of the Options window

Closes #6706

See merge request OpenMW/openmw!1798
2022-04-29 09:56:09 +00:00
Eris Caffee
de291b0ec4 Issue-6706 Save the size of the Options window 2022-04-29 09:56:08 +00:00
psi29a
a707f5b0e0 Merge branch 'portable' into 'master'
Make OpenMW more portable (follow up of !1555)

See merge request OpenMW/openmw!1805
2022-04-28 19:35:29 +00:00
Mads Buvik Sandvei
606a795a54 multiview linker-method 2022-04-28 21:09:06 +02:00
madsbuvi
dd5901d351 Initial commit
Multiview shaders.

Refactor Frustum management

Rewrite shared shadow map

cull mask should respect stereo

Stereo savegame screencap

LocalMap refactoring

use the vertex buffer hint instead of the display list patch to enable/disable display lists

Character preview fixes
2022-04-28 21:05:34 +02:00
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.
2022-04-28 15:19:54 +02:00
Petr Mikheev
c7ab67c2c1 Allow relative paths in openmw.cfg; support --replace=config. 2022-04-28 00:39:41 +02:00
psi29a
07056802eb Merge branch 'esmtool_tes4' into 'master'
Support esmtool dump for TES4

See merge request OpenMW/openmw!1800
2022-04-27 21:07:25 +00:00
psi29a
dad9f24867 Merge branch 'link-shaders' into 'master'
Shader linking

See merge request OpenMW/openmw!1803
2022-04-27 21:04:08 +00:00
Frederic Chardon
ad1ab1c880 Follow up to !192 2022-04-27 19:51:54 +00:00
psi29a
66a96bfa5e Merge branch 'launcher-datadirs' into 'master'
Make launcher handle data dirs #2858 and BSA

See merge request OpenMW/openmw!192
2022-04-27 17:31:52 +00:00
madsbuvi
dc3045c970 mono-only version of the shader linking system introduced in the stereo MR 2022-04-26 19:54:24 +02:00
elsid
d2510284ec
Support TES4 in esmtool dump 2022-04-25 17:35:26 +02:00
elsid
43b2892cc3
Move ESMData, reader and writer out of esmtool Arguments 2022-04-25 17:35:25 +02:00
psi29a
c930aabf17 Merge branch 'fix_windows_build' into 'master'
Fix build on Windows

See merge request OpenMW/openmw!1796
2022-04-25 06:38:33 +00:00
elsid
0dcb1f5aac
Fix build on Windows
Use wrapper header over Windows.h to undefine far and near in a single place.
2022-04-25 00:25:46 +02:00
psi29a
eceb7406aa Merge branch 'lua_storage' into 'master'
[Lua] Update openmw.storage

See merge request OpenMW/openmw!1795
2022-04-24 20:13:59 +00:00
jvoisin
3621b9a759 Merge branch 'clean' into 'master'
Appease some clang warnings

See merge request OpenMW/openmw!1794
2022-04-24 11:34:29 +00:00
Petr Mikheev
eae1e87081 [Lua] Update openmw.storage 2022-04-23 18:55:12 +02:00
psi29a
f99f818c0c Merge branch 'esm4_cleanup' into 'master'
ESM4 cleanup

See merge request OpenMW/openmw!1792
2022-04-23 15:27:28 +00:00
psi29a
cfcc88f64c Merge branch 'istream_unique_ptr' into 'master'
Use unique_ptr to store istream

See merge request OpenMW/openmw!1793
2022-04-23 11:19:27 +00:00
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.
2022-04-23 09:54:45 +02:00
fredzio
5a1a987f6c Remove write-only variable. 2022-04-23 09:13:22 +02:00
elsid
d71a1efa92
Rename components/esm4/acti.hpp -> components/esm4/loadacti.hpp 2022-04-23 00:40:45 +02:00
elsid
94c1d0cced
Use unique_ptr to store istream 2022-04-22 18:27:17 +02:00
Petr Mikheev
88d09c336c Lua console 2022-04-21 21:57:07 +02:00
Alexei Kotov
6d794cf9ca Merge branch 'fix-savegamerecords' into 'master'
Include random state record in count of saved records

See merge request OpenMW/openmw!1790
2022-04-21 10:38:49 +00:00
ζeh Matt
51a84aaef8
Include random state record in count of saved records 2022-04-21 11:51:10 +03:00
elsid
a2d596dbc7
Prepare navmesh scene asynchronously
It is expensive operation to generate new osg::Group for updated navmesh tile
which noticeably slows down main thread primarily because of
SceneManager::recreateShaders call. Move it to the preload work queue that is
used by RenderingManager. Leave to main thread only manipulations on the root
node.

Also move deallocation of no more needed data to the work queue. It's also
quite expensive operation because SceneManager::recreateShaders allocates a
new state set for each osg::Geometry. Deallocating them takes time.

Avoid creating another work item if there is existing one that is not started
yet.

Make sure results are accepted in the proper serialized order by selecting
completed work item with maximum {id, version}.
2022-04-20 23:14:31 +02:00
psi29a
c14796fc57 Merge branch 'ncc' into 'master'
#6496 Handle NCC flag in Nif files

See merge request OpenMW/openmw!1516
2022-04-17 20:29:41 +00:00
psi29a
4e723cad59 Merge branch 'issue-6667-pressing_escape_during_wait_causes_black_screen' into 'master'
issue-6667 pressing escape during wait causes black screen

See merge request OpenMW/openmw!1783
2022-04-17 20:26:23 +00:00
Eris Caffee
627656ace0 issue-6667 pressing escape during wait causes black screen 2022-04-17 20:26:23 +00:00
psi29a
58f77ab3ef Merge branch 'issue-5279-console_stops_scrolling_properly_after_selection' into 'master'
issue-5279 console stops scrolling properly after selection

See merge request OpenMW/openmw!1781
2022-04-17 20:25:10 +00:00
Eris Caffee
b2c6c49999 issue-5279 console stops scrolling properly after selection 2022-04-17 20:25:09 +00:00
fredzio
d05a2facf3 Handle NCC flag in Nif files. Objects with this flag will collide only with camera.
Expose objects with NC flag to be used by Lua mods.
2022-04-17 20:03:00 +02:00
psi29a
c17b6de787 Merge branch 'refactor/cache-target' into 'master'
Cache the target for ai packages instead of looking for it every frame

See merge request OpenMW/openmw!1772
2022-04-17 17:15:01 +00:00
Matt
56a1505885 Cache the target for ai packages instead of looking for it every frame 2022-04-17 17:15:00 +00:00
psi29a
4575df957e Merge branch 'issue-6685' into 'master'
issue 6685 - wizard failure if config dir does not exist

See merge request OpenMW/openmw!1735
2022-04-17 17:13:31 +00:00
Eris Caffee
ba57d0651f issue 6685 - wizard failure if config dir does not exist 2022-04-17 17:13:31 +00:00
psi29a
8f02cd7d17 Merge branch 'fix_6627' into 'master'
Fix #6627

Closes #6627

See merge request OpenMW/openmw!1762
2022-04-17 17:13:13 +00:00
psi29a
517bca803c Merge branch 'issue-2766-warn_user_if_old_MW_version_installed' into 'master'
Issue 2766 Warn user of old MW version detected

See merge request OpenMW/openmw!1748
2022-04-17 16:28:15 +00:00
Eris Caffee
db84d9e649 Issue 2766 Warn user of old MW version detected 2022-04-17 16:28:14 +00:00
psi29a
a0d0f60490 Merge branch 'dont_look_at_me_im_hideous' into 'master'
Ignored flag part 2

Closes #6699

See merge request OpenMW/openmw!1782
2022-04-17 09:42:49 +00:00
Evil Eye
6c87219ba3 Print record flags in esmtool 2022-04-17 09:00:58 +02:00
psi29a
e66008c4e2 Merge branch 'dont_look_at_me_im_hideous' into 'master'
Implement ignored records

Closes #6699

See merge request OpenMW/openmw!1779
2022-04-16 22:15:00 +00:00
Evil Eye
86d7f5a988 Fix tests 2022-04-16 22:58:08 +02:00
Evil Eye
61ea678a96 Implement ignored records 2022-04-16 16:28:39 +02:00
Evil Eye
68799cfd2b Merge branch 'cleancmakelist' into 'master'
Update CMakeLists.txt after a file was removed.

See merge request OpenMW/openmw!1778
2022-04-16 10:58:30 +00:00
elsid
fbc853804d
Fix recover from errors in Files::getHash 2022-04-15 21:43:54 +02:00
fredzio
3e4c683ba9 Update CMakeLists.txt after a file was removed. 2022-04-15 19:14:18 +02:00
elsid
b09570692e
Use ifstream for ESMReader
ESMReader reads the whole file, there is no need in the ConstrainedFileStream.
2022-04-15 02:58:57 +02:00
elsid
194c11f214
Fix loading order in EsmLoader
Need to load the last present record from a sequence of loaded records. That
means reverse should be called before unique or unique should be applied for
a reversed range. Since unique keeps only the first element from a sub
sequence of equal elements.

Use forEachUnique with reversed range to avoid redundant container
modifications.
2022-04-13 09:33:24 +02:00
psi29a
d3d9abede4 Merge branch 'refactor/predictAndAvoidCollisions' into 'master'
Use active package in predictAndAvoidCollisions

See merge request OpenMW/openmw!1770
2022-04-12 19:20:33 +00:00
uramer
5aa8e475a4 Merge branch 'rendering_raycast' into 'master'
Rendering raycasts in Lua

See merge request OpenMW/openmw!1768
2022-04-12 19:15:28 +00:00
ζeh Matt
b2739dc84a
Avoid looking up settings from gmst each frame 2022-04-12 18:58:13 +03:00
ζeh Matt
1a41cefab3
Use active package in predictAndAvoidCollisions 2022-04-12 18:32:58 +03:00
psi29a
9809b873a0 Merge branch 'esm_namespace_qualifiers' into 'master'
Remove ESM:: namespace qualifier in components/esm3/ and tests

See merge request OpenMW/openmw!1769
2022-04-12 08:08:31 +00:00
elsid
4447ab0ed7
Remove ESM:: namespace qualifier in components/esm3/ and tests 2022-04-12 02:04:24 +02:00
Petr Mikheev
51845e9553 Rendering raycasts in Lua 2022-04-11 23:36:54 +02:00
Petr Mikheev
a65f8ebbc6 Reorganize delayed Lua actions 2022-04-11 22:19:51 +02:00
elsid
39da3bfef8
Ignore player when checking whether AiTravel destination is occupied by other actor 2022-04-11 19:30:54 +02:00
psi29a
84458baa8b Merge branch 'VA_OpenMW-CS' into 'master'
OpenMW-CS: Issue #3245 Add configurable instance grid, angle, and scale snapping

Closes #3245

See merge request OpenMW/openmw!1737
2022-04-11 16:03:30 +00:00
Vidi_Aquam
035fe778b2 Temporary workaround for angle snapping
Made the angle snap only apply to an object when the drag is finished, which is much more usable until the rotation system can be fixed completely
2022-04-11 08:12:38 -05:00
psi29a
03806eb75e Merge branch 'esm_rm_redundant_include' into 'master'
Remove redundant include from esm3/esmreader.hpp

See merge request OpenMW/openmw!1761
2022-04-11 07:47:48 +00:00
elsid
5eb8c4aebe
Avoid redundant conversion to const char* and use make_shared 2022-04-10 22:33:08 +02:00
Petr Mikheev
fa29b9d6f7 Fix #6627 2022-04-10 22:31:09 +02:00
elsid
db44f91fd5
Remove redundant include from esm3/esmreader.hpp 2022-04-10 22:16:32 +02:00
elsid
6b464a9330
Check ESMReader value size in compile time 2022-04-10 19:16:11 +02:00
Benjamin Winger
21ffbcc4b4 Lua i18n updates 2022-04-10 07:57:02 +00:00
ζeh Matt
058da82823
Reduce calls in CharacterController::updateState 2022-04-09 01:52:52 +03:00
ζeh Matt
dd222b9ef1
Reduce calls in CharacterController::updateIdleStormState 2022-04-09 01:21:34 +03:00
ζeh Matt
e85a979f10
Reduce calls in CharacterController::handleTextKey 2022-04-09 01:20:53 +03:00
ζeh Matt
25b26f6fa7
Reduce calls in CharacterController::refreshHitRecoilAnims 2022-04-09 01:06:15 +03:00
psi29a
9275b3c08f Merge branch 'make_shared' into 'master'
Use std::make_shared instead of new

See merge request OpenMW/openmw!1753
2022-04-08 21:35:55 +00:00
elsid
4509b05bc8
Use std::make_shared instead of new
make_shared allocates single storage for ref counter and the object.
std::shared_ptr<T>(new T) allocates 2 storages.
2022-04-08 22:50:09 +02:00
elsid
df092b558b
Replace shared_ptr by unique_ptr 2022-04-08 22:42:22 +02:00
elsid
bbfdb347bd
Skip load cell ref when there is no need
Primarily to avoid temporary allocations by ESMReader::getHString.
2022-04-08 19:16:38 +02:00
elsid
ec3674b40a
Use unique_ptr instead of shared_ptr
for MWWorld::Action, ProjectileManager and ESSImport::Converter.

shared_ptr has additional cost of reference counter and requires additional
allocation when constructed as shared_ptr<T>(new T).
2022-04-08 16:12:36 +02:00
psi29a
320e86156e Merge branch 'registered_class' into 'master'
Use static object to register classes

See merge request OpenMW/openmw!1746
2022-04-08 08:36:24 +00:00
elsid
5156ee94be
Store static id key in lower case 2022-04-08 01:22:48 +02:00
elsid
7038c82690
Configure mav navmeshdb file size from the launcher 2022-04-07 16:38:01 +02:00
elsid
1baee5ddba
Add check box to remove unused tiles 2022-04-07 15:55:12 +02:00
psi29a
1ac7eaa6b0 Merge branch 'NiFltAnimationNode' into 'master'
Add NiFltAnimationNode support

Closes #6684

See merge request OpenMW/openmw!1732
2022-04-06 23:59:04 +00:00
psi29a
fc5605fc7f Merge branch 'navmeshtool_binary_log' into 'master'
Send status of navmeshtool to launcher using type binary messages

See merge request OpenMW/openmw!1630
2022-04-06 23:40:45 +00:00
Bret Curtis
c376f3793e check that the index is now -1; otherwise bad things happen 2022-04-07 00:09:11 +02:00
Bret Curtis
0db5415976 refactor to use mInternal, support Flag_Reverse and updated changelog/authors.md 2022-04-07 00:09:11 +02:00
Wolfgang Lieff
ead73fce31 initial NiFltAnimationNode support 2022-04-07 00:09:11 +02:00
psi29a
8b2c5e4801 Merge branch 'replace_boost_variant' into 'master'
Replace boost::variant by std::variant

See merge request OpenMW/openmw!1747
2022-04-06 22:07:44 +00:00
elsid
a46714df67
Replace boost::variant by std::variant 2022-04-06 23:01:58 +02:00
Petr Mikheev
3af8ea5dfc Update Lua bindings for the camera 2022-04-06 21:55:05 +02:00
Petr Mikheev
7186ea8ab4 [Lua] New overload Actor.equipment(actor, slot). 2022-04-06 21:55:05 +02:00
Petr Mikheev
5ed22c4c7a Minor fix in actors.cpp 2022-04-06 21:55:05 +02:00
elsid
dc20e799e1
Use static object to register classes 2022-04-06 16:49:25 +02:00
Matt
49e21e121a Revert "Merge branch 'refactor/6677-2' into 'master'"
This reverts merge request !1733
2022-04-04 17:09:52 +00:00
psi29a
ca77ae336f Merge branch 'refactor/6677-2' into 'master'
Introduce IndexedVector

See merge request OpenMW/openmw!1733
2022-04-04 13:56:20 +00:00
Matt
21e4c10fa9 Introduce IndexedVector 2022-04-04 13:56:19 +00:00
psi29a
e510612e46 Merge branch 'issue-6558-move_away_from_md5_in_cmake' into 'master'
Issue 6558 Move away from md5 in cmake

See merge request OpenMW/openmw!1740
2022-04-04 13:47:21 +00:00
Eris Caffee
14b5bef64f Issue 6558 Move away from md5 in cmake
Updated CMakeLists.txt files to use sha512 instead of md5 to verify downloads
2022-04-03 22:46:39 -05:00
elsid
6e0d660dd5 Check whether model is empty before trying to insert object 2022-04-03 17:38:33 +00:00
Vidi_Aquam
abf0c8048e Change reading of settings and add missing logic to mouse wheel drag 2022-04-03 09:04:12 -05:00
Vidi_Aquam
6d7c8f25fc Implement grid snapping and angle snapping in OpenMW-CS
Adds configurable snap settings for instance movement, rotation and scaling, used with the secondary edit button
2022-04-02 19:25:57 -05:00
elsid
3878a12ed3
Delay cell grid change until scene update
This allows proper profiling. Changing cell grid is not a part of physics
system, it's a part of world system.
2022-04-01 21:46:20 +02:00
elsid
2d5ccc804b
Exchange binary messages between navmeshtool and launcher 2022-03-30 19:24:54 +02:00
elsid
a21c17ab26
Use crash catcher in launcher 2022-03-30 19:23:10 +02:00
Petr Mikheev
fbc84465c5 Merge branch 'futureproof_layers' into 'master'
Add layer size, make layers API more flexible

See merge request OpenMW/openmw!1724
2022-03-29 20:11:11 +00:00
ζeh Matt
c3d02492df
Cleanup stopMovement 2022-03-29 19:49:02 +03:00
ζeh Matt
33706923a3
Restructure function updateCrimePursuit 2022-03-28 17:25:22 +03:00
ζeh Matt
9821982944
Restructure function updateEquippedLight 2022-03-28 16:48:16 +03:00
ζeh Matt
127366a948
Restructure function updateDrowning 2022-03-28 16:38:39 +03:00
ζeh Matt
0b306bc1ea
Restructure function engageCombat 2022-03-28 16:32:56 +03:00
ζeh Matt
8631b96680
Restructure function updateGreetingState 2022-03-28 16:25:33 +03:00
ζeh Matt
5e44dd41eb
Restructure function updateMovementSpeed 2022-03-28 16:20:24 +03:00
ζeh Matt
23615e653a
Mark getActivePackage const 2022-03-28 16:17:42 +03:00
ζeh Matt
cba51e5e1c
Restructure function updateHeadTracking 2022-03-28 16:13:40 +03:00
ζeh Matt
f5b527e445
Restructure function isCommanded 2022-03-28 16:07:20 +03:00
psi29a
1c70b9790c Merge branch 'covid_wont_stop_me' into 'master'
Don't reset last hit object if the ID doesn't match

Closes #6682

See merge request OpenMW/openmw!1727
2022-03-28 11:40:46 +00:00
Evil Eye
c1d700f770 Don't reset last hit object if the ID doesn't match 2022-03-28 11:40:46 +00:00
Evil Eye
7695f03c4c Remove unused variable 2022-03-27 17:20:22 +02:00
psi29a
2b83df09b6 Merge branch 'refactor/spell-vector' into 'master'
Refactor mUsedPowers to use vector

See merge request OpenMW/openmw!1725
2022-03-27 09:56:22 +00:00
psi29a
1f14f97d17 Merge branch 'navmeshdb_max_file_size' into 'master'
Limit max navmeshdb file size (#6649)

Closes #6649

See merge request OpenMW/openmw!1716
2022-03-27 09:07:56 +00:00
Nelsson Huotari
6869fa18e4 Fix unsafe memory access at object.cpp 2022-03-26 15:16:22 +00:00
Evil Eye
93d195646c Lua stats 2022-03-25 20:03:13 +00:00
ζeh Matt
edca5ac0b8
Rename hasDisease to hasSpellType and refactor function 2022-03-25 20:47:43 +02:00
ζeh Matt
dcdba227f7
Use vector for mUsedPowers for deterministic order 2022-03-25 20:42:01 +02:00
uramer
5d1fe6c2bc Add layer size, make layers API more flexible 2022-03-23 15:04:49 +01:00
psi29a
6d55317d57 Merge branch 'refactor/prng-2' into 'master'
Save random state and refactor usage of generators

See merge request OpenMW/openmw!1715
2022-03-23 09:50:54 +00:00
ζeh Matt
769be88d43
Adjust DetourNavigatorNavigatorTest to the new prng values 2022-03-21 17:49:42 +02:00
ζeh Matt
8103ff2e6f
Make the CI happy 2022-03-21 17:49:42 +02:00
ζeh Matt
f8f3bb2421
Use std::minstd_rand and split serialization from save/load 2022-03-21 17:49:42 +02:00
ζeh Matt
0611a8c3a7
Start new game with specified seed in options 2022-03-21 17:49:42 +02:00
ζeh Matt
151770ccf1
Separate global vs world rng functions and use custom prng 2022-03-21 17:49:42 +02:00
ζeh Matt
08fae7be6e
Pass the prng from world where appropriate 2022-03-21 17:49:42 +02:00
ζeh Matt
b502dc12f0
Add prng to World instance and serialize state in Save 2022-03-21 17:49:42 +02:00
jvoisin
eb46bde75e Merge branch 'lua_records' into 'master'
Lua bindings for ESM::Door and ESM::Weapon records

See merge request OpenMW/openmw!1717
2022-03-20 15:39:48 +00:00
Petr Mikheev
1b1e81b90e Lua bindings for ESM::Door and ESM::Weapon records 2022-03-20 15:39:48 +00:00
Petr Mikheev
d185cb6dce Add Lua function ui.screenSize() 2022-03-20 00:16:41 +01:00
Evil Eye
d7d1a85143 Restore dialogue autocompletion in the console 2022-03-19 12:02:26 +01:00
elsid
5b9dd10cbe
Limit max navmeshdb file size
Use "pragma max_page_count" to define max allowed file size in combination with
"pragma page_size" based on a new setting "max navmeshdb file size".

* Stop navmeshtool on the first db error.
* Disable writes to db in the engine on first "database or disk is full"
  SQLite3 error. There is no special error code for this error.
* Change default "write to navmeshdb" to true.
* Use time intervals for transaction duration instead of number of changes.
2022-03-18 19:08:46 +01:00
Petr Mikheev
fa115418eb [Lua] Remove queries 2022-03-15 23:35:36 +01:00
Petr Mikheev
0f84bfde51 [Lua] Replace cell.selectObjects with cell.getAll 2022-03-15 23:35:36 +01:00
Petr Mikheev
43bed7f0d2 [Lua] Split obj.inventory into Actor.inventory(obj) and Container.content(obj) 2022-03-15 23:35:36 +01:00
Petr Mikheev
d251c4e2a1 [Lua] Change behavior of obj.type 2022-03-15 23:35:36 +01:00
Petr Mikheev
af93ebf433 [Lua] Move class-specific functions to openmw.types 2022-03-15 19:23:26 +01:00
AnyOldName3
696be1cc39 Merge branch 'fix_6589' into 'master'
Add default value for `user-data` in openmw.cfg

Closes #6589

See merge request OpenMW/openmw!1632
2022-03-13 18:51:34 +00:00
duncanspumpkin
3a117cac22 Switch to a constexpr for FourCC constant
Add static asssert on wrong size
2022-03-08 14:48:37 +00:00
jvoisin
8a182c130a Merge branch 'refactor/prng' into 'master'
Refactor and rename some things around Misc::Rng

See merge request OpenMW/openmw!1710
2022-03-07 10:19:41 +00:00
Matt
54e114d83e Avoid string copies for ESM::Variant::getString 2022-03-06 17:38:58 +00:00
ζeh Matt
d83a381f79
Refactor and rename some things around Misc::Rng 2022-03-06 17:28:28 +02:00
Petr Mikheev
696c2135ef Merge branch 'FixSettingsLoaderForEditor' into 'master'
Make settings loader differentiate between engine and editor (fixes #6658).

Closes #6658

See merge request OpenMW/openmw!1706
2022-03-04 09:44:52 +00:00
Martin Otto
96e48e5492 Make settings loader differentiate between engine and editor (fixes #6658). 2022-03-04 09:44:52 +00:00
Petr Mikheev
df41b4080d Merge branch 'refactor/headtracking' into 'master'
Small improvement for headtracking

See merge request OpenMW/openmw!1683
2022-03-03 20:39:53 +00:00
Matt
0b528d3bfb Small improvement for headtracking 2022-03-03 20:39:53 +00:00
ζeh Matt
129d68e299
Fix #6660: Crash during intro video when closing the game 2022-03-03 20:25:35 +02:00
psi29a
3afa46b25e Merge branch 'CPP20_support' into 'master'
Support C++20

See merge request OpenMW/openmw!1705
2022-03-01 11:11:37 +00:00
Bret Curtis
32fd6f297a static_cast bitwise operation between different enumeration types 2022-03-01 10:53:01 +01:00
Bret Curtis
1927b1c6d9 use static cast to handle: deprecated between enumerations of different types 2022-03-01 10:53:01 +01:00
Bret Curtis
ad11cc8d8a reinstall fontconfig as needed; const an imbigious == operator 2022-03-01 10:53:01 +01:00
Bret Curtis
4b742dd461 explicit capture for lamda 2022-03-01 09:43:08 +01:00
psi29a
3558196098 Merge branch 'Newer-Bsa-formats-no-longer-load' into 'master'
#6651 Newer bsa formats no longer load

Closes #6651

See merge request OpenMW/openmw!1703
2022-03-01 07:22:04 +00:00
Evil Eye
25feea9b16 Prevent write to empty vector element 2022-02-28 16:42:22 +01:00
psi29a
ceae2d664d Merge branch 'refactor/stdlist' into 'master'
Use std::vector instead of std::list for some functions

See merge request OpenMW/openmw!1699
2022-02-28 07:40:21 +00:00
Cédric Mocquillon
ff7ad93bac Avoid missusing of CompressedBSAFile with private inheritance 2022-02-27 20:40:35 +01:00
uramer
6845d681f2 Update hardcoded layers (hotfix for https://gitlab.com/OpenMW/openmw/-/merge_requests/1681) 2022-02-27 11:59:55 +00:00
psi29a
2d4e9b38ae Merge branch 'lua_ui_image' into 'master'
Document the Lua Image widget, add UI texture resources

See merge request OpenMW/openmw!1637
2022-02-26 17:48:50 +00:00
uramer
67879bac55 MR feedack 2022-02-26 17:01:46 +01:00
Petr Mikheev
6afafbbe30 Merge branch 'refactor_layers' into 'master'
Refactor UI layers

See merge request OpenMW/openmw!1681
2022-02-26 13:54:42 +00:00
uramer
21a363d96f Refactor UI layers 2022-02-26 13:54:42 +00:00
uramer
fc50724f5c Render text and images correctly in templates with slots 2022-02-25 18:18:26 +01:00
uramer
e092ee2624 Document the Lua Image widget, add UI texture resources 2022-02-25 18:18:26 +01:00
jvoisin
7f3058d501 Use toStringView in esmtool instead of toString 2022-02-25 17:40:27 +01:00
ζeh Matt
eca405e5c7
Use std::vector instead of std::list 2022-02-25 04:02:21 +02:00
elsid
42d6032c8b
Support compilation with c++20 2022-02-24 00:49:40 +01:00
psi29a
7e4e78b1a7 Merge branch 'engarde' into 'master'
Always reduce weapon condition by the raw damage (bug #6559)

Closes #6559

See merge request OpenMW/openmw!1694
2022-02-23 21:49:57 +00:00
Alexei Dobrohotov
fdd9e6a793 Always reduce weapon condition by the raw damage (bug #6559) 2022-02-23 16:37:56 +03:00
psi29a
34be9329eb Merge branch 'ascivilaspossible' into 'master'
Increase the base actor angular velocity to 900°/sec (#5192)

Closes #5192

See merge request OpenMW/openmw!1690
2022-02-23 10:09:17 +00:00
psi29a
dd281e1e93 Merge branch 'fix_collision_boxes' into 'master'
Fix #6616: Fix incorrect collision box calculations

Closes #6616

See merge request OpenMW/openmw!1687
2022-02-23 08:26:50 +00:00
Alexei Kotov
38a0659b7f Merge branch 'weak_ptr' into 'master'
Store std::weak_ptr into mUpdateAabb.

See merge request OpenMW/openmw!1578
2022-02-23 06:10:29 +00:00
Alexei Kotov
4a3d7a1ff7 Merge branch 'esm3_ai_package' into 'master'
Use unique_ptr to manage AiPackage lifetime

See merge request OpenMW/openmw!1691
2022-02-23 05:55:49 +00:00
Alexei Kotov
087084abdc Merge branch 'projectilefix' into 'master'
Fix for projectile movement simulation (#6526 and probably #6434)

See merge request OpenMW/openmw!1518
2022-02-23 05:34:35 +00:00
elsid
595c2e0a8e
Use unique_ptr to manage AiPackage lifetime 2022-02-23 00:39:30 +01:00
Alexei Dobrohotov
1a15ad216d Increase the base angular velocity to 900°/sec (#5192) 2022-02-23 02:13:31 +03:00
Abdu Sharif
de3092f014 Revert "Merge branch 'offset_the_deads' into 'master'"
This reverts commit 7dd02076f5
2022-02-22 04:04:08 +00:00
Petr Mikheev
ff7ac7192b Merge branch 'ui_pairs' into 'master'
Implement pairs and ipairs for ui.content and ui.layers. Document all iterable types in a uniform way.

See merge request OpenMW/openmw!1643
2022-02-21 20:43:29 +00:00
uramer
a1abc84f59 Implement pairs and ipairs for ui.content and ui.layers. Document all iterable types in a uniform way. 2022-02-21 20:43:27 +00:00
uramer
cc6dce5443 Support controller touchpads (Resolves https://gitlab.com/OpenMW/openmw/-/issues/6639) 2022-02-21 19:49:00 +00:00
jvoisin
a55f1ad103 Merge branch 'bullet_object_tool' into 'master'
Add a tool to load and print information about all bullet objects in all cells

See merge request OpenMW/openmw!1627
2022-02-20 14:09:26 +00:00
elsid
6fd251e8f7
Avoid starting async png writing when overlay image is null 2022-02-19 21:41:40 +01:00
psi29a
b03f9e430c Merge branch 'navmesh_disk_rm_unused_tiles' into 'master'
Add navmeshtool flag to remove unused tiles from navmesh disk cache

See merge request OpenMW/openmw!1671
2022-02-19 13:56:44 +00:00
psi29a
85c0d93274 Merge branch 'fix-6633' into 'master'
Fix #6633: AiSequence packages being removed incorrectly

Closes #6633

See merge request OpenMW/openmw!1678
2022-02-19 13:55:42 +00:00
ζeh Matt
b997e28e57
Fix #6633: AiSequence packages being removed incorrectly 2022-02-19 14:56:51 +02:00
psi29a
1c1581bdab Merge branch 'check_esm4_compilation' into 'master'
Check ESM4 compilation

See merge request OpenMW/openmw!1677
2022-02-19 12:18:43 +00:00
elsid
57c1f2e231
Make sure everything compiles in ESM4 2022-02-19 02:52:49 +01:00
elsid
a7e76c6f3d
Remove redundant include 2022-02-18 22:31:40 +01:00
elsid
ab1a6e034e
Add navmeshtool flag to remove unused tiles from navmesh disk cache
* Remove tiles outside processing range. Useful when new content profile map
  has different bounds.
* Remove ignored tiles. For a case when content profile maps have intersection
  but there is no more data for navmesh.
* Remove older tiles at the same worldspace position. If navmesh tile data has
  changed with new content, the old ones unlikely to be used.
* Vacuum the database when there are modifications. SQLite leaves empty pages
  in the file on database modification. Vacuum cleans up unused pages reducing
  the file size.
2022-02-18 21:57:23 +01:00
elsid
67741402b5
Replace reference to const std::string by std::string_view for navmeshdb related arguments 2022-02-18 21:45:50 +01:00
elsid
9584cb7ac2
Use fixed size types for serialization 2022-02-18 21:01:53 +01:00
elsid
de7f9f6439
Replace raw for loop by algorithm
To fix compilation error with -D_GLIBCXX_DEBUG:
/home/elsid/dev/openmw/apps/openmw/mwdialogue/dialoguemanagerimp.cpp: In member function ‘virtual void MWDialogue::DialogueManager::write(ESM::ESMWriter&, Loading::Listener&) const’:
/home/elsid/dev/openmw/apps/openmw/mwdialogue/dialoguemanagerimp.cpp:679:78: error: no matching function for call to ‘__gnu_debug::_Safe_iterator<std::_Rb_tree_const_iterator<std::__cxx11::basic_string<char> >, std::__debug::set<std::__cxx11::basic_string<char> >, std::bidirectional_iterator_tag>::_Safe_iterator(std::__debug::set<std::__cxx11::basic_string<char>, Misc::StringUtils::CiComp>::const_iterator)’
  679 |         for (std::set<std::string>::const_iterator iter (mKnownTopics.begin());
      |                                                                              ^
2022-02-17 01:04:44 +01:00
psi29a
4a2302ff2b Merge branch 'hand_to_nixhound' into 'master'
Disallow non-bipedal hand-to-hand refreshes

See merge request OpenMW/openmw!1667
2022-02-16 22:30:39 +00:00
Alexei Kotov
4fdf55601c Merge branch 'bigboi' into 'master'
Force a scale update when changing view modes

Closes #6623

See merge request OpenMW/openmw!1662
2022-02-16 22:29:13 +00:00
psi29a
8da1cc3dd2 Merge branch 'fix-6618' into 'master'
Fix #6618

Closes #6618

See merge request OpenMW/openmw!1666
2022-02-16 21:24:21 +00:00
psi29a
cc8d05bd9a Merge branch 'async_save_map' into 'master'
Write png image of the global map for save asynchronously

See merge request OpenMW/openmw!1656
2022-02-16 21:11:07 +00:00
Evil Eye
7bd4971e0c Disallow non-bipedal hand-to-hand refreshes 2022-02-16 21:58:22 +01:00
psi29a
b73eaadf20 Merge branch 'use_utf8_string_view' into 'master'
Avoid extra copy for Utf8Encoder::getUtf8 result

See merge request OpenMW/openmw!1661
2022-02-16 20:58:12 +00:00
ζeh Matt
0ce29a6131
Simplify logic in AiSequence::execute 2022-02-16 20:21:10 +02:00
ζeh Matt
e60e0b55eb
Fix potential another crash 2022-02-16 18:19:55 +02:00
ζeh Matt
83be3826ff
Fix #6618: Crash due to iterator invalidation 2022-02-16 18:19:10 +02:00
psi29a
d680870e8f Merge branch 'fix_aabb' into 'master'
Fix btAABB initialization (#6489)

Closes #6489

See merge request OpenMW/openmw!1664
2022-02-16 08:01:23 +00:00
elsid
2e38f0b641
Fix btAABB initialization 2022-02-16 02:58:59 +01:00
elsid
875d9dcead
Fix buffer resizing by StatelessUtf8Encoder 2022-02-15 23:02:32 +01:00
Evil Eye
f9da792386 Force a scale update when changing view modes 2022-02-15 17:25:07 +01:00
psi29a
8a0fb4d633 Merge branch 'stateless_utf8_encoder' into 'master'
Add StatelessUtf8Encoder to support caller provided buffer for output

See merge request OpenMW/openmw!1660
2022-02-15 08:35:31 +00:00
psi29a
776b286286 Merge branch 'esm_name' into 'master'
Use ESM::NAME instead of const char* and std::string as argument type

See merge request OpenMW/openmw!1659
2022-02-15 08:11:12 +00:00
elsid
3305b400dc
Use ESM::NAME instead of const char* and std::string as argument type 2022-02-14 23:40:40 +01:00
elsid
c044bef6a7
Add StatelessUtf8Encoder to support caller provided buffer for output 2022-02-14 23:19:49 +01:00
elsid
fbbf871067
Avoid extra copy for Utf8Encoder::getUtf8 result 2022-02-14 23:01:32 +01:00
Evil Eye
649c2f8286 Fix stats not working right for saves started before version 17 2022-02-14 18:38:37 +01:00
psi29a
149ef56b60 Merge branch 'utf8_encoder_tests' into 'master'
Add tests for Utf8Encoder

See merge request OpenMW/openmw!1654
2022-02-14 06:39:39 +00:00
elsid
a4d7b72511
Write png image of the global map for save asynchronously
Write global map to the save file last to give more time for async job to
finish.
2022-02-13 21:42:36 +01:00
elsid
b43eb29465
Log duration of writing save game file 2022-02-13 21:24:18 +01:00
elsid
7884a01026
Add tests for Utf8Encoder 2022-02-13 17:19:08 +01:00
psi29a
bd8c75daee Merge branch 'quest_redo' into 'master'
Restart all quests with the same name when a quest is restarted

Closes #6606

See merge request OpenMW/openmw!1651
2022-02-13 15:31:18 +00:00
Petr Mikheev
d8127fdad2 Merge branch 'refactor/aisequence-2' into 'master'
#6091: Optimize isInCombat

See merge request OpenMW/openmw!1636
2022-02-12 23:50:42 +00:00
Matt
367bdcf0cc #6091: Optimize isInCombat 2022-02-12 23:50:41 +00:00
Alexei Kotov
14a9af15ab Merge branch 'dagoth_wave' into 'master'
Remove weaponless, non-biped distinction

Closes #5054

See merge request OpenMW/openmw!1517
2022-02-12 15:07:32 +00:00
Alexei Kotov
380823d0ee Merge branch 'always-use-best-attack-rounding-fix' into 'master'
Fix always-use-best-attack rounding

See merge request OpenMW/openmw!1647
2022-02-12 15:03:44 +00:00
Evil Eye
c382910c1f Restart all quests with the same name when a quest is restarted 2022-02-12 13:25:27 +01:00
Evil Eye
fdfde836fe Expect recent saves to store the modified value 2022-02-12 01:03:12 +01:00
Niek Wilting
6cd12823e8 Fix always-use-best-attack rounding 2022-02-11 19:26:13 +01:00
psi29a
2a7d28712f Merge branch 'stats' into 'master'
Remove weirdness surrounding AI- and Dynamic stats

Closes #6599

See merge request OpenMW/openmw!1645
2022-02-11 08:18:24 +00:00
Evil Eye
054d8babc4 Add getRatio method 2022-02-10 22:10:46 +01:00
Evil Eye
6b203892fc Fix mod not increasing fortified values 2022-02-10 20:46:20 +01:00
uramer
ede9d27437 Element-wise multiplication and division of Lua vectors 2022-02-10 19:43:27 +00:00
Evil Eye
dc495a685a Remove a member variable that doesn't get saved and remove fortify maximum health code 2022-02-10 20:32:59 +01:00
Evil Eye
4e52c96cf5 Make Set/Mod[DynamicStat] work with negative values as in vanilla 2022-02-10 20:31:27 +01:00
Evil Eye
5aef14eccd Prevent division by 0 2022-02-10 20:28:27 +01:00
psi29a
01e8ae8981 Merge branch 'peace_love_and_stencils' into 'master'
Support morrowind stenciling (#6443)

Closes #6443

See merge request OpenMW/openmw!1635
2022-02-08 09:42:26 +00:00
glassmancody.info
8c2c322d92 add stencil to water RTTs, reword some comments 2022-02-07 14:35:15 -08:00
glassmancody.info
bbc9c53423 support morrowind stenciling 2022-02-07 11:51:59 -08:00
psi29a
2a6392fe5c Merge branch 'fix_6590' into 'master'
Fix #6590

Closes #6590

See merge request OpenMW/openmw!1633
2022-02-07 14:05:18 +00:00
uramer
643c1d6aeb Merge branch 'lua_ai' into 'master'
Control AI packages from Lua

See merge request OpenMW/openmw!1604
2022-02-06 22:43:48 +00:00
Evil Eye
7a7a95407a Merge branch 'lua_pairs' into 'master'
Proper support of `pairs` and `ipairs` in Lua; fix bug in `makeReadOnly`.

See merge request OpenMW/openmw!1628
2022-02-06 22:10:21 +00:00
Petr Mikheev
a294adcdaf Proper support of pairs and ipairs in Lua; fix bug in makeReadOnly. 2022-02-06 22:10:20 +00:00
Petr Mikheev
8e330653c7 Fix #6590 2022-02-06 22:16:37 +01:00
uramer
581c3f4882 Update and document Lua Text and TextEdit widget types, fix some issues with Lua UI 2022-02-06 20:22:38 +00:00
Petr Mikheev
ac5cd6c80a Add default value for user-data in openmw.cfg 2022-02-06 21:07:14 +01:00
Petr Mikheev
6c56436809 Control AI packages from Lua 2022-02-06 15:01:51 +01:00
psi29a
7f4d4c0d70 Merge branch 'refactor/system-ownership' into 'master'
Make ownership explicit in Engine and Environment

See merge request OpenMW/openmw!1605
2022-02-06 10:44:15 +00:00
Evil Eye
4657060d2c Extend swish and strength changes to all random attacks 2022-02-06 11:08:47 +01:00
Evil Eye
020e0b2ea5 Don't allow non-bipedal actors to play hand-to-hand animations 2022-02-05 22:50:04 +01:00
unknown
5ebcd37da1 Rename method and restore swish sounds 2022-02-05 19:07:44 +01:00
ζeh Matt
a383d9dfdf
Make ownership explicit in Environment 2022-02-05 11:46:23 +02:00
elsid
e7f3524924
Add a tool to load and print information about all bullet objects in all cells 2022-02-04 16:14:52 +01:00
psi29a
becffef142 Merge branch 'cull_navmesh_objects' into 'master'
Cull navmesh objects by scene bounds (#5858)

Closes #5858

See merge request OpenMW/openmw!1625
2022-02-04 14:07:13 +00:00
AnyOldName3
9d8853442b Merge branch 'portable' into 'master'
Make OpenMW "portable"

Closes #2491

See merge request OpenMW/openmw!1555
2022-02-03 22:49:49 +00:00
psi29a
c3e07619a4 Merge branch 'lua' into 'master'
Replace `inventory:get<Type>()` with `inventory:getAll(<Type>)`

See merge request OpenMW/openmw!1624
2022-02-03 22:35:36 +00:00
elsid
3caeda7299
Consider animated object unchanged if no transform updates done 2022-02-03 22:09:52 +01:00
elsid
832ab103cb
Filter out unchanged animated objects for navigator update 2022-02-03 22:09:52 +01:00
elsid
05b54cbfb8
Cull navmesh objects by scene bounds
If object is too big iteration over all tiles covering it can take too much
time. Limit bounds to a square around a player position to cover only tiles
that will be present in navmesh based on max tiles number option.

Each object is associated with a set of tiles its present in. Culling can
reduce this set but it has to be update when bounds change position. Do this
in TileCachedRecastMeshManager::setBounds updating the set and adding/removing
objects to the corresponding CachedRecastMeshManagers.
2022-02-03 22:09:37 +01:00
elsid
1b2954f2db
Remove unused z coordinate 2022-02-03 21:43:53 +01:00
elsid
783411fa1f
Use new player position when updating navigator on cell loading 2022-02-03 02:44:04 +01:00
elsid
542717394a
Remove objects, water and heightfields when no longer required 2022-02-03 02:43:35 +01:00
Petr Mikheev
6e4f628866 Replace inventory:get<Type>() with inventory:getAll(<Type>) 2022-02-03 02:05:49 +01:00
elsid
16cfdfec19
Avoid unnecessary computation
And fix UBSAN error:

/home/elsid/dev/openmw/apps/openmw/mwrender/renderingmanager.cpp:659:81: runtime error: division by zero
    #0 0x556eac16f4dc in MWRender::RenderingManager::configureAmbient(ESM::Cell const*) /home/elsid/dev/openmw/apps/openmw/mwrender/renderingmanager.cpp:659
    #1 0x556eadfd3d60 in MWWorld::Scene::loadCell(MWWorld::CellStore*, Loading::Listener*, bool, osg::Vec3f const&) /home/elsid/dev/openmw/apps/openmw/mwworld/scene.cpp:467
    #2 0x556eadfe3047 in MWWorld::Scene::changeToInteriorCell(std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const&, ESM::Position const&, bool, bool) /home/elsid/dev/openmw/apps/openmw/mwworld/scene.cpp:830
    #3 0x556eadeb8fb3 in MWWorld::World::changeToInteriorCell(std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const&, ESM::Position const&, bool, bool) /home/elsid/dev/openmw/apps/openmw/mwworld/worldimp.cpp:978
    #4 0x556eadeba5f1 in MWWorld::World::changeToCell(ESM::CellId const&, ESM::Position const&, bool, bool) /home/elsid/dev/openmw/apps/openmw/mwworld/worldimp.cpp:1008
    #5 0x556eaeb852dd in MWState::StateManager::loadGame(MWState::Character const*, std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const&) /home/elsid/dev/openmw/apps/openmw/mwstate/statemanagerimp.cpp:533
    #6 0x556eaeb81674 in MWState::StateManager::loadGame(std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const&) /home/elsid/dev/openmw/apps/openmw/mwstate/statemanagerimp.cpp:366
    #7 0x556eaebd2aae in OMW::Engine::go() /home/elsid/dev/openmw/apps/openmw/engine.cpp:1025
    #8 0x556eaeba810a in runApplication(int, char**) /home/elsid/dev/openmw/apps/openmw/main.cpp:221
    #9 0x556eaf865e9a in wrapApplication(int (*)(int, char**), int, char**, std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const&) /home/elsid/dev/openmw/components/debug/debugging.cpp:205
    #10 0x556eaeba8368 in main /home/elsid/dev/openmw/apps/openmw/main.cpp:233
    #11 0x7f89773b3b24 in __libc_start_main (/usr/lib/libc.so.6+0x27b24)
    #12 0x556eac13c09d in _start (/home/elsid/dev/openmw/build/gcc/ubsan/openmw+0x669c09d)
2022-02-03 00:08:45 +01:00
Petr Mikheev
a453e5c198 Reuse the same code to load settings in apps/openmw, apps/launcher, apps/opencs 2022-02-02 23:47:11 +01:00
Petr Mikheev
1bcc4a8bcc Read settings.cfg from all active config dirs 2022-02-02 23:47:11 +01:00
Petr Mikheev
5ca56a4f8a New option "config" for specifying additional config directories. 2022-02-02 23:47:11 +01:00
Petr Mikheev
dd5ba5c57b Redirect log only after parsing configuration 2022-02-02 23:47:11 +01:00
psi29a
bb6b031afd Merge branch 'fix_simulation_crash' into 'master'
Fix use after free and possible deadlock on exit (#6577)

Closes #6577

See merge request OpenMW/openmw!1601
2022-02-02 21:06:18 +00:00
psi29a
cf8d49bb9a Merge branch 'lua_settings_ui' into 'master'
Lua settings UI

Closes #6454

See merge request OpenMW/openmw!1595
2022-02-02 21:04:18 +00:00
uramer
946b8b804c MR feedback 2022-02-02 16:42:04 +01:00
Alexei Dobrohotov
142b6fdf2f Fix double precision bound issues in std::max/std::clamp 2022-02-02 16:57:59 +03:00
Petr Mikheev
47c37e5849 Lua command object:activateBy(actor) and handler onActivate 2022-02-01 23:42:56 +00:00
uramer
f68c0c41a9 Prioritize setting pages with hits in the name when searching 2022-02-01 23:06:53 +01:00
Evil Eye
8752f78fa4 Remove weaponless, non-biped distinction 2022-02-01 21:58:55 +01:00
uramer
ef1e72dc17 Revert from settings description to searchHints 2022-02-01 19:50:03 +01:00
uramer
01d65a14f1 Implement more advanced search, sort script setting pages by alphabet and filter match quality 2022-02-01 19:50:03 +01:00
uramer
67641dcdb7 Fix compile errors 2022-02-01 19:50:03 +01:00
uramer
086a7d9bc5 Wrap Lua settings widgets into an Adapter widget 2022-02-01 19:50:03 +01:00
uramer
db9e734a6a Fix warning 2022-02-01 19:50:02 +01:00
uramer
1455aa3e02 Allow changing script settings pages after registering them 2022-02-01 19:50:02 +01:00
uramer
5f7ab49880 Implement script setting pages' descriptions 2022-02-01 19:50:02 +01:00
uramer
a005f25c4b Use page terminology for script settings 2022-02-01 19:50:02 +01:00
uramer
e78b8402fa Fix warnings 2022-02-01 19:50:02 +01:00
uramer
a972a54ea9 Allow changing element root widget type, prevent use after free in script settings 2022-02-01 19:50:02 +01:00
uramer
64df4f54c6 Add scrolling to the script settings view 2022-02-01 19:50:02 +01:00
uramer
fba82eb1a7 Script settings tab 2022-02-01 19:50:02 +01:00
uramer
c31dedb89c Implement Yaw, Pitch and Use (attack / cast spell) in Lua self.controls 2022-02-01 18:47:20 +00:00
elsid
7ea5aa250b
Revert "Cull navmesh objects by scene bounds"
This reverts commit b0ef20c303.
2022-01-30 21:43:23 +01:00
jvoisin
4cd6d2dacf Merge branch 'rework_fixed_string' into 'master'
Rework fixed string

See merge request OpenMW/openmw!1596
2022-01-30 18:47:06 +00:00
jvoisin
43f64e9f75 Merge branch 'tasty_sujamma' into 'master'
Uncap attribute and skill damage for drain and absorb effects

See merge request OpenMW/openmw!1592
2022-01-30 17:59:49 +00:00
elsid
70623d0b23
Move FetchContent for benchmark to extern 2022-01-30 00:44:22 +01:00
psi29a
e46905450e Merge branch 'refactor/esm-recordnew' into 'master'
Use unique_ptr for ESM records

See merge request OpenMW/openmw!1603
2022-01-29 22:05:39 +00:00
psi29a
7dd02076f5 Merge branch 'offset_the_deads' into 'master'
#6410: Use the scaled mesh translation for collision shape position for living actors

See merge request OpenMW/openmw!1446
2022-01-29 20:28:23 +00:00
psi29a
7bab714825 Merge branch 'fix_circling_fargoth' into 'master'
Remove unnecessary loops from path (#6510)

Closes #6510

See merge request OpenMW/openmw!1584
2022-01-29 19:48:02 +00:00
ζeh Matt
07eb6db030
Use unique_ptr for ESM records 2022-01-29 21:09:27 +02:00
Evil Eye
79dc600dae Uncap attribute and skill damage for drain and absorb effects 2022-01-29 16:29:50 +01:00
elsid
8b7ae9afd8
Fix use after free and possible deadlock on exit
Lock Simulation weak_ptr in all visitors to avoid use after free.

And swap order for weak_ptr locking with locking collision world mutex to avoid
deadlock when underlying object tries to lock the same mutex in the destructor.

Add SimulationImpl type to avoid use of FrameData without locking weak_ptr.
2022-01-29 14:59:51 +01:00
elsid
45db56b382
Rework fixed string
* Avoid inheritance.
* Define equality operators out of the class definition.
* Replace toString with toStringView where it doesn't make sense to create a string.
2022-01-28 18:39:09 +01:00
Petr Mikheev
53f2dfd1c0 Merge branch 'lua_ui_templates' into 'master'
Lua UI templates

See merge request OpenMW/openmw!1475
2022-01-28 09:31:46 +00:00
uramer
960dd1f708 Lua UI templates 2022-01-28 09:31:45 +00:00
elsid
bf692a4bfa
Add more tests for fixed string 2022-01-28 03:39:28 +01:00
Bret Curtis
022fdc49a5 update tests to use esm3 rename 2022-01-27 21:13:38 +01:00
psi29a
84e209308d Merge branch 'refactor/interpreter' into 'master'
Cleanup interpreter code a bit

Closes #6553

See merge request OpenMW/openmw!1556
2022-01-27 19:18:57 +00:00
Matt
34723c8ea8 Cleanup interpreter code a bit 2022-01-27 19:18:57 +00:00
psi29a
6f7a067e0c Merge branch 'esmrename' into 'master'
esm refactor work

See merge request OpenMW/openmw!1575
2022-01-27 17:52:42 +00:00
psi29a
fac47ce0b5 Merge branch 'support_controller_gyro' into 'master'
Support controller gyro

Closes #6557

See merge request OpenMW/openmw!1571
2022-01-25 19:20:36 +00:00
psi29a
21ef9d4058 Merge branch 'nif_multi_parents' into 'master'
Support multiple parents for NIF nodes (#6552)

Closes #6552

See merge request OpenMW/openmw!1577
2022-01-25 19:17:19 +00:00
jvoisin
4ae1ea1ee3 Merge branch 'refidref' into 'master'
Remove `getRefIdRef` because it is the same as `getRefId`.

See merge request OpenMW/openmw!1585
2022-01-25 16:23:51 +00:00
Evil Eye
783505011c Merge branch 'fix_deprecated_warning' into 'master'
Remove usage of deprecated std::iterator

See merge request OpenMW/openmw!1589
2022-01-25 15:32:22 +00:00
Evil Eye
903ef60f9d Merge branch 'navmesh_scene_bounds' into 'master'
Limit and filter navmesh input (#5858)

Closes #5858

See merge request OpenMW/openmw!1583
2022-01-25 14:06:53 +00:00
elsid
ecc654a369 Limit and filter navmesh input (#5858) 2022-01-25 14:06:53 +00:00
elsid
12df2deb70
Remove usage of deprecated std::iterator
/home/elsid/dev/openmw/apps/openmw/mwlua/../mwbase/../mwworld/containerstore.hpp:264:23: warning: 'iterator<std::forward_iterator_tag, MWWorld::Ptr>' is deprecated [-Wdeprecated-declarations]
        : public std::iterator<std::forward_iterator_tag, PtrType, std::ptrdiff_t, PtrType *, PtrType&>
                      ^
/home/elsid/dev/openmw/apps/openmw/mwlua/../mwworld/inventorystore.hpp:79:36: note: in instantiation of template class 'MWWorld::ContainerStoreIteratorBase<MWWorld::Ptr>' requested here
            ContainerStoreIterator mSelectedEnchantItem;
                                   ^
/usr/bin/../include/c++/v1/__iterator/iterator.h:27:29: note: 'iterator<std::forward_iterator_tag, MWWorld::Ptr>' has been explicitly marked deprecated here
struct _LIBCPP_TEMPLATE_VIS _LIBCPP_DEPRECATED_IN_CXX17 iterator
                            ^
/usr/bin/../include/c++/v1/__config:1016:39: note: expanded from macro '_LIBCPP_DEPRECATED_IN_CXX17'
                                      ^
/usr/bin/../include/c++/v1/__config:993:48: note: expanded from macro '_LIBCPP_DEPRECATED'
                                               ^
2022-01-24 22:50:18 +01:00
elsid
7ec7c57879
Remove unnecessary loops from path
This prevents actors going back when a new shortest path includes a point
behind them where they were right before. Such situation can happen when path
includes off mesh connection. Resulting cost of such path can be lower than
the real one because off mesh connections are straight lines and walking
surface usually is not a plane but a surface.

Skip to path point where distance from current position to the line between
previous and this point is less than point tolerance. Which means actor is
standing very close to the edge between those points. Additionally check by
navmesh raycasting to make sure there is actually a valid path.
2022-01-24 22:32:04 +01:00
uramer
39c7325db7 Merge branch 'lua_fix_onActorActive' into 'master'
Validate that object exists before onActorActive Lua handler

See merge request OpenMW/openmw!1580
2022-01-24 13:25:20 +00:00
psi29a
fdc08cf01e Merge branch 'fix_storage' into 'master'
Fix heap use after free in components/lua/storage.cpp

See merge request OpenMW/openmw!1586
2022-01-24 12:17:19 +00:00
Petr Mikheev
067d71f7eb Fix heap use after free in components/lua/storage.cpp 2022-01-23 22:37:04 +01:00
Petr Mikheev
203ee492c8 Remove getRefIdRef because it is the same as getRefId. 2022-01-23 21:01:44 +01:00
Bret Curtis
74e7cfc023 remove unused includes: part1
remove unused imports: part2

revert one tidy we will keep for c++20
2022-01-23 17:30:25 +01:00
Bret Curtis
cdbab2325f rename esmterrain to esm3terrain 2022-01-23 17:19:30 +01:00
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
2022-01-23 17:04:48 +01:00
elsid
4b59ff2060
Include headers instead of source files 2022-01-23 15:40:30 +01:00
Petr Mikheev
24989e7bc1 Validate that object exists before onActorActive Lua handler 2022-01-23 11:30:22 +01:00
fredzio
26bdba88a2 Store std::weak_ptr into mUpdateAabb. This avoid extending the lifetime
of collision objects beyond what they should.
2022-01-22 17:17:20 +01:00
uramer
a85f2b0b2a Remove unnecessary mGuiCursorEnabled; from sensor manager 2022-01-22 13:28:07 +01:00
elsid
3f14011087
Support multiple parents for NIF nodes
Choose a parent base on which node is used to iterate over children nodes.
This leads to duplicate handing of child nodes. A node will be handled so many
times how many parents it has.

For example:
p1 p2
 \ /
  c

Will be handled as:
p1 p2
|  |
c  c

If c has children they will be handled X times c is handled.
2022-01-22 01:02:31 +01:00
elsid
580edf18b9 Use weak_ptr for Actor and Projectile simulations (#6515) 2022-01-21 00:28:56 +00:00
uramer
183ca3079e Merge gyroaxis into gyro manager 2022-01-20 15:42:01 +01:00
uramer
57ac592973 Fix warning 2022-01-19 22:35:32 +01:00
uramer
15e9c6615c Disable controller gyro with older SDL 2022-01-19 21:32:46 +01:00
uramer
4021d23cff Refactor sensor manager axis correction 2022-01-19 18:09:37 +01:00
Cody Glassman
9cafc31c0d Restore ripples with soft particles 2022-01-19 11:32:38 +00:00
uramer
a496f16cdb Implement gyro camera for controllers 2022-01-18 22:47:49 +01:00
uramer
9fa0faf944 Refactor sensor manager to match controller manager gyro API 2022-01-18 21:11:25 +01:00
uramer
55f95f1ea3 Enable controller gyro and capture the values 2022-01-18 20:23:16 +01:00
Petr Mikheev
9d0e427ec1 Merge branch 'dispose_lua_ui_correctly' into 'master'
Dispose Lua UI elements correctly

See merge request OpenMW/openmw!1561
2022-01-18 08:12:56 +00:00
uramer
cc528d2e08 Dispose Lua UI elements correctly 2022-01-18 08:12:56 +00:00
uramer
d1d8f058ac Lua bindings for Colours 2022-01-17 22:35:06 +00:00
psi29a
4e93716584 Merge branch 'always_bigobj' into 'master'
Always use /bigobj, clean up scattered uses into one

See merge request OpenMW/openmw!1476
2022-01-17 08:05:19 +00:00
uramer
886dee57ee Always use /bigobj, clean up scattered uses into one 2022-01-17 08:05:19 +00:00
wareya
20cbf941fb re-introduce short circuiting, but only under certain circumstances 2022-01-16 17:58:04 -05:00
wareya
784b1888a9 Merge branch 'upstream' into movement_tweaks 2022-01-16 17:19:20 -05:00
psi29a
fd7e0b74cc Merge branch '6303-jail-stuck-attack' into 'master'
#6303 Made player stop attacking and sheathe weapon when going to jail

See merge request OpenMW/openmw!1551
2022-01-16 10:15:47 +00:00
Artem Nykolenko
a5cdc889a2 #6303 Made player stop attacking and sheathe weapon when going to jail 2022-01-16 10:15:47 +00:00
uramer
c07fb75bf7 Merge branch 'lua_settings' into 'master'
Permanent storage for Lua

See merge request OpenMW/openmw!1489
2022-01-15 21:52:09 +00:00
jvoisin
2142e4b241 Merge branch 'scale_your_guar' into 'master'
Make scaleObject a no-op when not changing scale

Closes #6551

See merge request OpenMW/openmw!1559
2022-01-15 17:17:18 +00:00
uramer
ae641811cf Merge branch 'lua_vector' into 'master'
Use double precision for vectors serialization in Lua

See merge request OpenMW/openmw!1558
2022-01-15 16:14:04 +00:00
Petr Mikheev
4677912997 Remove incorrect destructor that was added in !1557. 2022-01-15 13:59:22 +01:00
Evil Eye
5fcb2cabc8 Make scaleObject a no-op when not changing scale 2022-01-15 13:04:15 +01:00
Petr Mikheev
1b7e923b2c Lua fixes 2022-01-15 12:01:30 +00:00
Petr Mikheev
97d56e198f Use double precision for vectors serialization in Lua 2022-01-15 11:25:30 +01:00
Petr Mikheev
a182fdeea1 Permanent storage for Lua data 2022-01-11 11:21:03 +01:00
psi29a
781b014183 Merge branch 'toggable_daynightswitch' into 'master'
Toggable day night switch (#5928)

Closes #5928

See merge request OpenMW/openmw!1549
2022-01-11 09:34:19 +00:00
Cody Glassman
8ec0a52605 Toggable day night switch (#5928) 2022-01-11 09:34:19 +00:00
Petr Mikheev
2d1b100239 Change terminology of gameSecond/gameHour to simulationTime/gameTime 2022-01-10 21:03:35 +01:00
Josquin Frei
d9672f7d46 Add serialization for TransformM and TransformQ 2022-01-10 12:42:03 +00:00
psi29a
a1f8db7600 Merge branch 'bright_spells' into 'master'
Replicate Morrowind spell lighting (#4949)

Closes #4949

See merge request OpenMW/openmw!1544
2022-01-09 11:07:14 +00:00
cody glassman
8216410e7d add white ambient to spell VFX as in Morrowind 2022-01-08 16:19:42 -08:00
cody glassman
e32d3d11ce ensure readbuffer is bound before using glReadPixels 2022-01-08 16:12:24 -08:00
psi29a
011a26684a Merge branch 'fix_wizard_dialogs' into 'master'
Fix wizard dialogs

See merge request OpenMW/openmw!1519
2022-01-07 14:35:12 +00:00
Josquin Frei
63a8bc5f9b Fix wizard dialogs 2022-01-07 14:35:11 +00:00
Cody Glassman
cdae1c4c97 Heavily mitigate jittery objects far from origin 2022-01-06 22:01:28 +00:00
psi29a
d8d7a3b372 Merge branch 'softparticles_patch' into 'master'
Shadervisitor adjustments and Mac OS fix for soft particles

See merge request OpenMW/openmw!1380
2022-01-06 13:13:52 +00:00
Evil Eye
cd6edb961a Remove dead code 2022-01-05 17:22:22 +01:00
psi29a
e0612db01c Merge branch 'viewport_update' into 'master'
Use updated resolutions when setting projection matrix

See merge request OpenMW/openmw!1533
2022-01-05 10:43:30 +00:00
Cody Glassman
a7166aa05c Use updated resolutions when setting projection matrix 2022-01-05 10:43:30 +00:00
psi29a
24b9c91ef8 Merge branch 'fix_copy_init' into 'master'
Fix unnecessary-copy-initialization

See merge request OpenMW/openmw!1531
2022-01-05 09:05:57 +00:00
psi29a
5eba352c98 Merge branch 'correct_depth_function' into 'master'
Use correct depth functions (#6537)

Closes #6537

See merge request OpenMW/openmw!1534
2022-01-05 08:38:05 +00:00
psi29a
d8cc08a7a0 Merge branch 'ripple_fix' into 'master'
Fix persistent ripples (#6531)

Closes #6531

See merge request OpenMW/openmw!1535
2022-01-05 08:37:27 +00:00
glassmancody.info
909aa43ba1 update sky particle node correctly 2022-01-04 14:10:39 -08:00
jvoisin
27af776735 Fix unnecessary float-to-double promotion 2022-01-04 22:01:52 +00:00
glassmancody.info
2c52695361 fix regression where LEQUAL was used instead of LESS for depth function 2022-01-04 12:23:37 -08:00
jvoisin
421e6629ad Fix unnecessary-copy-initialization
> warning: the variable 'key' is copy-constructed from a const reference but is
only used as const reference; consider making it a const reference
[performance-unnecessary-copy-initialization]

Found by clang-tidy.
2022-01-04 20:42:09 +01:00
psi29a
476d8b7e86 Merge branch 'fix_asan_error' into 'master'
Fix ASAN error: heap-use-after-free

See merge request OpenMW/openmw!1495
2022-01-04 10:29:37 +00:00
psi29a
0766e1310b Merge branch 'lunacy' into 'master'
Don't touch base stats when turning into a werewolf

Closes #6333

See merge request OpenMW/openmw!1511
2022-01-04 10:27:48 +00:00
psi29a
e16245278e Merge branch 'lit_ur' into 'master'
Fix Dagoth Ur's Fire Shield not being visible

See merge request OpenMW/openmw!1514
2022-01-04 10:22:45 +00:00
psi29a
0dc4a668c3 Merge branch 'moralizing' into 'master'
Fix demoralize and rally being swapped

Closes #6532

See merge request OpenMW/openmw!1524
2022-01-04 08:49:10 +00:00