elsid
693f4c40f4
Use ESM::RefId as key for Data::mRefLoadCache
2023-03-03 15:44:18 +01:00
elsid
419a86f0b9
Use ESM::RefId for actor parts
...
To avoid redundant conversion RefId to string and back.
2023-03-03 15:44:14 +01:00
elsid
4cb095ce39
Use ESM::RefId as key for MergeReferencesStage::mIndex
2023-03-03 15:41:56 +01:00
elsid
eb17f0ba06
Use ESM::RefId as key in TestInterpreterContext::mMembers
2023-03-03 15:41:56 +01:00
elsid
3c9dbb11cc
Use ESM::RefId as key for SavingState::mSubRecords
2023-03-03 15:41:53 +01:00
elsid
dfcea389be
Add helper functions for string comparison to RefId
2023-03-03 00:39:55 +01:00
Evil Eye
b762807dfb
Reopen audio device on disconnect
2023-03-02 22:58:07 +01:00
Evil Eye
754dac6103
Copy alext.h from OpenAL Soft 1.23
2023-03-02 22:57:00 +01:00
Cédric Mocquillon
d30deef4b5
Use the right archive type to load bsa according to their type
2023-03-02 21:07:54 +01:00
Cédric Mocquillon
974799c011
Handle DX10 case of ba2 format
2023-03-02 18:40:44 +01:00
Cédric Mocquillon
c1fbe90953
Handle GNRL case of ba2 format
2023-03-02 18:19:58 +01:00
psi29a
340a2aa826
Merge branch 'ref_id_cmp_string_view' into 'master'
...
Support RefId comparison with std::string_view
See merge request OpenMW/openmw!2784
2023-03-02 12:49:28 +00:00
psi29a
3d8acf17bd
Merge branch 'shadervisitor' into 'master'
...
Attach shaders to geometry that lacks a stateset if necessary (bug #7251 )
See merge request OpenMW/openmw!2782
2023-03-01 17:09:32 +00:00
psi29a
09c784c840
Merge branch 'bullettime' into 'master'
...
Don't combine static node collision geometry (bug #6027 )
Closes #6027
See merge request OpenMW/openmw!2779
2023-03-01 13:01:16 +00:00
jvoisin
136a3c6f77
Merge branch 'cs_cleanup' into 'master'
...
Cleanup inheritance and id related editor code
See merge request OpenMW/openmw!2781
2023-03-01 12:53:32 +00:00
elsid
2fcb94064d
Support RefId comparison with std::string_view
2023-02-28 23:04:48 +01:00
Alexei Kotov
7fd9b27b54
Don't combine static node collision geometry (bug #6027 )
2023-03-01 00:41:04 +03:00
elsid
c03d3360d9
Remove redundant virtual modifiers, add override and final modifiers
2023-02-28 21:18:38 +01:00
Alexei Dobrohotov
6aef366fd3
Attach shaders to geometry that lacks a stateset if necessary
2023-02-28 20:13:16 +03:00
psi29a
a9fdb51041
Merge branch 'fix_lua_memoryleak' into 'master'
...
Fix Lua memory leak (#7128 )
Closes #7128
See merge request OpenMW/openmw!2774
2023-02-28 08:33:48 +00:00
elsid
a09612264c
Fix setRecordId overload declaration
...
To match other declarations arguments order.
2023-02-27 23:35:50 +01:00
Alexei Dobrohotov
540fa00f12
Don't use ESM4::Lighting fog power as fog density
2023-02-27 05:50:58 +03:00
Petr Mikheev
b0a6e4e510
[Lua] Add memory usage test
2023-02-26 19:59:53 +01:00
Cody Glassman
924ba11826
Default shader at root
...
Assign a default shader to the scene root, otherwise objects without an assigned shader will use the FFP. An example of this is a trishape with no material, resulting in an empty stateset on the drawable level.
2023-02-26 09:32:25 -08:00
psi29a
2aac6abb85
Merge branch 'sun_writes' into 'master'
...
Sun flickering on Mac (part of #7052 )
See merge request OpenMW/openmw!2768
2023-02-26 15:32:07 +00:00
psi29a
e8e97679f7
Merge branch 'vsync' into 'master'
...
Add support for non-adaptive VSync
Closes #7129
See merge request OpenMW/openmw!2769
2023-02-26 13:28:56 +00:00
uramer
552614768f
Fix clang format
2023-02-26 14:07:48 +01:00
Andrei Kortunov
be488649c3
Add support for non-adaptive VSync (feature 7129)
2023-02-26 15:19:19 +04:00
Andrei Kortunov
83d15ef786
Fix Clang-Format complaints
2023-02-26 14:34:56 +04:00
Alexei Kotov
c3c61e1cd3
Merge branch 'conjure_cheap_tricks' into 'master'
...
Increase priority of Bound and Summon spells
Closes #2623
See merge request OpenMW/openmw!2745
2023-02-26 07:42:56 +00:00
Cody Glassman
fb5979312f
fix sunglare flash, make sure all bound render targets have color masks set
2023-02-25 15:14:01 -08:00
psi29a
8651ea4412
Merge branch '7214-add-searching-to-ingame-console' into 'master'
...
Searching in the in-game console
Closes #7214
See merge request OpenMW/openmw!2759
2023-02-25 23:13:12 +00:00
psi29a
c02a159a26
Merge branch 'shader_refactor_v2' into 'master'
...
Shader refactor
See merge request OpenMW/openmw!2667
2023-02-25 23:11:21 +00:00
Cody Glassman
ac4787aeec
shade refactor
2023-02-25 11:03:39 -08:00
psi29a
99acfdccb8
Merge branch 'rm_id_accessor' into 'master'
...
Remove redundant IdAccessor type
See merge request OpenMW/openmw!2764
2023-02-25 14:38:31 +00:00
Evil Eye
702de406ff
Take skill into account when summoning weapons
2023-02-25 14:20:04 +01:00
Evil Eye
ad76b0374a
Increase priority of Bound and Summon spells
2023-02-25 14:19:50 +01:00
elsid
4ed0960856
Remove redundant IdAccessor type
...
Use overloaded free functions instead.
2023-02-25 13:49:22 +01:00
Petr Mikheev
1c2f24d1ca
Remove unused searchInContainers in WorldModel::getPtr
2023-02-23 01:57:23 +01:00
Petr Mikheev
47b7c71c73
Remove unused functions
2023-02-23 01:57:23 +01:00
Shihan42
902cad77c8
Resolve minor errors
2023-02-22 20:15:45 +01:00
Shihan42
274afff5c3
Minimal length of search string is now 1
2023-02-22 11:21:04 +01:00
Shihan42
b83cf9a92e
Search is case-insensitive
2023-02-22 11:20:50 +01:00
Shihan42
ef879b5865
Rewriting the search methods
2023-02-21 15:01:16 +01:00
Shihan42
54f1f380e1
Add complete search functionality for forward and backward searching
2023-02-21 13:51:27 +01:00
Shihan42
b80556b5af
Add buttons to search for next and previous occurrence
2023-02-21 12:25:17 +01:00
Shihan42
63659224fd
Add new EditBox for searching to console layout
2023-02-20 18:18:00 +01:00
Cédric Mocquillon
6e23ad82d5
Load esm files from vfs
2023-02-19 21:58:19 +01:00
psi29a
a43b6fba4b
Merge branch 'fix_7223' into 'master'
...
Fix #7223
Closes #7223
See merge request OpenMW/openmw!2736
2023-02-18 22:19:00 +00:00
psi29a
0f331a4fc5
Merge branch 'lua_callback' into 'master'
...
Fix potential memory leak in LuaUtil::Callback
See merge request OpenMW/openmw!2733
2023-02-18 21:05:07 +00:00
Petr Mikheev
0c3237ad78
Fix #7223
2023-02-18 16:24:10 +01:00
Evil Eye
f5c5ebc1dc
Prevent consumption of ingredients that don't have a first effect
2023-02-18 15:30:02 +01:00
psi29a
0ed1310417
Merge branch 'fix_fog_state_load' into 'master'
...
Fix loading fog state
See merge request OpenMW/openmw!2743
2023-02-18 07:27:05 +00:00
elsid
b5ec584be2
Replace ESM::RefId::sEmpty by default constructed RefId where possible
...
Static const is only required to provide a reference or a pointer when it is not
possible with default constructed temporary.
2023-02-18 01:07:15 +01:00
elsid
8a62a4fe4d
Support dump for ESM3 CSTA record in esmtool
2023-02-17 23:51:22 +01:00
elsid
28f7a89530
Reuse dtNavMeshQuery
...
To avoid redundant allocations.
2023-02-17 15:05:25 +01:00
elsid
540ee5399c
Do expensive navmesh calls on timer
...
Reducing the number of them on each frame.
2023-02-17 15:05:24 +01:00
psi29a
d846a9fc15
Merge branch 'cs_optimize_saving' into 'master'
...
Fix editor saving performance
See merge request OpenMW/openmw!2741
2023-02-17 13:30:20 +00:00
elsid
e618026c69
Use ESM::RefId as index key in collections
2023-02-17 11:08:46 +01:00
elsid
b2299ef914
Optimize saving in editor
2023-02-17 11:05:25 +01:00
elsid
8383fa3547
Log time spent on document operations in editor
2023-02-17 00:23:02 +01:00
psi29a
18d488d968
Merge branch 'ref_id_class' into 'master'
...
Convert RefId to class
See merge request OpenMW/openmw!2739
2023-02-15 23:41:58 +00:00
elsid
996153f78d
Convert RefId to class
2023-02-15 23:20:44 +01:00
elsid
b6a2fd8fc1
Simplify InfoCollection
...
There was additional logic to create topic infos index by topic id to make
getTopicInfos and removeDialogueInfos functions faster. In practice it makes
loading slower.
Move infos index by topic to CSMWorld::Data and use only on loading.
2023-02-15 23:10:35 +01:00
elsid
de24cdc12c
Log content files loading time by editor
2023-02-15 21:29:13 +01:00
psi29a
a0cea6569b
Merge branch 'took_an_arrow_to_the_disposition_cap' into 'master'
...
Cap temporary disposition gain and compute permanent changes accordingly
Closes #7224
See merge request OpenMW/openmw!2734
2023-02-14 21:16:21 +00:00
Petr Mikheev
eceeb15ee5
Fix bug in lua_ui/content.lua: getmetatable(ui.content{}) shouldn't return a global mutable table
2023-02-14 21:08:19 +01:00
Petr Mikheev
65885d994f
Don't expose LuaUtil::Callback to lua
2023-02-14 21:08:19 +01:00
Evil Eye
0aa4235096
Cap temporary disposition gain and compute permanent changes accordingly
2023-02-14 20:08:11 +01:00
Petr Mikheev
71ba7b88e2
Move asyncpackage from apps/openmw/mwlua to components/lua
2023-02-14 20:03:32 +01:00
elsid
6d261d38dd
Add functions to read and write ESM::RefId and use them
...
To be later changed with another implementation.
2023-02-13 22:07:58 +01:00
psi29a
bf0da418f9
Merge branch 'feet_stay_wet' into 'master'
...
Use the teleported Ptr to determine if water walking should be canceled
Closes #7227
See merge request OpenMW/openmw!2731
2023-02-13 17:51:42 +00:00
Evil Eye
8cabc1bf3b
Use the teleported Ptr to determine if water walking should be canceled
2023-02-13 16:38:39 +01:00
elsid
80e6d6cbe3
Support variable size strings in ESM3
2023-02-13 10:18:32 +01:00
elsid
beb017e699
Do not truncate too long strings on writing ESM
2023-02-13 10:18:32 +01:00
elsid
12d36fb1d7
Add missing include
2023-02-13 10:02:30 +01:00
elsid
076e772e3d
Use shared locks in physics system when using multithreaded bullet
2023-02-12 14:51:46 +01:00
psi29a
bfb6bab33b
Merge branch 'luaclothingbinds' into 'master'
...
Lua API for Clothing records
See merge request OpenMW/openmw!2723
2023-02-12 09:47:53 +00:00
Alexei Kotov
09716c644e
Assault victims are always aware of the committed crime (bug #7064 )
2023-02-12 03:59:20 +03:00
Kindi
4734504e2c
Lua binding for Clothing
2023-02-12 00:19:08 +08:00
elsid
1e9e7b7607
Add tests to save and load some ESM3 records
2023-02-11 16:20:10 +01:00
elsid
2e64155c0f
Use signed type for left record and files size in ESM3 reader context
...
Otherwise reading some of the records like ESM::CellRef without a subrecord
after could lead to underflow of ESM_Context::leftRec which makes
ESM::ESMReader::hasMoreSubs to return true and load hangs for a while trying to
read the same subrecord many times.
Fix ESM::Variant tests since it's now required to have a record for any ESM
data. Add 16 (size of record header) to all expected data sizes.
2023-02-11 16:09:14 +01:00
psi29a
f87b9e7bcb
Merge branch 'postprocesshud' into 'master'
...
Improve post-process HUD search field usability (#7198 )
Closes #7198
See merge request OpenMW/openmw!2717
2023-02-11 10:50:04 +00:00
psi29a
8040d7a72a
Merge branch 'hopechess' into 'master'
...
Unequip the weapon only after finishing the attack (bug #4610 )
Closes #4610
See merge request OpenMW/openmw!2719
2023-02-11 10:49:08 +00:00
Alexei Kotov
0485b23b5f
Reimplement region for TES3 cells
2023-02-11 09:36:15 +03:00
Alexei Kotov
0f7822fff8
Unequip the weapon only after finishing the attack (bug #4610 )
2023-02-11 09:00:20 +03:00
Alexei Kotov
1df5fd341b
Don't override post-processing HUD search field focus
2023-02-11 03:04:39 +03:00
Alexei Kotov
3b8001d55d
Make post-processing HUD search case-insensitive
2023-02-11 02:56:15 +03:00
psi29a
a31d381611
Merge branch 'esm_format_version' into 'master'
...
Name all custom ESM format versions and add tests
See merge request OpenMW/openmw!2712
2023-02-10 20:43:06 +00:00
elsid
080700f8fe
Name all custom ESM format versions and add tests
2023-02-10 19:54:15 +01:00
psi29a
5eba755174
Merge branch 'forwardtothepast' into 'master'
...
Support /-separated big effect icon paths
See merge request OpenMW/openmw!2711
2023-02-10 17:44:26 +00:00
psi29a
886600a1dd
Merge branch 'consoledisposal' into 'master'
...
Check if the console's selected object is available (bug #5870 )
Closes #5870
See merge request OpenMW/openmw!2713
2023-02-10 17:26:54 +00:00
psi29a
d3874644c1
Merge branch 'oripaging' into 'master'
...
Try printing template textures if instance textures are unavailable for any reason
See merge request OpenMW/openmw!2709
2023-02-10 16:53:02 +00:00
Alexei Kotov
7b62d47abc
Support /-separated big effect icon paths
2023-02-10 18:34:20 +03:00
Andrei Kortunov
5836bd8d87
Remove redundant include
2023-02-10 19:24:12 +04:00
Alexei Kotov
e96448d66f
Use model template as a fallback in BetaComment
2023-02-10 17:24:02 +03:00
Alexei Kotov
f356d0a2fc
Check if the console's selected object is available (bug #5870 )
2023-02-10 16:08:38 +03:00
psi29a
b385f27f86
Merge branch 'console_history' into 'master'
...
Remembering console commands between sessions
Closes #7125
See merge request OpenMW/openmw!2603
2023-02-10 11:54:45 +00:00
Kindi
044d82a842
Remembering console commands between sessions
2023-02-10 11:54:45 +00:00
psi29a
f14031b30b
Merge branch 'ori' into 'master'
...
Print bound textures in BetaComment (feature #7194 )
See merge request OpenMW/openmw!2705
2023-02-10 07:45:57 +00:00
Alexei Kotov
192f79841b
Print bound textures in BC (feature #7194 )
2023-02-10 03:05:33 +03:00
Alexei Kotov
5340c2c816
Fix Lua ingredient bindings
2023-02-10 02:50:13 +03:00
elsid
d20b05c7fb
Support reading specific nif files from archive by niftest
2023-02-08 22:59:33 +01:00
elsid
2c43a8558a
Add option to disable debug log for unsupported nif files
...
It becomes quite extensive and not very useful when loading oblivion content
files.
2023-02-08 22:59:29 +01:00
elsid
ac5f22445e
Support compressed BSA archives by niftest
2023-02-08 22:07:37 +01:00
elsid
1a2c56fefb
Fix checking for file extension in niftest
2023-02-08 21:54:25 +01:00
elsid
36b33cc1a5
Support absence of player and other actors in physics system
2023-02-08 20:19:59 +01:00
psi29a
944931c9bf
Merge branch 'load_esm4_lights' into 'master'
...
Adds ESM4 light into ESM4 Cells
See merge request OpenMW/openmw!2692
2023-02-07 16:50:10 +00:00
Andrei Kortunov
9ad0e2f4e6
Migrate Grow Limit editor feature to a more modern code
2023-02-07 20:09:59 +04:00
florent.teppe
486d15b19e
moved light common to its own file
...
moved esm4light to it's own file
2023-02-07 16:29:17 +01:00
elsid
4b8941677d
Do not write binary data to std::cout by esmtool
2023-02-07 10:40:31 +01:00
florent.teppe
dc961e3189
Adds the light into the scene.
...
Common struct for ESM3 and ESM4 light
2023-02-07 10:07:59 +01:00
elsid
f09789002a
Define hardcoded global variable names as constants
2023-02-07 00:47:34 +01:00
elsid
af003d94f8
Log error when failed to open stats file
2023-02-06 21:52:35 +01:00
psi29a
a0795ba7ae
Merge branch 'launch_fix' into 'master'
...
Fix some non-ASCII path issues
Closes #6817
See merge request OpenMW/openmw!2686
2023-02-06 19:50:30 +00:00
psi29a
91a4c09fa6
Merge branch 'oldtelvanniheart' into 'master'
...
Use correct exterior cell when positioning
See merge request OpenMW/openmw!2688
2023-02-06 19:46:00 +00:00
florent.teppe
a71a86e64a
Load light models in the engine. Doesn't emit light
2023-02-06 20:22:17 +01:00
psi29a
4f001d8736
Merge branch 'qt6' into 'master'
...
Add an initial Qt6 support
See merge request OpenMW/openmw!2684
2023-02-06 16:55:20 +00:00
Evil Eye
97c6d25d54
Use correct exterior cell when positioning
2023-02-06 16:36:45 +01:00
Andrei Kortunov
7e2aedf637
Add an initial Qt6 support
2023-02-06 18:38:59 +04:00
Andrei Kortunov
5836d27928
Fix ContentSelector usage with non-ASCII paths
2023-02-06 13:36:02 +04:00
psi29a
4032c447e9
Merge branch 'load-ESM4-Cell' into 'master'
...
Can load and coc into an interrior oblivion cell
See merge request OpenMW/openmw!2647
2023-02-06 08:56:23 +00:00
glassmancody.info
e778ffee9b
po2 scaling for average luminance
2023-02-05 12:30:38 -08:00
psi29a
aee7716c3a
Merge branch 'launcher_typed_settings' into 'master'
...
Typed launcher settings
See merge request OpenMW/openmw!2650
2023-02-04 23:41:59 +00:00
psi29a
8b0e55dd5f
Merge branch 'remove-water-walking-teleport-underwater' into 'master'
...
teleporting to an underwater marked location will remove water walking spell effects from actor
Closes #7122
See merge request OpenMW/openmw!2656
2023-02-04 23:41:29 +00:00
psi29a
822c6ac6a7
Merge branch 'fix_warnings' into 'master'
...
Enable and fix new warnings
See merge request OpenMW/openmw!2679
2023-02-04 23:40:06 +00:00
florent.teppe
084207af64
Avoids a lot a special cases for ESM3 vs ESM4 cells.
2023-02-04 23:25:06 +01:00
James-Deciutiis
273a2ae323
teleporting to an underwater marked location will remove water walking spell effects from actor
...
fix formatting
addressing hasWaterWalking comment
refactor to address remaining comments
clean up formatter changes
adding suggested condition to if statement
move isWaterWalking check into if statement
refactor if block to see if actor needs to have water walking purged
added entry to changelog.md and authors.md
removing redundant check from if statement
Sort previous changelog entry
2023-02-04 11:30:37 -08:00
florent.teppe
f3d5f6345e
Fixed large lambdas that affected readability.
2023-02-04 17:16:42 +01:00
florent.teppe
1caed2de2a
Applies some review comments.
...
Proper visit for ESM::CellVariant
Fixed MWWorldCell constructor
2023-02-04 17:09:54 +01:00
unelsson
fe70285ac1
Fixes
2023-02-04 15:32:17 +02:00
elsid
f1dbd9b959
Fix -Wduplicated-branches warnings
2023-02-04 00:10:30 +01:00
elsid
c79c14da91
Fix -Wnon-virtual-dtor warnings
2023-02-03 23:00:09 +01:00
psi29a
3f9cae7947
Merge branch 'dragdetails' into 'master'
...
[OpenMW-CS] Generate record filters based on cell content and column header
Closes #7161
See merge request OpenMW/openmw!2617
2023-02-03 09:29:36 +00:00
psi29a
68b3b90255
Merge branch 'ui_content_leak' into 'master'
...
Move implementation of UI Content to Lua (#7155 )
See merge request OpenMW/openmw!2661
2023-02-01 22:51:47 +00:00
psi29a
9c92a8ab57
Merge branch 'fix_gpu_osg_stats' into 'master'
...
Delay OSG stats reporting for 3 frames
See merge request OpenMW/openmw!2677
2023-02-01 22:49:18 +00:00
elsid
96ea1903c5
Delay OSG stats reporting for 3 frames
...
Instead of 2 to make sure GPU draw time taken is always reported.
2023-02-01 22:01:55 +01:00
Evil Eye
31b2112e4a
Don't lowerCase twice when getting globals
2023-02-01 18:15:49 +01:00
uramer
e96681151c
Get rid of the LuaUI::Content namespace
2023-02-01 17:18:50 +01:00
uramer
d24c506b0e
Move metatable protection asserts to tests
2023-02-01 16:34:32 +01:00
uramer
fb0646dda1
Remove Ui Content counter in Lua profiler
2023-01-31 19:52:28 +01:00
uramer
bbbef96087
Switch to loadInternalLib
2023-01-31 19:50:33 +01:00
Petr Mikheev
c4e8d38e30
Do several passes of garbage collecting in LuaManager::clear()
2023-01-31 11:08:01 +00:00
psi29a
3a986d9a51
Merge branch 'macos_water_compile_fix' into 'master'
...
Fix building water.cpp on macos
See merge request OpenMW/openmw!2670
2023-01-31 11:00:55 +00:00
florent.teppe
4e7cde5d72
applied some review changes.
...
crashfix tests
2023-01-30 20:49:34 +01:00
psi29a
92f88c16a9
Merge branch 'remove-strerror' into 'master'
...
Remove strerror usages
Closes #7151
See merge request OpenMW/openmw!2664
2023-01-30 17:09:39 +00:00
psi29a
68ad3f8f10
Fix building water.cpp on macos
2023-01-30 17:04:41 +00:00
psi29a
ac8ae3f226
Merge branch 'journalbooks' into 'master'
...
Use string_view in journalbooks
See merge request OpenMW/openmw!2663
2023-01-30 13:25:12 +00:00
psi29a
6559860310
Merge branch 'water_nm_to_vfs' into 'master'
...
Move water normal to vfs (#7180 )
Closes #7180
See merge request OpenMW/openmw!2657
2023-01-30 13:18:27 +00:00
psi29a
ef0a81e811
Merge branch 'integration_tests_crash_log' into 'master'
...
Use proper log paths and print crash log in integration tests CI job
See merge request OpenMW/openmw!2668
2023-01-30 12:12:21 +00:00
Petr Mikheev
3096111abb
Merge branch 'docs_fixes' into 'master'
...
Documentation and API fixes (part of !2529 )
See merge request OpenMW/openmw!2649
2023-01-30 10:13:26 +00:00
uramer
c17eedd348
Documentation and API fixes (part of !2529 )
2023-01-30 10:13:26 +00:00
elsid
c44bc5ade5
Setup logging with properly initialized configuration manager
...
Default constructed instance may provide different paths from initialized one.
2023-01-30 09:30:55 +01:00
Andrzej Głuszak
9b0a499b58
Remove strerror usages
2023-01-29 22:41:59 +01:00
Andrzej Głuszak
66e5fbb286
Use string_view in journalbooks
2023-01-29 21:31:21 +01:00
unelsson
5bbe9bc5d8
cleanup and style (const ref instead of value, consistent ifndef naming)
2023-01-29 21:42:01 +02:00
unelsson
6b0998ff85
Implement enum class FilterType
2023-01-29 21:23:28 +02:00
glassmancody.info
897ee702d1
move water normal to vfs
2023-01-29 11:14:08 -08:00
uramer
259f104311
Clean up
2023-01-29 19:40:13 +01:00
unelsson
2e7d41373b
Remove unused includes, fix std::get logic at editwidget
2023-01-29 20:35:00 +02:00
uramer
3618b3f409
Fix Content::View::remove
2023-01-29 18:52:18 +01:00
uramer
fc1430af95
Move implementation of UI Content to Lua
2023-01-29 17:07:38 +01:00
unelsson
2fac4d0e40
Use struct with sensible member names
2023-01-29 17:25:25 +02:00
psi29a
3a9a60a453
Merge branch 'esmtool_esm4_globals' into 'master'
...
Support more fields in esmtool for ESM4
See merge request OpenMW/openmw!2659
2023-01-29 11:30:01 +00:00
psi29a
29aa18659d
Merge branch 'handle_bad_navmeshtool_message_magic' into 'master'
...
Stop updating navmeshtool progress on first bad message
See merge request OpenMW/openmw!2654
2023-01-29 11:28:40 +00:00
florent.teppe
144e0197fb
fix charge int + struct vs class mismatch
2023-01-29 12:27:41 +01:00
florent.teppe
ebfee18e35
implements std::visit for CellVariant, fixes struct vs class forward decl
2023-01-29 11:28:39 +01:00
florent.teppe
0723c32428
flags no longer bitfield
2023-01-29 10:59:39 +01:00
florent.teppe
aa29f86efe
fixed struct vs class.
2023-01-29 10:59:39 +01:00
fteppe
808c7367c9
Fix compile
2023-01-29 10:54:21 +01:00
elsid
d541436b15
Support parent, type and value fields in esmtool for ESM4
2023-01-29 03:02:00 +01:00
elsid
e7acced5e9
Move metafunctions to check ESM4 field existence to a separate header
2023-01-29 03:00:48 +01:00
elsid
5bb088218e
Restore original formId
...
To make sure esmtool prints original value and not a result of conversion.
2023-01-29 02:35:06 +01:00
glassmancody.info
165013ddd6
remove redunant conditional checks when getting uniforms
2023-01-28 10:40:24 -08:00
florent.teppe
9054722f4a
std::visit everywhere!
2023-01-28 19:21:13 +01:00
florent.teppe
f9da66e9ee
Greatly improved how the variant on MWWorld::CellRef works
2023-01-28 18:57:55 +01:00
florent.teppe
216ca71149
Applied review comments
...
getEditorName => getNameId
restored cosntructor in CoordinateConverter
2023-01-28 12:14:00 +01:00
florent.teppe
e6e27413d9
gives MWWorld::CellRef the MWWorld::Cell treatment
...
MWWorld::CellRef now has a variant, and datas that are part of the intersection of both ESM4::Reference and ESM::CellRef are part of MWWorld::CellRef
For ESM4 most data isn't filled in, so it returns default values.
2023-01-27 19:40:45 +01:00
elsid
8be2fc9fd7
Stop updating navmeshtool progress on first bad message
2023-01-27 19:10:53 +01:00
florent.teppe
23614ae2ae
Renamed esm3esm4bridge => esmbridge
2023-01-27 18:40:15 +01:00
florent.teppe
5037dcf9bc
Fixes a crash on launch and some compile issue
...
also uses std::visit in cellstore comparison to avoid missing combinasion
split loadrefs in loadref of ESM4 and ESM3.
2023-01-27 16:41:00 +01:00
florent.teppe
cb8cdd8831
ESM::CellVariant aans MWWorld:Cell now take reference in constructor: signals that nullptr isn't accepted.
...
also applied other review comments.
2023-01-27 14:07:50 +01:00
florent.teppe
531e55e04c
Better handling of the esm3 vs esm4 cell problem
...
Common attribute are in one structure that has two constructors, one for ESM3 vs ESM4 Cell
Mood part of MWWorld::Cell
2023-01-27 13:39:39 +01:00
elsid
cf75363290
Typed launcher settings
...
QMultiMap is not clear about what settings exist and it's not efficient way to
access them after they are loaded.
2023-01-27 12:42:05 +01:00
elsid
b1d0ee1f1b
Load only launcher.cfg from user folder
...
There is no other launcher.cfg.
2023-01-27 12:41:33 +01:00
elsid
0961720835
Join path components using path::operator/ instead of string::operator+
2023-01-27 01:07:15 +01:00
florent.teppe
6d25d4bc13
It loads cells and palce sstatics in them
...
Many missing meshes, no lights etc... But can coc into interior cells and see them.
2023-01-26 22:37:32 +01:00
florent.teppe
3515c8e61a
Static references are created as refcells, nothing displayed yet.
2023-01-26 22:37:32 +01:00
florent.teppe
c896a2ca48
Crashfix on launch
2023-01-26 22:37:32 +01:00
florent.teppe
0018bcf7de
Should make cellvariant safer to use.
...
Hopefully clang tidy agrees.
2023-01-26 22:37:32 +01:00
florent.teppe
562e129bd0
encapsulations of esm3 cell and esm4 cells.
2023-01-26 22:37:31 +01:00
florent.teppe
08b68fcd48
Cannot load a cell yet, but getting more necessary parts in
2023-01-26 22:36:11 +01:00
florent.teppe
cddf6f29d6
Nothing can be loaded yet. Just foundations.
2023-01-26 22:36:11 +01:00
unelsson
9b808a495c
Use std::variant and std::visit instead of function overloads, add float type search, fix QMetaType and Type conversion
2023-01-26 00:05:51 +02:00
Evil Eye
7ca25e6467
Fix more case issues with cells
2023-01-25 20:59:10 +01:00
psi29a
9f3025257a
Merge branch 'local_nwah' into 'master'
...
Use worldspace coords in AiWanderStorage
See merge request OpenMW/openmw!2645
2023-01-24 09:52:32 +00:00
fteppe
889de35b99
fix coc search extbyname
2023-01-23 22:49:01 +01:00
Evil Eye
d40a9ec5bc
Use worldspace coords in AiWanderStorage
2023-01-23 21:06:50 +01:00
psi29a
a9dbb023d7
Merge branch 'lua_create' into 'master'
...
Lua commands to create/move/remove objects; consistent handling of disabled objects (#6726 , #6893 )
See merge request OpenMW/openmw!2627
2023-01-22 13:27:10 +00:00
Andrei Kortunov
a774a51699
Improve duration tooltip
2023-01-22 14:32:47 +04:00
Petr Mikheev
c294898246
Lua commands to create/move/remove objects; consistent handling of disabled objects ( #6726 , #6893 )
2023-01-22 00:08:21 +01:00
psi29a
7be20301af
Merge branch '24-7lofibeatstoachievechimto' into 'master'
...
Rework music playback (bug #7172 )
Closes #7172
See merge request OpenMW/openmw!2640
2023-01-21 23:07:25 +00:00
Petr Mikheev
e7120f189b
Unset RefNums after copying containers (otherwise copies will have the same RefNums, but they should be unique)
2023-01-21 23:43:00 +01:00
Petr Mikheev
5983f22290
Remember actor in the actor's InventoryStore instead passing the actor in every call
2023-01-21 23:43:00 +01:00
psi29a
1422053fa9
Merge branch 'more_uniforms' into 'master'
...
[Postprocessing] Add sky and ambient colors
See merge request OpenMW/openmw!2638
2023-01-21 22:42:21 +00:00
florent.teppe
a4137e941c
std::string_view can be used in map and unordered map
...
This avoids some unecessary dynamic allocations.
Also applies some review advice.
2023-01-21 19:19:26 +01:00
florent.teppe
63e44eddc9
Navigator doesn't use RefId anymore
2023-01-21 18:39:57 +01:00
florent.teppe
150e2ba885
Revert "Use ESM::RefId for worldspace in detournavigator"
...
This reverts commit b4ab153418
.
# Conflicts:
# apps/navmeshtool/worldspacedata.cpp
2023-01-21 18:39:57 +01:00
florent.teppe
3780033837
Reverts Cell name to a string
2023-01-21 18:39:42 +01:00
psi29a
1390c7ed7c
Merge branch 'wizard_encodings' into 'master'
...
Do not use Qt streams with legacy encodings in the Wizard code
Closes #7165
See merge request OpenMW/openmw!2634
2023-01-21 16:37:43 +00:00
psi29a
761aef61ae
Merge branch 'normal_fix' into 'master'
...
Fix pass normals (#7146 , #7145 )
See merge request OpenMW/openmw!2635
2023-01-21 16:36:45 +00:00
psi29a
757cf7098d
Merge branch 'minor-cleanup' into 'master'
...
Use dedicated function to convert QString to std::filesystem::path
See merge request OpenMW/openmw!2636
2023-01-21 16:36:07 +00:00
Alexei Kotov
fd6e96576a
Rework music playback (bug #7172 )
2023-01-21 05:56:12 +03:00
glassmancody.info
564c408663
expose more uniforms to postprocessing
2023-01-20 17:43:54 -08:00
AnyOldName3
438b03908d
Use dedicated function to convert QString to std::filesystem::path II
...
Some missed conversions identified in review.
2023-01-20 23:39:30 +00:00
Andrei Kortunov
9a7c57874d
Do not use Qt streams with legacy encodings in the Wizard code
2023-01-20 11:24:23 +04:00
Alexei Kotov
f0e58d1c59
Merge branch 'ensure_utf8_encoding' into 'master'
...
Move ensureUtf8Encoding to named namespace
See merge request OpenMW/openmw!2632
2023-01-20 05:17:44 +00:00
AnyOldName3
f757ac642a
Use dedicated function to convert QString to std::filesystem::path
...
I noticed this while reviewing something else and trying to find the
function to recommend using it.
2023-01-19 22:36:51 +00:00
glassmancody.info
27fe8d42ae
fix pass normals
2023-01-19 09:28:51 -08:00
elsid
dd89403df0
Move ensureUtf8Encoding to named namespace
...
To follow https://github.com/isocpp/CppCoreGuidelines/blob/master/CppCoreGuidelines.md#sf21-dont-use-an-unnamed-anonymous-namespace-in-a-header
Add QtGlobal include to define QT_VERSION and QT_VERSION_CHECK macroses before
they're used.
2023-01-18 22:58:35 +01:00
Evil Eye
08f998eeb1
Delay teleportation till the menu is closed
2023-01-18 19:57:05 +01:00
psi29a
ee980721b8
Merge branch 'debug_lua_memory' into 'master'
...
Additional information in Lua profiler
See merge request OpenMW/openmw!2612
2023-01-18 14:33:05 +00:00
psi29a
3fea82c06c
Merge branch 'remove_ptr_conversion' into 'master'
...
Remove implicit conversion MWWorld::Ptr -> bool
See merge request OpenMW/openmw!2626
2023-01-18 14:32:58 +00:00
elsid
cf1d8544e3
Check agent bounds on adding agent to navigator
...
Do not add agent bounds which are not supported by recastnavigation with given
settings and log such events.
To avoid reaching navmesh tile generation to find out it can't be generated for
such agent bounds.
2023-01-18 12:00:48 +01:00
Petr Mikheev
e9420b2b68
Remove implicit conversion MWWorld::Ptr -> bool
2023-01-18 02:40:56 +01:00
unelsson
ba6c47bb07
Implement record filter search by value and QVariant type recognition
2023-01-17 02:55:47 +02:00
unelsson
fc64ab0f5a
Promise constness
2023-01-17 02:55:03 +02:00
unelsson
6a864cd9f6
Implement basic filter generation from the dragged table cell (cell content and column header)
2023-01-16 23:47:32 +02:00
unelsson
bc1027ee95
First draft of getting the exact drag start location
2023-01-16 23:47:32 +02:00
Alexei Kotov
b261f3bf65
Fix animated object physics
2023-01-16 17:08:48 +03:00
psi29a
ee862fe825
Merge branch 'qt6_fixes' into 'master'
...
Do not use reprecated Qt API where we can avoid it
See merge request OpenMW/openmw!2621
2023-01-15 21:05:51 +00:00
psi29a
ea91d861ef
Merge branch 'safely_on_the_other_side_of_the_door' into 'master'
...
End combat when the target is outside the active grid
See merge request OpenMW/openmw!2619
2023-01-15 19:00:03 +00:00
elsid
1cbe295030
Extend navigator tests for update with big object
...
Check for the number of generated recast mesh tiles and navmesh tiles.
2023-01-15 17:25:13 +01:00
Andrei Kortunov
cc1c8b2bb1
Do not use a deprecated way to get dimensions of screen where current widget is located
2023-01-15 20:23:18 +04:00
Andrei Kortunov
99a575b663
Init QVariant in Qt6-compatible way
2023-01-15 20:23:07 +04:00
Andrei Kortunov
0b3ba26d86
Init style in Qt6-compatible way
2023-01-15 20:09:56 +04:00
Andrei Kortunov
0de635dcdc
Do not use deprecated init() method
2023-01-15 20:09:56 +04:00
Andrei Kortunov
0864d997d0
Add missing includes
2023-01-15 20:09:56 +04:00
Evil Eye
358fa98bd3
End combat when the target is outside the active grid
2023-01-15 17:08:57 +01:00
psi29a
a7a89ba7c1
Merge branch 'launcher' into 'master'
...
Rework how OpenMW launcher looks
Closes #6922
See merge request OpenMW/openmw!2587
2023-01-15 16:00:59 +00:00
psi29a
dc3ec1a0a0
Merge branch 'mwscript' into 'master'
...
Multiple mwscript optimizations and some refactoring
See merge request OpenMW/openmw!2600
2023-01-15 15:59:30 +00:00
psi29a
32733d23fa
Merge branch 'xanim' into 'master'
...
X-file handling fixes (bug #5371 )
Closes #5371
See merge request OpenMW/openmw!2614
2023-01-15 15:57:27 +00:00
psi29a
9198a4e46a
Merge branch 'fix_navigator_update_for_big_object' into 'master'
...
Limit NavMeshManager update range by player tile and max tiles (#7149 )
See merge request OpenMW/openmw!2618
2023-01-15 15:53:37 +00:00
Andrei Kortunov
902c48d1bb
Rework launcher UI
2023-01-15 12:36:08 +04:00
elsid
44429f0393
Limit NavMeshManager update range by player tile and max tiles
...
Object AABB may be much larger than area currently covered by navmesh. In this
case all tiles beyond covered range should be ignored. Attempt to iterate over
them will not result in any new tile updates but can take quite a while. At
maximum this can be pow(INT_MAX - INT_MIN, 2) iterations.
Use arbitrary time limit to check for update call to finish in the test.
2023-01-15 04:46:29 +01:00
Alexei Kotov
6ff9b5d326
Make use of ends_with for KF
2023-01-15 01:48:06 +03:00
unelsson
50726636ba
clang-format
2023-01-14 21:42:33 +02:00
unelsson
7fce4bc8c4
Issue command passing through QLineInput
2023-01-14 21:30:25 +02:00
unelsson
0310b1cddf
Dragging Topics to TopicInfo window opens create TopicInfo BottomBox with the correct id
2023-01-14 20:36:49 +02:00
unelsson
7f8a84f2f2
Move Response column earlier
2023-01-14 16:19:37 +02:00
Alexei Kotov
e24db874dc
Correct xnif use for creatures
2023-01-14 04:55:12 +03:00
Alexei Kotov
434b4deda1
Don't use xkf if xnif is merely the base model (bug #5371 )
2023-01-14 04:55:12 +03:00
elsid
b88f0d2dbd
Replace mwscript program serialization into a vector with simple struct
...
Mostly to avoid string literal lookup by index with iteration over all preciding
literals and calling strlen. This is very inefficient. In genral this makes code
much more straightforward but also makes it portable since now int and float of
different sizes are properly supported.
2023-01-14 00:07:37 +01:00
Petr Mikheev
d9e9db0983
Additional information in Lua profiler
2023-01-13 21:14:23 +01:00
psi29a
203eb80afd
Merge branch 'qregexp' into 'master'
...
Simplify regex search in the editor
See merge request OpenMW/openmw!2610
2023-01-13 15:55:19 +00:00
psi29a
599f68029e
Merge branch 'only_snow' into 'master'
...
Fix invisible weather effects
See merge request OpenMW/openmw!2601
2023-01-13 09:58:51 +00:00
psi29a
b7e5759599
Merge branch 'noanchor' into 'master'
...
Replace usage of QRegularExpression::anchoredPattern with `^` and `$`
See merge request OpenMW/openmw!2607
2023-01-13 09:55:59 +00:00
Andrei Kortunov
7c8fb79745
Suppress a warnings spam when user entered an invalid regular expression
2023-01-13 12:08:42 +04:00
Andrei Kortunov
7c709167d9
Simplify regex search in the editor
2023-01-13 11:28:49 +04:00
jvoisin
c90d22f3b2
Replace usage of QRegularExpression::anchoredPattern with ^
and $
...
Using `^` and `$` is shorter than `QRegularExpression::anchoredPattern`,
and even allows us in one case to get rid of a trailing `.*`.
2023-01-12 22:52:00 +01:00
jvoisin
853ca5827e
Simplify a regex and fix a typo
...
- The usage of `|` is wrong
- It's `mWhiteListQuotes` and not `mWhiteListQoutes`
- Replace weird usage of `{}`-based quantifiers
2023-01-12 22:49:23 +01:00
Andrei Kortunov
bfcbc2350d
Handle UTF-8 in Qt streams in the Qt6-compatible way
2023-01-12 15:39:50 +04:00
Andrei Kortunov
307a60e87c
Migrate from QRegExp to more modern QRegularExpression
2023-01-11 11:21:46 +04:00
glassmancody.info
7ddf47908f
only enable occlusion for snow
2023-01-10 14:09:02 -08:00
psi29a
7c078883d5
Merge branch 'default_ref_num' into 'master'
...
Use default initializers for ESM::RefNum members
See merge request OpenMW/openmw!2598
2023-01-10 09:12:37 +00:00
psi29a
0028127b42
Merge branch 'lua_mwscript' into 'master'
...
Access local mwscript variables in Lua scripts
See merge request OpenMW/openmw!2589
2023-01-10 08:47:12 +00:00
elsid
c173348cbe
Use default initializers for ESM::RefNum members
...
Instead of unset function that is removed now and assignments all over the code.
2023-01-10 00:44:51 +01:00
glassmancody.info
23708b1ba6
correct shader name
2023-01-09 10:27:52 -08:00
psi29a
b1571b92bf
Merge branch 'fix_7135' into 'master'
...
Add missing initializer in mwworld/worldmodel.cpp (fixes #7135 )
Closes #7135
See merge request OpenMW/openmw!2596
2023-01-09 09:15:23 +00:00
psi29a
c24f43ec32
Merge branch 'occlusion_tweaks' into 'master'
...
Weather occlusion updates
See merge request OpenMW/openmw!2595
2023-01-08 22:13:36 +00:00
Petr Mikheev
2b4e613522
Add missing initializer in mwworld/worldmodel.cpp ( fixes #7135 )
2023-01-08 21:55:42 +01:00
psi29a
2754d63e45
Merge branch 'cleanup_actions' into 'master'
...
Cleanup unused actions
See merge request OpenMW/openmw!2591
2023-01-08 20:14:35 +00:00
glassmancody.info
ee1acd6eb1
add sfc setting, only add to subgraph when enabled
2023-01-08 11:55:33 -08:00
florent.teppe
0de6b79966
Fixes issue with topic info edition.
...
Also future proofs reference on RefId's string.
2023-01-08 12:59:47 +01:00
Petr Mikheev
7a0b998d4f
Cleanup unused actions
2023-01-07 23:42:53 +01:00
psi29a
b6d0d09c5a
Merge branch 'cell_hastag' into 'master'
...
[Lua] New function `cell.hasTag`
See merge request OpenMW/openmw!2567
2023-01-07 22:22:31 +00:00
psi29a
6a250c5900
Merge branch 'baby_it_is_occluded_outside' into 'master'
...
Weather Particle Occlusion (#5492 )
Closes #5492
See merge request OpenMW/openmw!1328
2023-01-07 22:18:45 +00:00
psi29a
83718878b2
Merge branch 'Load_ESM4' into 'master'
...
Loading ESM4 data and storing them in the ESMStore
See merge request OpenMW/openmw!2557
2023-01-07 22:17:17 +00:00
psi29a
a9d3186173
Merge branch 'fix_esm_fixed_string_warning' into 'master'
...
Fix gcc warning: array subscript n is outside array bounds of ‘const char [n]’
See merge request OpenMW/openmw!2585
2023-01-07 22:15:16 +00:00
Petr Mikheev
8c7cad024b
Access local mwscript variables in Lua scripts
2023-01-07 22:10:10 +01:00
Alexei Kotov
fa7991fcb3
For hit state, cancel non-biped idle if there is an active animation
2023-01-07 22:35:29 +03:00
Alexei Kotov
152bdb2f65
Prevent missing KO animations from cancelling KO
2023-01-07 22:21:56 +03:00
Andrei Kortunov
9630246cae
Sort quests in journal by name (bug 7054)
2023-01-07 18:55:51 +04:00
glassmancody.info
9a4977d334
rain occlusion
2023-01-06 22:23:03 -08:00
elsid
2bbed8cc06
Fix gcc warning: array subscript 5 is outside array bounds of ‘const char [5]’
...
In function ‘bool ESM::operator==(const FixedString<capacity>&, const T* const&) [with long unsigned int capacity = 5; T = char; <template-parameter-1-3> = void]’,
inlined from ‘testing::AssertionResult testing::internal::CmpHelperEQ(const char*, const char*, const T1&, const T2&) [with T1 = ESM::FixedString<5>; T2 = const char*]’ at /home/elsid/dev/googletest/build/gcc/release/install/include/gtest/gtest.h:1358:11,
inlined from ‘static testing::AssertionResult testing::internal::EqHelper::Compare(const char*, const char*, const T1&, const T2&) [with T1 = ESM::FixedString<5>; T2 = const char*; typename std::enable_if<((! std::is_integral<_Tp>::value) || (! std::is_pointer<_Dp>::value))>::type* <anonymous> = 0]’ at /home/elsid/dev/googletest/build/gcc/release/install/include/gtest/gtest.h:1377:64,
inlined from ‘virtual void {anonymous}::EsmFixedString_equality_operator_for_not_convertible_to_uint32_with_const_char_pointer_Test::TestBody()’ at apps/openmw_test_suite/esm/test_fixed_string.cpp:165:9:
components/esm/esmcommon.hpp:134:19: warning: array subscript 5 is outside array bounds of ‘const char [5]’ [-Warray-bounds]
134 | return rhs[capacity] == '\0';
| ~~~^
apps/openmw_test_suite/esm/test_fixed_string.cpp: In member function ‘virtual void {anonymous}::EsmFixedString_equality_operator_for_not_convertible_to_uint32_with_const_char_pointer_Test::TestBody()’:
apps/openmw_test_suite/esm/test_fixed_string.cpp:164:20: note: at offset 5 into object ‘other’ of size 5
164 | const char other[5] = { 'a', 'b', 'c', 'd', '\0' };
| ^~~~~
2023-01-06 22:09:07 +01:00
elsid
c80ba92ab7
Add more tests for ESM::FixedString
2023-01-06 21:00:29 +01:00
elsid
7c60905266
Put ESM::FixedString tests into unnamed namespace
2023-01-06 21:00:29 +01:00
psi29a
c9d57788fb
Merge branch 'save_fix' into 'master'
...
Clear character name in the loading menu when there are no saves left
See merge request OpenMW/openmw!2583
2023-01-06 18:09:00 +00:00
Andrei Kortunov
760135591b
Clear character name in the loading menu when there are no saves left (bug 7088)
2023-01-06 19:36:53 +04:00
psi29a
452ea3d353
Merge branch 'skeleton_b_gone' into 'master'
...
Don't use a levelled creature's base pointer when spawning a new instance
See merge request OpenMW/openmw!2578
2023-01-06 10:14:32 +00:00
psi29a
0d8d15a732
Merge branch 'fixcolladaanimopbug' into 'master'
...
Fix Collada animated object bug #7051
Closes #7051
See merge request OpenMW/openmw!2565
2023-01-06 10:10:27 +00:00
unelsson
bfa0e751dd
Skip merging for only animated models (Collada)
2023-01-05 01:34:26 +02:00
psi29a
c2b0c01ff2
Merge branch 'addScript' into 'master'
...
Raise an error if initData in obj:addScript has incorrect type
See merge request OpenMW/openmw!2577
2023-01-04 22:53:50 +00:00
psi29a
319aa11d84
Merge branch 'l10n_rename' into 'master'
...
Reorganize l10n files
See merge request OpenMW/openmw!2546
2023-01-04 21:48:00 +00:00
Evil Eye
a08f37cfe8
Don't use a levelled creature's base pointer when spawning a new instance
2023-01-04 22:18:56 +01:00
Petr Mikheev
4b8b3a9187
Raise an error if initData in obj:addScript has incorrect type.
2023-01-04 21:40:35 +01:00
psi29a
1e62b84f9a
Merge branch 'lua_initdata' into 'master'
...
Allow passing `initData` to the :addSript call (#7091 )
Closes #7091
See merge request OpenMW/openmw!2568
2023-01-04 14:32:23 +00:00
unelsson
d065dbbefa
Add named-based Collada recognition
2023-01-04 16:07:47 +02:00
florent.teppe
400d51c099
Fix compile MSVC
2023-01-04 14:19:12 +01:00
florent.teppe
b88eee08c2
Store display's the ESM4's RecnameInt when not found
2023-01-04 14:07:47 +01:00
florent.teppe
631fa26872
Applies review advice.
2023-01-04 12:22:16 +01:00
florent.teppe
e80dbd7c95
Moved the test to test_store.cpp where it belongs
2023-01-04 00:17:45 +01:00
florent.teppe
64a9f742da
Improves check: throws an error that says which RecName is used twice.
2023-01-03 23:28:31 +01:00
florent.teppe
9b1c405467
On store creation checks that each record has a different RecordId.
2023-01-03 22:16:42 +01:00
glassmancody.info
6b6c732a59
properly update postprocess uniform for sun position in interiors
2023-01-03 10:16:30 -08:00
psi29a
a24fa3ea51
Merge branch 'collada_animation_layering' into 'master'
...
Collada animation layering
See merge request OpenMW/openmw!2475
2023-01-03 08:53:23 +00:00
psi29a
28dcde8909
Merge branch 'controls' into 'master'
...
Fix jumping (was broken by !2541 )
See merge request OpenMW/openmw!2572
2023-01-03 08:51:21 +00:00
florent.teppe
1b66be9c70
Fix dangling reference.
2023-01-02 19:47:12 +01:00
florent.teppe
3b2d9161c4
Applied review advice
...
better deals with templated functions meant for esm3 used by esm4s.
simplified loading of esm4 and dealing with unhandled record types.
2023-01-02 19:20:03 +01:00
Petr Mikheev
f0a06258fb
[Lua] New function cell:hasTag
2023-01-02 18:24:37 +01:00
Petr Mikheev
18088e3e31
Fix jumping (was broken by !2541 )
2023-01-02 17:37:31 +01:00
Petr Mikheev
8c7d347179
Reorganize l10n files
2023-01-02 13:21:05 +01:00
florent.teppe
077cf97bc4
The esm4 reader logic is mutualised
...
to avoid copy pasting code, readerutils gives functions that take visitors as params to decide how a record must be handled
Check encoder exists, and get value of stateless encoder.
fixes code formatting conventions
Fixed output of record with RefId
also fixed readTypedRecord and readRecord to have the proper return types
Check if the type has a sRecordId
2023-01-01 19:22:27 +01:00
florent.teppe
c721a6cafa
Initial commit to load ESM4
...
Some data is actually loaded and store in ESM Store
Any new ESM4 will go through the same code path and be automatically sent to the right store
2023-01-01 16:22:57 +01:00
Petr Mikheev
b248c3e173
Allow passing initData
to the :addSript call ( #7091 )
2022-12-31 22:08:17 +01:00
Petr Mikheev
aabd5a98c7
Fix 'toggle spell' control (was broken by !2541 )
2022-12-31 13:12:12 +01:00
unelsson
fe7660eec8
clang-format again
2022-12-31 00:53:36 +02:00
unelsson
d60fd86719
clang format
2022-12-31 00:52:05 +02:00
unelsson
33afcbdc13
Use common function for blendmask detection, remove extra debug logs
2022-12-31 00:35:50 +02:00
unelsson
ffc64205c5
Force collada animation layers, remove nif blend mask detection.
2022-12-31 00:35:50 +02:00
psi29a
d5f5e53714
Merge branch 'playercontrols' into 'master'
...
Move some of player controls logic from C++ to Lua
See merge request OpenMW/openmw!2541
2022-12-30 16:57:40 +00:00
psi29a
e6064645db
Merge branch 'esm_ref_id_refactor' into 'master'
...
Simplify ESM::RefId
See merge request OpenMW/openmw!2563
2022-12-30 13:27:35 +00:00
psi29a
4b6fd63044
Merge branch 'detournavigator_ref_id' into 'master'
...
Use ESM::RefId for worldspace in detournavigator
See merge request OpenMW/openmw!2562
2022-12-30 13:26:55 +00:00
elsid
755067f0f3
Remove redundant ESM::RefId member functions
2022-12-30 00:32:47 +01:00
elsid
b4ab153418
Use ESM::RefId for worldspace in detournavigator
2022-12-29 23:49:49 +01:00
Evil Eye
0a4f65c20b
Prioritise Absorb Attribute and Skill similarly to Damage and Drain
2022-12-29 12:41:37 +01:00
Evil Eye
dfca5d95c2
Don't apply spell multiplier to on hit enchantments
2022-12-29 12:40:10 +01:00
Petr Mikheev
103908ffc7
Move getNorthVector out of MWWorld::World (used only in one place)
2022-12-28 22:06:49 +01:00
Petr Mikheev
310acaeee9
Don't pass MWLua::WorldView to MWLua::Action
2022-12-28 22:06:49 +01:00
Petr Mikheev
aef2e9d8de
Replace World::getExterior with WorldModel::getCell
2022-12-28 22:06:49 +01:00
Petr Mikheev
1869aeae5c
Move some of player controls logic from C++ to Lua
2022-12-28 22:04:19 +01:00
Petr Mikheev
0fef8f12d0
Remove functions WorldModel::rest
and WorldModel::recharge
2022-12-28 12:45:11 +01:00
Petr Mikheev
b8fb013edf
Merge MWLua::ObjectRegistry and MWWorld::WorldModel
2022-12-28 12:45:11 +01:00
psi29a
80e2cd79ec
Merge branch 'boat_closer_to_todd' into 'master'
...
Ignore special characters preceding script commands
Closes #6807
See merge request OpenMW/openmw!2555
2022-12-28 11:21:24 +00:00
psi29a
ba2ececa93
Merge branch 'resolution' into 'master'
...
Improve window mode change
Closes #7087
See merge request OpenMW/openmw!2530
2022-12-28 10:45:14 +00:00
psi29a
7827d3ae8f
Merge branch 'fix_hour_modulo' into 'master'
...
Fix hour modulo expression (#7121 )
Closes #7121
See merge request OpenMW/openmw!2556
2022-12-28 10:33:20 +00:00
elsid
25ead80d8b
Fix hour modulo expression
...
Round result of std::fmod(hours, 24) to the nearest float below 24 on double to
float conversion when it is not. Add special type and conversion function along
with tests to be used in all places where such conversion happens.
To avoid producing hours equal to 24 due to double to float precision loss.
2022-12-28 00:04:04 +01:00
florent.teppe
afed7e60ef
Upgraded Filesave version for RefIDs
...
Fix logic issue
2022-12-27 23:05:31 +01:00
florent.teppe
dc21df97c8
Fixed issue with getSummonedCreature( that returned a reference to a non const static value
...
Fix compile, and apply review comment
Fixed greater vs more typo.
getCellname is back to a string view.
Because in most cases was used as a strong not a refId.
and there was a fundamental issue with region names used as a cellname
2022-12-27 19:16:22 +01:00
florent.teppe
1ef1de974d
script blacklist => RefId
...
Applies changes from review
Fixed clang format
Clang format + review.
2022-12-27 19:16:21 +01:00
florent.teppe
2c30575b3b
CellName is now a RefId, makes more sense that way.
2022-12-27 19:16:21 +01:00
florent.teppe
6ff90b34a8
Fixed an issue with RefId in CellRefs where Ids wouldn't be loaded
...
Fixed multiple issues from the review.
2022-12-27 19:15:58 +01:00
florent.teppe
42e45723b7
Fixes issue in MW script compilation that would silently produce the wrong bytecode
...
Fixes issue when fetching MyGui values that were stored as RefId but fetched as String
Removed some uncessary copies, fixed issues with lowercase and uneeded changes
2022-12-27 19:15:57 +01:00
florent.teppe
0f3499f504
Renamed string => Id, makes more sense considering the new underlying type
...
Fixes unnecessary copies, and issues with case sensitive comparisons.
fixed modification that wasn't necessary
Fixed type mismatch, and unecessary copy
2022-12-27 19:15:57 +01:00
florent.teppe
30a020883e
Avoids unecessary copies
...
Fixed issue with lowerCase
Oups fixed compialtion on openMW_test_suite
2022-12-27 19:15:57 +01:00
florent.teppe
b61d5d8123
Some RefId == ESM::RefId::StringRefId('constString') still existed
2022-12-27 19:15:57 +01:00
florent.teppe
a7d0a8d9d1
Replaced some RefId* => RefId&
...
Rebase fix commit
2022-12-27 19:15:57 +01:00
florent.teppe
d49f60d2d6
To change fewer things with the master implementation, the Id isn't changed to lower case on creation
...
lower case utility functions used in comparison functions
2022-12-27 19:15:57 +01:00
florent.teppe
65cdd489fb
create a specific esm reader function for RefID to avoid allocation for string and then again for RefId
...
Fixed some types
removed useless header
applied clang format
fixed compile tests
fixed clang tidy, and closer to logic before this MR
Removed hardcoded refids
unless there is a returned value we don't use static RefIds
can use == between RefId and hardcoded string
Fix clang format
Fixed a few instances where std::string was used, when only const std::string& was needed
removed unused variable
2022-12-27 19:15:57 +01:00
florent.teppe
874ff88288
In the interpretter, the id is no longer passed by vallue, but as a const reference instead.
...
In getMembersLocal(, a reference to a reference wrapper is used, because the id can change, bu all we need to do is change a pointer.No need to change the value
2022-12-27 19:15:56 +01:00
fteppe
09d461a8cd
fixed Topic selected event
...
Fix rebase
2022-12-27 19:15:56 +01:00
fteppe
c283ea0ae8
string_view& => string_view
...
fixed ref to temp variable
2022-12-27 19:15:56 +01:00
fteppe
7da38113be
Changed more hardcoded RefId to be static to avoid multiple runtime creations
...
adresses multiple review comments
2022-12-27 19:15:56 +01:00
fteppe
b57dd6d083
Fixed search random, it is a prefix so not a refId
...
Fixed situation where we return a const reference to a static variable that may change if the same function is called multiple times
2022-12-27 19:15:55 +01:00
fteppe
62d8fe3fc2
changed a few hardcoded refIds used in mutliple places to be defined only once in a variable
2022-12-27 19:15:55 +01:00
fteppe
20da0892ef
openMW_test_suite compiles and runs
...
Slowly moving through the open-cs errors
Good progress in openCS
Very good progress on openCS
Getting closer with openCS
OpenCS compiles and runs! Didn't have time to test it all though
ix openMW
everything compiles on windows??
Fix gcc
Fix Clang
2022-12-27 19:15:55 +01:00
fteppe
2f2e401559
is Hidden marker now takes a const RefId& instead of a string_view
2022-12-27 19:15:55 +01:00
fteppe
c8bb733360
removed clear() function, the only way to change the Id from the outside is from the assignment operator
...
replaced ciEqual with == operator
2022-12-27 19:15:55 +01:00
fteppe
ee941f9b09
RefId's mId can't be get as mutable from the outside
...
also removed useless operator= defintion
2022-12-27 19:15:55 +01:00
fteppe
69d70d64f6
Fixed GUI that used RefId when it should have used strings
2022-12-27 19:15:54 +01:00
fteppe
125b21de20
Initial commit: In ESM structures, replace the string members that are RefIds to other records, to a new strong type
...
The strong type is actually just a string underneath, but this will help in the future to have a distinction so it's easier to search and replace when we use an integer ID
Slowly going through all the changes to make, still hundreds of errors
a lot of functions/structures use std::string or stringview to designate an ID. So it takes time
Continues slowly replacing ids. There are technically more and more compilation errors
I have good hope that there is a point where the amount of errors will dramatically go down as all the main functions use the ESM::RefId type
Continue moving forward, changes to the stores
slowly moving along
Starting to see the fruit of those changes.
still many many error, but more and more Irun into a situation where a function is sandwiched between two functions that use the RefId type.
More replacements. Things are starting to get easier
I can see more and more often the issue is that the function is awaiting a RefId, but is given a string
there is less need to go down functions and to fix a long list of them.
Still moving forward, and for the first time error count is going down!
Good pace, not sure about topics though, mId and mName are actually the same thing and are used interchangeably
Cells are back to using string for the name, haven't fixed everything yet. Many other changes
Under the bar of 400 compilation errors.
more good progress <100 compile errors!
More progress
Game settings store can use string for find, it was a bit absurd how every use of it required to create refId from string
some more progress on other fronts
Mostly game settings clean
one error opened a lot of other errors. Down to 18, but more will prbably appear
only link errors left??
Fixed link errors
OpenMW compiles, and launches, with some issues, but still!
2022-12-27 19:15:54 +01:00
Evil Eye
b19ad079c2
Ignore special characters preceding script commands
2022-12-27 14:59:56 +01:00
psi29a
8b0eba8906
Merge branch 'blockofcoal' into 'master'
...
Play blocked hit sound on the victim, not the attacker
See merge request OpenMW/openmw!2551
2022-12-27 13:20:04 +00:00
Andrei Kortunov
9e77654ab4
Add a hint about disabled resolution list in the Windowed Fullscreen mode
2022-12-27 13:42:39 +04:00
Andrei Kortunov
08f7554e38
Improve window mode change (feature #7087 )
2022-12-27 13:42:37 +04:00
Alexei Kotov
cdd6a8c007
Merge branch 'models_for_the_model_god' into 'master'
...
Implement TestModels/T3D
Closes #7058
See merge request OpenMW/openmw!2506
2022-12-27 00:41:39 +00:00
Alexei Kotov
83d563e2ff
Merge branch 'classless' into 'master'
...
Don't call getClass on an empty Ptr
See merge request OpenMW/openmw!2552
2022-12-27 00:26:14 +00:00
Alexei Kotov
f11d4b76d1
Merge branch 'stay_mad' into 'master'
...
Update a reference's base record pointer on resurrection
Closes #7084
See merge request OpenMW/openmw!2527
2022-12-27 00:20:47 +00:00
Evil Eye
1cf0befd07
Don't call getClass on an empty Ptr
2022-12-26 21:13:24 +01:00
Alexei Kotov
74225991ca
Play blocked hit sound on the victim, not the attacker
2022-12-26 19:07:02 +03:00
Cédric Mocquillon
76d77bf3c3
Connect zoom in/out only when the option is allowed
2022-12-25 17:03:28 +01:00
elsid
0b399a9d1a
Fix detournavigator tests
...
d40c09c18c
changed the logic in parallel with
15e8f0b53c
making this check invalid.
2022-12-23 19:26:15 +01:00
elsid
15e8f0b53c
Check input and report errors via RecastContext
...
Recast functions have preconditions for arguments they don't validate. This may
produce garbage data which may lead to crash. Check arguments and log when they
are invalid.
Do not throw exceptions when these function calls fail, capture Recast reported
errors via RecastContext inherited from rcContext and log them.
2022-12-19 19:46:45 +01:00
Petr Mikheev
de57a95c9d
Rename mCells -> mWorldModel
2022-12-16 00:15:11 +01:00
Petr Mikheev
ac6303a83a
Rename MWWorld::Cells -> WorldModel
2022-12-15 20:45:18 +01:00
AnyOldName3
66b8d4fb29
Add a setting to control coverage adjustment
...
With it on, which was always the case before this setting was added,
vanilla content and poorly-made mods will look acceptable, but well-made
mods will have alpha-tested meshes appear to grow and potentially gain a
weird outline as they get further away.
With it off, which replicates the 0.46 behaviour, well-made mods will
look really good, but vanilla content and poorly-made mods will have
alpha-tested meshes shrink as they get further away.
It's been bugging me that this was forced on since 0.47 released, and
I'd hoped to figure out a solution for automatic detection at some point
before 0.48 branched off, but I didn't, so now this is what we're
getting to have Tamriel Rebuilt look right.
2022-12-09 00:22:08 +00:00
psi29a
1d55be8214
Merge branch 'lua_profiler' into 'master'
...
Lua profiler
See merge request OpenMW/openmw!2523
2022-12-07 10:53:47 +00:00
psi29a
eabb230de2
Merge branch 'keep_calm_and_get_hit' into 'master'
...
Add option to restore non-MCP Calm spell behaviour
Closes #7063
See merge request OpenMW/openmw!2522
2022-12-07 10:33:17 +00:00
Evil Eye
69fe4594fc
Reset mCharGen along with the other MyGUI-holding members
2022-12-05 17:48:24 +01:00
psi29a
06a626452c
Merge branch 'ptr2' into 'master'
...
Refactoring; slightly reduce amount of code in worldimp.cpp
See merge request OpenMW/openmw!2498
2022-12-05 08:54:18 +00:00
Petr Mikheev
7c36a7eb49
Run Lua GC in every frame
2022-12-03 17:09:11 +01:00
Petr Mikheev
55db95d4cf
Update Lua profiler; add ability to run OpenMW with old LuaJit that doesn't allow custom allocator (Lua profiler will be disabled in this case)
2022-12-03 16:58:03 +01:00
Evil Eye
209a102061
Update a reference's base record pointer on resurrection
2022-12-01 17:07:10 +01:00
Petr Mikheev
02a9069a0e
Lua Profiler
2022-11-30 00:06:14 +01:00
Petr Mikheev
6fa65e4729
Track memory and CPU usage per script in LuaUtil::LuaState
2022-11-30 00:06:14 +01:00
Evil Eye
a648e4cc11
Add option to restore non-MCP Calm spell behaviour
2022-11-23 20:59:37 +01:00
Cédric Mocquillon
dde8ee0611
Delay the deletion of esm versions after the deletion of the scene as it is used in one of its workers (the objectpaging one)
2022-11-20 20:48:48 +01:00
Petr Mikheev
aa230698a8
Apply clang-format
2022-11-13 15:35:26 +01:00
Petr Mikheev
313df72be0
Remove raycasting functions from MWWorld::World
2022-11-13 15:35:26 +01:00
Petr Mikheev
7a354d8c78
Remove from MWWorld::World a few functions that already exist in MWWorld::Cells and MWWorld::Scene
2022-11-13 12:37:37 +01:00
Petr Mikheev
2df993004c
Make MWWorld:Cells and MWWorld::Scene to be accessible via Environment
2022-11-13 12:37:37 +01:00
AnyOldName3
08361a6682
Merge branch 'LOD-support-to-Object-Paging' into 'master'
...
Add LOD support to Object Paging
See merge request OpenMW/openmw!2459
2022-11-12 15:25:57 +00:00
Cédric Mocquillon
7142bb4ce7
Select only one level of LOD outside the active grid
...
Do not create group when not needed
2022-11-11 20:56:46 +01:00
psi29a
518bd03547
Merge branch 'post_ui' into 'master'
...
Improve postprocess HUD layout
See merge request OpenMW/openmw!2505
2022-11-10 22:36:04 +00:00
Evil Eye
b94818b24a
Tweak message and temporarily set model ttl to 0
2022-11-10 17:24:58 +01:00
Andrei Kortunov
da5b442fcf
Improve postprocess HUD layout
2022-11-10 08:31:21 +04:00
Alexei Kotov
1d31c5eb6f
Remove the correct bound item when the effect expires
2022-11-10 01:18:46 +03:00
psi29a
d29d68f1ba
Merge branch 'allycache' into 'master'
...
Always consider an actor their own ally (bug #6313 )
Closes #4229 and #6313
See merge request OpenMW/openmw!2504
2022-11-09 21:01:57 +00:00
Cédric Mocquillon
4140e4ea05
Remove LOD which could never be displayed in a chunk
2022-11-09 21:57:48 +01:00
psi29a
577c9ad5fb
Merge branch 'deprecated' into 'master'
...
Replace gmtime with safer equivalents
See merge request OpenMW/openmw!2503
2022-11-09 09:20:07 +00:00
Evil Eye
0ae5755abb
Implement TestModels/T3D
2022-11-08 22:36:15 +01:00
Alexei Kotov
5d11238723
Always consider an actor their own ally (bug #6313 )
2022-11-08 20:13:20 +03:00
psi29a
7669a43495
Merge branch 'dialogue_result_scripts' into 'master'
...
Reimplement --script-all-dialogue to be more useful to modders
See merge request OpenMW/openmw!2494
2022-11-08 15:46:16 +00:00
psi29a
fa50890633
Merge branch 'sm-snap-to-reference' into 'master'
...
Open-CS: Snap to Reference
See merge request OpenMW/openmw!2484
2022-11-08 15:30:26 +00:00
Alexei Kotov
914fba229d
Replace gmtime with safer equivalents
2022-11-08 16:38:40 +03:00
Alexei Kotov
a5adb73900
Make idle emitters emit ripples every 1.5 seconds (bug #5883 )
2022-11-08 12:48:24 +03:00
psi29a
3ca17e5183
Merge branch 'landofwindandshade' into 'master'
...
Handle landing in the frame the jump is over (bug #5849 )
Closes #5849
See merge request OpenMW/openmw!2499
2022-11-08 08:25:31 +00:00
Alexei Kotov
1db9247c45
Restart player block animation during blocking if necessary
2022-11-07 22:09:56 +03:00
Alexei Kotov
180963488f
Play shield hit sound when the hit is blocked (bug #6645 )
2022-11-07 22:02:30 +03:00
Alexei Kotov
9b8399c353
Handle landing in the frame the jump is over (bug #5849 )
2022-11-07 19:06:01 +03:00
Petr Mikheev
6025943fed
Add missing content=builtin.omwscripts if openmw is started via openmw-cs ( fixes #7056 )
2022-11-05 16:30:44 +01:00
Max Henzerling
897cdc62d8
Add snap to reference
2022-11-04 15:04:42 -07:00
Evil Eye
f61083d02c
Replace switch statements
2022-11-04 12:20:37 +01:00
Evil Eye
29a46b0fc0
Reimplement --script-all-dialogue to be more useful to modders
2022-11-03 20:54:44 +01:00
psi29a
6960fc9304
Merge branch 'opencs_iwyu' into 'master'
...
Run IWYU on the opencs
See merge request OpenMW/openmw!2481
2022-11-02 21:41:53 +00:00
psi29a
fd176d6faf
Merge branch 'shutup_no_one_cares' into 'master'
...
Ignore 0 attributes on dead NPCs
See merge request OpenMW/openmw!2490
2022-11-02 08:19:37 +00:00
elsid
013f56088b
Support negative days in TimeStamp
...
As vanilla engine does.
2022-11-01 22:17:39 +01:00
Evil Eye
45cd5bdbd7
Ignore 0 attributes on dead NPCs
2022-11-01 20:14:40 +01:00
jvoisin
1a326294c0
Run IWYU on the opencs
2022-10-31 21:04:01 +01:00
Evil Eye
4a48156378
Only force adjust the player and NPCs teleported out of the active grid
2022-10-31 12:29:29 +01:00
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
Evil Eye
aab0473c28
Only prevent recasting by the actor who cast the spell
2022-01-03 21:05:14 +01:00
Evil Eye
97ab7cf457
Fix demoralize and rally being swapped
2022-01-03 19:17:56 +01:00
Petr Mikheev
0f246e7365
Use a separate instance of Lua i18n for every context
2022-01-02 09:58:51 +01:00
Frederic Chardon
63bf4bf868
Solve 2 bugs in projectile movement simulation:
...
- properly initialize mSimulationPosition in the constructor. Unlucky thread scheduling can cause processHits to be called before the first simulation run, causing the projectile to vanish to whatever value the variable happens to contains.
- don't continue moving the projectile after a hit. The position would continue to be updated to some senseless value.
2021-12-29 15:20:44 +01:00
Evil Eye
dc946d0a47
Fix Dagoth Ur's Fire Shield not being visible
2021-12-27 22:30:25 +01:00
elsid
ba281a0da0
Fix coverity issues
2021-12-27 16:08:00 +00:00
Evil Eye
debdcf2953
Don't touch base stats when turning into a werewolf
2021-12-27 00:47:33 +01:00
Evil Eye
c166341ec0
Merge branch 'gh_sync' into 'master'
...
Resovles #6519 Do not display effects duration for ingredient
See merge request OpenMW/openmw!1506
2021-12-26 19:50:20 +00:00
psi29a
81c9ef947f
Resovles #6519 Do not display effects duration for ingredient
2021-12-26 19:50:19 +00:00
psi29a
01ac96e900
Merge branch 'stats_gave_me_a_headache' into 'master'
...
Make Set- and ModStat behave as they should
Closes #2036
See merge request OpenMW/openmw!1410
2021-12-26 19:47:09 +00:00
Evil Eye
ac747f02f3
Don't teleport NPCs to unknown cells
2021-12-26 15:27:25 +00:00
psi29a
5c67c5316d
Merge branch 'issue_6501' into 'master'
...
Fix Stuttering in the dialogue menu #6501
See merge request OpenMW/openmw!1492
2021-12-25 16:00:15 +00:00
Evil Eye
c1f59b1221
Automatically drop workaround when the format is next updated
2021-12-24 23:17:50 +01:00
myrix
88fc038ceb
with mutable, without World and ESMStore interface change
2021-12-24 12:04:26 +03:00
myrix
9c7835e27f
explicit instantiation error fix
2021-12-24 02:04:26 +03:00
myrix
27cc7a5172
caching dialog keyword search in Store<ESM::Dialogue>
2021-12-24 00:54:00 +03:00
Evil Eye
55b066d2bd
Preserve the original caster if classic reflected absorb spells behaviour is on
2021-12-21 10:50:28 +01:00
elsid
ed3286994c
Fix ASAN error: heap-use-after-free
...
=================================================================
==20931==ERROR: AddressSanitizer: heap-use-after-free on address 0x607000206030 at pc 0x7fc8b0f3a72b bp 0x7ffcee176860 sp 0x7ffcee176008
READ of size 13 at 0x607000206030 thread T0
#0 0x7fc8b0f3a72a in __interceptor_strlen /build/gcc/src/gcc/libsanitizer/sanitizer_common/sanitizer_common_interceptors.inc:389
#1 0x562e069a0af7 in QString::fromUtf8(char const*, int) /usr/include/qt/QtCore/qstring.h:706
#2 0x562e069a0af7 in Launcher::AdvancedPage::AdvancedPage(Config::GameSettings&, QWidget*) /home/elsid/dev/openmw/apps/launcher/advancedpage.cpp:29
#3 0x562e06959613 in Launcher::MainDialog::createPages() /home/elsid/dev/openmw/apps/launcher/maindialog.cpp:127
#4 0x562e069691d2 in Launcher::MainDialog::setup() /home/elsid/dev/openmw/apps/launcher/maindialog.cpp:228
#5 0x562e06969d88 in Launcher::MainDialog::showFirstRunDialog() /home/elsid/dev/openmw/apps/launcher/maindialog.cpp:188
#6 0x562e06957025 in main /home/elsid/dev/openmw/apps/launcher/main.cpp:35
#7 0x7fc8ad0d9b24 in __libc_start_main (/usr/lib/libc.so.6+0x27b24)
#8 0x562e0690fced in _start (/home/elsid/dev/openmw/build/gcc/asan/openmw-launcher+0x56ced)
0x607000206030 is located 16 bytes inside of 64-byte region [0x607000206020,0x607000206060)
freed by thread T0 here:
#0 0x7fc8b0fb3f19 in __interceptor_free /build/gcc/src/gcc/libsanitizer/asan/asan_malloc_linux.cpp:127
#1 0x7fc8b0de3388 (/usr/lib/libopenal.so.1+0x40388)
previously allocated by thread T0 here:
#0 0x7fc8b0fb4fd6 in __interceptor_posix_memalign /build/gcc/src/gcc/libsanitizer/asan/asan_malloc_linux.cpp:226
#1 0x7fc8b0e379cb (/usr/lib/libopenal.so.1+0x949cb)
SUMMARY: AddressSanitizer: heap-use-after-free /build/gcc/src/gcc/libsanitizer/sanitizer_common/sanitizer_common_interceptors.inc:389 in __interceptor_strlen
Shadow bytes around the buggy address:
0x0c0e80038bb0: 00 00 00 00 00 00 00 00 00 fa fa fa fa fa 00 00
0x0c0e80038bc0: 00 00 00 00 00 00 00 fa fa fa fa fa 00 00 00 00
0x0c0e80038bd0: 00 00 00 00 00 fa fa fa fa fa 00 00 00 00 00 00
0x0c0e80038be0: 00 00 02 fa fa fa fa fa 00 00 00 00 00 00 00 00
0x0c0e80038bf0: 02 fa fa fa fa fa fd fd fd fd fd fd fd fd fa fa
=>0x0c0e80038c00: fa fa fa fa fd fd[fd]fd fd fd fd fd fa fa fa fa
0x0c0e80038c10: fa fa fa fa fa fa fa fa fa fa fa fa fa fa fa fa
0x0c0e80038c20: fa fa fa fa fa fa fa fa fa fa fa fa fa fa fa fa
0x0c0e80038c30: fa fa fa fa fa fa fa fa fa fa fa fa fa fa fa fa
0x0c0e80038c40: fa fa fa fa fa fa fa fa fa fa fa fa fa fa fa fa
0x0c0e80038c50: fa fa fa fa fa fa fa fa fa fa fa fa fa fa fa fa
Shadow byte legend (one shadow byte represents 8 application bytes):
Addressable: 00
Partially addressable: 01 02 03 04 05 06 07
Heap left redzone: fa
Freed heap region: fd
Stack left redzone: f1
Stack mid redzone: f2
Stack right redzone: f3
Stack after return: f5
Stack use after scope: f8
Global redzone: f9
Global init order: f6
Poisoned by user: f7
Container overflow: fc
Array cookie: ac
Intra object redzone: bb
ASan internal: fe
Left alloca redzone: ca
Right alloca redzone: cb
Shadow gap: cc
==20931==ABORTING
2021-12-20 23:32:47 +01:00
myrix
3a9cfbfa53
HyperTextParser as a class with proper keyword search caching
2021-12-19 14:00:49 +03:00
myrix
0688f55171
optimized keyword parsing
2021-12-18 20:07:41 +03:00
Evil Eye
a2964f2244
Don't consider underwater sneaking to be sneaking
2021-12-18 15:16:37 +01:00
psi29a
6bd89cb6ef
Merge branch 'im_walking_on_water_whoa_oh' into 'master'
...
Move target checking code so it applies to all sources
Closes #6486
See merge request OpenMW/openmw!1472
2021-12-17 09:11:30 +00:00
psi29a
0aa103c6d8
Merge branch 'fix_build' into 'master'
...
Fix build on ubuntu 18.04
See merge request OpenMW/openmw!1487
2021-12-17 07:36:31 +00:00
psi29a
844266b58e
Merge branch 'restrict_navmesh_cache_writes' into 'master'
...
Do not write shapes to navmeshdb when writing is disabled (#6498 )
Closes #6498
See merge request OpenMW/openmw!1486
2021-12-17 07:28:53 +00:00
psi29a
307bc57cde
Merge branch 'launcher_navmesh_cache_progress' into 'master'
...
Fix navmesh cache progress bar jumps (#6499 )
Closes #6499
See merge request OpenMW/openmw!1485
2021-12-17 07:23:08 +00:00
elsid
b0c2317d34
Fix build on ubuntu 18.04
...
/<<BUILDDIR>>/openmw-0.47.0+git202112160802~ubuntu18.04.1/apps/navmeshtool/worldspacedata.cpp:213:109: error: class template argument deduction failed:
heightfields.emplace_back(std::vector(std::begin(landData.mHeights), std::end(landData.mHeights)));
^
/<<BUILDDIR>>/openmw-0.47.0+git202112160802~ubuntu18.04.1/apps/navmeshtool/worldspacedata.cpp:213:109: error: no matching function for call to ‘vector(float*, float*)’
In file included from /usr/include/c++/7/vector:64:0,
from /<<BUILDDIR>>/openmw-0.47.0+git202112160802~ubuntu18.04.1/components/esm/loadpgrd.hpp:5,
from /<<BUILDDIR>>/openmw-0.47.0+git202112160802~ubuntu18.04.1/components/misc/convert.hpp:5,
from /<<BUILDDIR>>/openmw-0.47.0+git202112160802~ubuntu18.04.1/components/bullethelpers/collisionobject.hpp:4,
from /<<BUILDDIR>>/openmw-0.47.0+git202112160802~ubuntu18.04.1/apps/navmeshtool/worldspacedata.hpp:4,
from /<<BUILDDIR>>/openmw-0.47.0+git202112160802~ubuntu18.04.1/apps/navmeshtool/worldspacedata.cpp:1:
/usr/include/c++/7/bits/stl_vector.h:411:2: note: candidate: template<class _Tp, class _Alloc, class _InputIterator, class> vector(_InputIterator, _InputIterator, const _Alloc&)-> std::vector<_Tp, _Alloc>
vector(_InputIterator __first, _InputIterator __last,
^~~~~~
2021-12-17 00:06:38 +01:00
elsid
aaf6c82e33
Do not write shapes to navmeshdb when writing is disabled
2021-12-16 22:57:35 +01:00
elsid
8fedca5780
Fix navmesh cache progress bar jumps
...
When initial approximation of maximum progress based on numer of cells is too
high comparing to real number of navmesh tiles.
2021-12-16 21:48:50 +01:00
uramer
2bc81e47a6
Remove all MyGUI version checks
2021-12-16 19:22:07 +01:00
psi29a
cc97c4450a
Merge branch 'which-gpu-are-you' into 'master'
...
Log OpenGL Vendor, Renderer and Version on startup
See merge request OpenMW/openmw!1482
2021-12-16 08:02:24 +00:00
psi29a
dc4d73e76c
Merge branch 'msgboxvanillastyle' into 'master'
...
Vanilla style encumbrance messagebox
Closes #6191
See merge request OpenMW/openmw!1437
2021-12-16 07:59:43 +00:00
AnyOldName3
d66907ba67
Log OpenGL Vendor, Renderer and Version on startup
2021-12-15 22:17:38 +00:00
psi29a
92c9ae3eb7
Merge branch 'locked_and_loaded' into 'master'
...
Change the legalities of opening unlocked objects
Closes #6493
See merge request OpenMW/openmw!1479
2021-12-15 13:13:24 +00:00
Petr Mikheev
db72380ba9
Allow Lua scripts to handle input actions when UI is opened. Also fixes #6456 .
2021-12-15 02:38:54 +01:00
Petr Mikheev
7549496162
A few small fixes + expose makeReadOnly to Lua + an option to apply makeReadOnly during deserialize
2021-12-15 02:38:54 +01:00
Evil Eye
a204b4da96
Change the legalities of opening unlocked objects
2021-12-14 21:06:40 +01:00
uramer
c865114b9b
Lua UI Layers
2021-12-14 17:38:06 +00:00
kuyondo
2fce89e64f
changes
2021-12-14 22:40:05 +08:00
psi29a
0f17f14cec
Merge branch 'no_more_i_yield' into 'master'
...
Explicitely add the initial actor to the set of its allies
See merge request OpenMW/openmw!1474
2021-12-11 16:36:54 +00:00
Evil Eye
ff9f010d99
Explicitely add the initial actor to the set of its allies
2021-12-11 15:30:57 +01:00
elsid
96eb8d7be9
Write generated navmesh to navmeshdb
...
Perform all request to db in a single thread to avoid blocking navmesh
generator threads due to slow write operations.
Write to db navmesh for all changes except update as it done for memory cache.
Batch multiple db operations into a single transaction to speed up writing by
not executing fsync after each insert/update query. All reads are performed in
the same transaction so they see uncommited data.
2021-12-11 00:22:04 +01:00
elsid
9e0451c714
Support navmesh generation from launcher
2021-12-11 00:22:04 +01:00
elsid
c9b8ba7b46
Read navmesh tile data from database
...
When tile is not found in memory cache try to find it in the database.
2021-12-11 00:22:04 +01:00
elsid
953a4c5550
Add a binary to generate navmesh from content files
...
Load content files based on the engine config files. Generate navmesh per cell
for all cells and store into SQLite database.
2021-12-11 00:21:56 +01:00
elsid
5325495f46
Move serialization detournavigator/ -> components/
2021-12-10 23:55:04 +01:00
elsid
01c712d5f1
Split navigator settings into subtypes
...
Mostly to distinguish settings that affect properties of the generated navmesh.
2021-12-10 23:55:03 +01:00
elsid
33bb18850d
Move operator<< to debug.hpp
2021-12-10 23:55:03 +01:00
elsid
5a6b39f8e0
Store mesh source data in recast mesh
2021-12-10 23:55:02 +01:00
Evil Eye
9257c27fe1
Move target checking code so it applies to all sources
2021-12-10 18:51:37 +01:00
psi29a
4883cbf590
Merge branch 'detain-hash-selectively-reluctant' into 'master'
...
Get rid of EscapeHashX classes option 5 (attempt 2): Use boost::filesystem::path rules if the path starts with ", and consume the whole thing verbatim otherwise
Closes #5804
See merge request OpenMW/openmw!1436
2021-12-10 08:38:06 +00:00
psi29a
3baf966219
Merge branch 'msvc-only-precompile' into 'master'
...
Only precompile headers with MSVC
See merge request OpenMW/openmw!1467
2021-12-09 18:10:47 +00:00
AnyOldName3
8fc09f8c51
Merge remote-tracking branch 'upstream/master' into detain-hash-selectively-reluctant
...
Merge conflicts included:
* One setting being removed (branch had changed its type).
* One setting's description being changed (branch had changed its type).
* List of files in components/files was changed both upstream and on the
branch.
* Upstream had changed something in a file the branch deletes.
2021-12-09 17:09:52 +00:00
psi29a
f3f385fd5e
Merge branch 'removed_isnt_remove' into 'master'
...
Actually remove effects before proclaiming they've been removed
Closes #6480
See merge request OpenMW/openmw!1465
2021-12-09 15:08:41 +00:00
AnyOldName3
221e425fe6
Only precompile headers with MSVC
2021-12-09 14:59:17 +00:00
Bret Curtis
454ddfa304
Merge pull request #3224 from Vulpen/feature-AA-alpha-test
...
Issue #6019 AA Alpha Test Option In Launcher
2021-12-09 01:02:16 +01:00
Evil Eye
4b67fe5351
Actually remove effects before proclaiming they've been removed
2021-12-08 17:18:08 +01:00
psi29a
ad492c5735
Merge branch 'mac_mac_great_again_lua_edition' into 'master'
...
modified builtin_scripts to be macOS aware; simplified things as the SHADER...
Closes #6459
See merge request OpenMW/openmw!1463
2021-12-08 15:10:23 +00:00
psi29a
e04e139f37
Merge branch 'navmesh_raw' into 'master'
...
Add to navigator unmodified water and heightfield data
See merge request OpenMW/openmw!1373
2021-12-08 13:36:17 +00:00
Bret Curtis
9336626927
use OPENMW_RESOURCES_ROOT instead
2021-12-08 14:33:49 +01:00
Bret Curtis
a9bf53d4ed
modified builtin_scripts to be macOS aware; simplified things as the SHADER and MYGUI dir were just pointing to the OpenMW_BINARY_DIR anyway, so removing the code duplication
2021-12-08 14:28:56 +01:00
psi29a
694f697f61
Merge branch 'it_isnt_theft_if_they_were_dead_when_you_started' into 'master'
...
Force the loot UI open if it was open while resurrecting the lootee
Closes #6453
See merge request OpenMW/openmw!1452
2021-12-06 14:49:01 +00:00
psi29a
c844e5d045
Merge branch 'racer_recursion_limited' into 'master'
...
Check if a leveled creature is in an unloaded cell before deciding it doesn't exist
Closes #4376
See merge request OpenMW/openmw!1420
(cherry picked from commit 782371cb2e7f6653d72305090033557b53bbcf3a)
6d945da7 Check if a leveled creature is in an unloaded cell before deciding it doesn't exist
2021-12-06 13:58:35 +00:00
Evil Eye
99bfe024ef
Cap temp disposition change properly
2021-12-05 18:36:35 +01:00
Petr Mikheev
c5e10dfa85
Merge branch 'refactor_sdlmappings' into 'master'
...
Move SDL-MyGUI input mappings to components, map both ways
See merge request OpenMW/openmw!1444
2021-12-04 12:16:38 +00:00
uramer
15c7bddd57
Move SDL-MyGUI input mappings to components, map both ways
2021-12-04 12:16:38 +00:00
Petr Mikheev
d3df3efaf1
Precompile sol.hpp in order to reduce compilation time.
2021-12-04 11:32:39 +00:00
Evil Eye
4d346fefd6
Merge branch 'regionnotfound' into 'master'
...
Raise a warning when entering non-existent region
Closes #6358
See merge request OpenMW/openmw!1454
2021-12-03 16:05:18 +00:00
Kindi
47ff6a87a3
Raise a warning when entering non-existent region
2021-12-03 16:05:18 +00:00
Petr Mikheev
620748480b
Merge branch 'lua_missing_key_codes' into 'master'
...
Lua binding for SDL_GetKeyName, two missing scan codes
See merge request OpenMW/openmw!1450
(cherry picked from commit d86e7d4c9a28bc96af0a5638b26879fa49b8a847)
9a073baa Add Apostrophe and Period scan codes
d66f3a35 Add getKeyName to Lua input API
ed64add9 Replace mentions of KeyEvent with KEY
2021-12-03 13:35:57 +00:00
elsid
7dcb219ecf
Add raw heightfield data to navigator
2021-12-03 01:16:15 +01:00
elsid
8571c317d8
Add raw water data to navigator
2021-12-03 01:16:15 +01:00
elsid
f4f4458d01
Calculate recast mesh bounds when building navmesh
2021-12-03 01:16:15 +01:00
elsid
e10bbb9ad7
Shift heightfield and water in navigator tests
2021-12-03 01:16:15 +01:00
Evil Eye
58b888a38e
Preserve inventories when resurrecting actors while looting them
2021-12-02 20:36:42 +01:00
Evil Eye
b35cb038d0
Merge branch 'drowningbar' into 'master'
...
Bug #5434 : Pinned windows shouldn't cover breath progress bar
Closes #5434
See merge request OpenMW/openmw!1448
2021-12-02 17:01:40 +00:00
andrew-app
13400b2c5f
Bug #5434 : Pinned windows shouldn't cover breath progress bar
2021-12-02 17:01:40 +00:00
psi29a
7256654f29
Merge branch 'navmesh_render' into 'master'
...
Rework navmesh render (#6187 )
See merge request OpenMW/openmw!1338
2021-12-02 10:34:41 +00:00
psi29a
1654bebfc8
Merge branch 'master' into 'master'
...
#6419 Topic shouldn't be greyed out if they can produce another topic reference.
See merge request OpenMW/openmw!1442
2021-12-02 08:04:32 +00:00
Ivan Beloborodov
ead0cb5ce0
#6419 Topic shouldn't be greyed out if they can produce another topic reference.
2021-12-02 08:04:29 +00:00
Evil Eye
dca0fa0a41
Remove teleportation effects after they've been applied
2021-12-01 21:39:53 +00:00
Evil Eye
893d569529
Force the loot UI open if it was open while resurrecting the lootee
2021-12-01 18:21:21 +01:00
Thomas Lowe
f50cbcad81
* AA combo box no longer disables the AA alpha test checkbox.
...
* Updated AA alpha test description to be more accurate
2021-11-30 20:07:29 -05:00
Evil Eye
f1ec8db393
Make Set- and ModStat behave as they should
2021-11-30 19:39:15 +01:00
psi29a
a9008d224a
Merge branch 'light_refactors' into 'master'
...
LightManager consolidation
Closes #6389
See merge request OpenMW/openmw!1400
2021-11-30 16:02:28 +00:00
psi29a
e221013692
Merge branch 'recalculate-projection-matrix-on-window-resize' into 'master'
...
Recalculate the Projection Matrix every time the window is resized.
See merge request OpenMW/openmw!1382
2021-11-30 16:00:31 +00:00
OnlyForF1
c5b33185b5
Recalculate the Projection Matrix every time the window is resized.
2021-11-30 16:00:30 +00:00
psi29a
7f2c0df3fd
Merge branch 'follow_the_path_of_peace' into 'master'
...
Remove allies from combat when stopping combat
Closes #1930
See merge request OpenMW/openmw!1441
2021-11-30 15:59:06 +00:00
psi29a
12167291a3
Merge branch 'plz_no_particles' into 'master'
...
Hopefully fix #6353 once and for all
Closes #6353
See merge request OpenMW/openmw!1433
2021-11-30 15:57:38 +00:00
psi29a
a332dec681
Merge branch 'fix_esm_loader' into 'master'
...
Load only supported content formats by EsmLoader
See merge request OpenMW/openmw!1427
2021-11-30 15:51:22 +00:00
psi29a
a15cc0959f
Merge branch 'murmur_hash' into 'master'
...
Use MurmurHash3_x64_128 for Files::getHash
See merge request OpenMW/openmw!1404
2021-11-30 15:50:11 +00:00
Thomas Lowe
4f77c18af4
Removed unneeded signal.
2021-11-29 20:44:47 -05:00
elsid
c4cd2f36c3
Move convertMagicEffects into separate file
...
As completely unrelated to EsmLoader.
2021-11-29 22:45:35 +01:00
elsid
47219b4def
Avoid base class call antipattern in classes derived from ContentLoader
2021-11-29 22:45:08 +01:00
Bret Curtis
246912f73a
Merge pull request #3206 from akortunov/groundcover_loading
...
Use a separate storage for groundcover data
2021-11-29 20:09:21 +01:00
Thomas Lowe
5f355a14cd
Changed default setting for anti-alias alpha test to true.
...
Added checkbox in advanced page for anti-alias alpha test, connected to AA combobox in the graphics page.
2021-11-29 07:18:49 -05:00
kuyondo
01a9eaf4a8
fix#6451
2021-11-29 19:04:34 +08:00
AnyOldName3
bc4b54157b
Remove commented-out test conditions
2021-11-28 20:30:16 +00:00
fredzio
989f09930a
Use the scaled mesh translation for collision shape position for living actors. It seems only (some) dead
...
actors really needs to use the vertical half-extent.
2021-11-28 18:58:40 +01:00
kuyondo
6e43206d69
remove empty/redundant lines
2021-11-28 04:58:49 +08:00
kuyondo
eadad7a4b3
new alternate
2021-11-28 04:47:14 +08:00
Frederic Chardon
9d7a53b701
Merge branch 'fix_physics_deadlock' into 'master'
...
Fix deadlock in physics system (#6414 )
Closes #6414
See merge request OpenMW/openmw!1440
2021-11-27 19:56:37 +00:00
kuyondo
df9f601ed7
initialize constants
2021-11-28 02:22:34 +08:00
kuyondo
1f2311538d
vanilla style messagebox 2
2021-11-26 05:20:58 +08:00
Evil Eye
d6f06fbf9a
Remove allies from combat when stopping combat
2021-11-25 22:00:52 +01:00
Evil Eye
a231037449
Merge branch 'accumroot' into 'master'
...
Use the anim source to find mAccumRoot (bug #6417 )
Closes #6417
See merge request OpenMW/openmw!1431
2021-11-25 19:13:21 +00:00
elsid
6b43ce0662
Fix deadlock in physics system
...
1. Reorder unlock and notify_all calls to avoid notifying when not all worker
threads are waiting.
2. Make sure main thread does not attempt to exclusively lock mSimulationMutex
while not all workers are done with previous frame.
3. Replace mNewFrame flag by counter to avoid modification from multiple
threads.
2021-11-25 19:28:31 +01:00
kuyondo
11925b17ea
Remove mOverencumberedMessageDelay
2021-11-24 19:39:22 +08:00
kuyondo
30ff688c70
Create only one overencumbered messagebox
2021-11-24 19:35:39 +08:00
Evil Eye
90f94caaaf
Merge branch 'quickkeyvalidation' into 'master'
...
Validate Quick Keys
Closes #6433
See merge request OpenMW/openmw!1428
2021-11-23 19:06:26 +00:00
kuyondo
60a345f5cc
Better indentation
2021-11-24 01:44:14 +08:00
Evil Eye
fb4c611570
Merge branch 'sunglare_fix' into 'master'
...
Fix sunglare in sky shaders
See merge request OpenMW/openmw!1430
2021-11-23 16:47:08 +00:00
Evil Eye
f18b8adfea
Truncate instead of rounding to deal with negative values
2021-11-23 17:00:53 +01:00
kuyondo
d55682f833
remove debug code
2021-11-23 15:14:59 +08:00
kuyondo
503f0e62e7
Validate Argument is Index instead of Player
2021-11-23 14:55:50 +08:00
Alexei Dobrohotov
fd58e5ba77
Use the anim source to find mAccumRoot (bug #6417 )
2021-11-23 04:53:03 +03:00
glassmancody.info
44d5c96183
sunglare fix
2021-11-22 17:35:00 -08:00
kuyondo
1b1de86b4a
Validate Quick Keys
2021-11-23 04:07:10 +08:00
elsid
da0c5b54f0
Load only supported content formats by EsmLoader
2021-11-22 20:58:48 +01:00
Petr Mikheev
6f5e0e7697
Merge branch 'solve_6430' into 'master'
...
Use a setting to enable Lua Action tracebacks
See merge request OpenMW/openmw!1419
2021-11-22 19:39:47 +00:00
uramer
4a976a8e23
Use a setting to enable Lua Action tracebacks
2021-11-22 19:39:47 +00:00
Petr Mikheev
a39305b108
Merge branch 'clean_lua_ui' into 'master'
...
Clear Lua-created UI on game load and reloadlua command
See merge request OpenMW/openmw!1418
2021-11-22 19:17:36 +00:00
uramer
5b8cba7323
Clear Lua-created UI on game load and reloadlua command
2021-11-22 19:17:36 +00:00
AnyOldName3
84d6de3eba
Parse paths with boost rules when it's quoted, but use the string verbatim when it's not
2021-11-21 19:51:02 +00:00
elsid
cffcb6a897
Share state set between all navmesh tiles
...
Do not change GL_DEPTH because it's always disabled anyway.
2021-11-21 18:01:26 +01:00
elsid
3c41d0efc3
Render each navmesh tile independently
2021-11-21 17:42:27 +01:00
elsid
6b7363bd59
Replace generation and revision by version
2021-11-21 17:40:54 +01:00
elsid
a665a38aca
Use MurmurHash3_x64_128 for file hash
2021-11-21 17:05:59 +01:00
Petr Mikheev
f9136d4392
Support multiple arguments in Lua callbacks.
2021-11-21 13:12:35 +01:00
psi29a
53e14eb238
Merge branch 'reset' into 'master'
...
AI reset argument
Closes #6177 and #1465
See merge request OpenMW/openmw!1405
2021-11-21 09:39:55 +00:00
glassmancody.info
9389cfaa42
mac os driver workaround and shadervisitor fixes
2021-11-20 18:39:20 -08:00
AnyOldName3
3d381bf0d3
Merge branch 'depth_refactor' into 'master'
...
Depth refactor
See merge request OpenMW/openmw!1326
2021-11-21 02:25:06 +00:00
Cody Glassman
d85f772269
Depth refactor
2021-11-21 02:25:05 +00:00
Petr Mikheev
5f195b7576
Make arguments passed to LuaManager::synchronizedUpdate consistent with arguments passed to LuaManager::update. Fixes #6431 .
2021-11-21 01:48:28 +01:00
AnyOldName3
a9d7598532
Merge branch 'camera2' into 'master'
...
Dehardcode camera
See merge request OpenMW/openmw!1030
2021-11-20 18:17:12 +00:00
Evil Eye
52f9634624
Allow the CS to handle the repeat flag for all types
2021-11-20 11:03:08 +01:00
Evil Eye
3c57ffd81f
Save repeat and duration
2021-11-20 11:03:07 +01:00
Evil Eye
231da19aa4
Load repeat flag and use reset argument
2021-11-20 11:02:58 +01:00
Evil Eye
c5de69f9c6
Merge branch 'faceyourfears' into 'master'
...
Make AiExtensions less toxic (bug #6429 )
Closes #6429
See merge request OpenMW/openmw!1411
2021-11-20 09:59:49 +00:00
Alexei Dobrohotov
fcef92e3ea
Make AiExtensions less toxic (bug #6429 )
2021-11-20 03:15:15 +03:00
Evil Eye
42020bc2c3
Ignore the axis argument when rotating the player
2021-11-20 00:02:48 +00:00
Petr Mikheev
ded8997362
Avoid problems if builtin.omwscripts
is above Morrowind.esm
in content list.
2021-11-19 20:37:21 +01:00
Petr Mikheev
3941c42a71
Use applyDeferredPreviewRotationToPlayer
only after applying values from luaControls
. Otherwise camera rotation is not smooth when movement is controlled from lua.
2021-11-19 20:37:21 +01:00
Petr Mikheev
f42badd7be
Dehardcode camera
2021-11-19 20:37:21 +01:00
Petr Mikheev
e56ee2c735
Apply lua handlers for user input in the main thread in order to reduce latency.
2021-11-19 20:37:21 +01:00
Petr Mikheev
47cbdcba15
Camera refactoring
2021-11-19 20:37:21 +01:00
Petr Mikheev
d5ca091d6e
Make util.rotateX, util.rotateY, rotate.Z consistent with morrowind rotation
2021-11-19 20:37:21 +01:00
glassmancody.info
750514cda2
simply lightmanager and fix racey behavior
2021-11-18 19:40:13 -08:00
uramer
68963538ae
Lua UI API
2021-11-18 15:19:54 +00:00
Evil Eye
71f020c23b
Merge branch 'lua_input' into 'master'
...
Fix compiler warnings in apps/openmw/mwlua/inputbindings.cpp
See merge request OpenMW/openmw!1403
2021-11-16 16:41:38 +00:00
Alexei Kotov
37c27ce072
Merge branch 'vengeful_dremora_protection' into 'master'
...
Unset store listeners for creatures
See merge request OpenMW/openmw!1402
2021-11-15 23:34:33 +00:00
Petr Mikheev
e53d5ed91b
Fix compiler warnings in apps/openmw/mwlua/inputbindings.cpp
2021-11-15 17:31:57 +01:00
Evil Eye
c277e8bf3f
Unset store listeners for creatures
2021-11-15 16:31:38 +01:00
Petr Mikheev
c7d6620c35
Add error checking in MWLua::Action
2021-11-15 01:17:53 +01:00
psi29a
5c5c71778a
Merge branch 'circular' into 'master'
...
Consistently sort content files
See merge request OpenMW/openmw!1350
2021-11-14 20:24:18 +00:00
psi29a
d4e8a58351
Merge branch 'headsup' into 'master'
...
Force assign head animation timer (bug #4389 )
Closes #4389
See merge request OpenMW/openmw!1361
2021-11-14 19:59:31 +00:00
psi29a
bd694128b9
Merge branch 'lua_input' into 'master'
...
Update Lua package openmw.input
See merge request OpenMW/openmw!1356
2021-11-14 19:57:37 +00:00
Andrei Kortunov
3275440f0d
Use a separate storage for groundcover data
2021-11-14 19:11:42 +04:00
Alexei Kotov
ec63546a37
Merge branch 'save_me_utf8' into 'master'
...
Handle non-ASCII characters without triggering an assertion
Closes #6396
See merge request OpenMW/openmw!1375
2021-11-14 12:38:36 +00:00
Evil Eye
6daefe3ddc
Cast to the unsigned char expected by cctype functions
2021-11-14 11:26:18 +01:00
Evil Eye
f23bd51175
Don't check bounds when the type is unambiguously a char
2021-11-14 11:26:18 +01:00
Evil Eye
751e8cf76b
Do a bounds check before calling functions defined in cctype
2021-11-14 11:26:15 +01:00
Evil Eye
c01ba41aa6
Handle character directories like save names
2021-11-14 11:26:14 +01:00
Evil Eye
8f48a1f030
Handle non-ASCII characters while saving without triggering an assertion
2021-11-14 11:26:06 +01:00
Andrei Kortunov
dce4cceb39
Support deleted CellRefs in groundcover (bug 6276)
2021-11-14 13:23:10 +04:00
AnyOldName3
8fb0b5846e
Allow paths with trailing data, emmitting a warning
2021-11-14 00:22:44 +00:00
psi29a
29847655f6
Merge branch 'lua_pause' into 'master'
...
Allow Lua scripts to work when the game is on pause
See merge request OpenMW/openmw!1384
2021-11-13 22:47:52 +00:00
Bo Svensson
a62b22cd31
isolates groundcover content files ( #3208 )
...
Specifications developed in PR #3206 require that groundcover content files must not be allowed to corrupt normal content files. With this PR we simply isolate our existing loading logic by instantiating a separate `ESMStore` for `Groundcover`. In addition, we remove some outdated workarounds.
2021-11-13 23:37:53 +01:00
psi29a
68e7a4083e
Merge branch 'master' into 'master'
...
Overhaul raindrop water ripple effect
Closes #6360
See merge request OpenMW/openmw!1316
2021-11-13 21:44:25 +00:00
psi29a
914993d6ae
Merge branch 'itsmagic' into 'master'
...
Factor race weight into magic projectile speed (bug #6343 )
Closes #6343
See merge request OpenMW/openmw!1385
2021-11-13 21:09:44 +00:00
Alexei Kotov
49544cf7de
Merge branch 'no_one_likes_commas' into 'master'
...
Treat commas in scripts as whitespace
Closes #6380
See merge request OpenMW/openmw!1388
2021-11-13 17:19:22 +00:00
Alexei Dobrohotov
b918135b4b
Factor race weight into magic projectile speed (bug #6343 )
2021-11-13 17:33:32 +03:00
psi29a
4d09f791ab
Merge branch 'minimum-settings-window-size' into 'master'
...
Recompute minimum settings window size based on tab bar size
See merge request OpenMW/openmw!1365
2021-11-13 13:48:12 +00:00
Mads Buvik Sandvei
73e9d7f315
Recompute minimum settings window size based on tab bar size
2021-11-13 13:48:12 +00:00
psi29a
41bd20e358
Merge branch 'bullet_shape_hash' into 'master'
...
Store BulletShape source file name and content hash
See merge request OpenMW/openmw!1379
2021-11-13 13:33:22 +00:00
Evil Eye
bee94e2afc
Treat commas in scripts as whitespace
2021-11-13 14:06:21 +01:00
psi29a
39f70c2d18
Merge branch 'correct-sound' into 'master'
...
Add correct sound path in resource helpers
See merge request OpenMW/openmw!1381
2021-11-12 22:23:32 +00:00
Petr Mikheev
32839cc727
Allow Lua scripts to work on pause (except timers and onUpdate handlers)
2021-11-12 22:06:59 +01:00
psi29a
3ade72a7ad
Merge branch 'buyskyrimanniversaryedition' into 'master'
...
Boring NIF stuff
See merge request OpenMW/openmw!1378
2021-11-12 19:47:37 +00:00
Bret Curtis
700bace24c
do not emplace_back to our mLandTextures; instead use the heavy handed resize to be explicit about what we intend to do; resolves issue found here: https://github.com/OpenMW/openmw/pull/3220#issuecomment-964650167
2021-11-12 11:53:21 +01:00
Petr Mikheev
ed85393288
Replace sol::table::create_table_with with a more compiler-friendly implementation. It fixes MSVC error "compiler is out of heap space" and also slightly reduces binary size.
2021-11-11 22:46:01 +01:00
Petr Mikheev
d285427485
Update Lua package openmw.input
2021-11-11 20:14:30 +01:00
Alexei Kotov
5afd6b0e46
Merge branch 'adding_settingint_methods' into 'master'
...
Adding saveSettingInt() and loadSettingInt()
See merge request OpenMW/openmw!1167
2021-11-11 14:32:39 +00:00
Alexei Kotov
f210559a80
Merge branch 'bound_rating' into 'master'
...
Improve AI rating of bound effects
Closes #3855
See merge request OpenMW/openmw!1366
2021-11-11 14:30:41 +00:00
elsid
d7041613ef
Store BulletShape source file name and content hash
2021-11-11 00:27:18 +01:00
Cédric Mocquillon
512d64e514
Extract correctSoundPath method to avoid code duplication. Add unit test for the new method
2021-11-10 23:06:35 +01:00
Alexei Dobrohotov
9880c43c86
Add specular strength shader parameter
2021-11-10 19:58:06 +03:00
Alexei Dobrohotov
0d13b8cd3f
Allow movement during blocking (bug #6327 )
2021-11-10 15:48:03 +03:00
Alexei Dobrohotov
835bec0ed1
Fix stupid typo
2021-11-10 09:36:01 +03:00
psi29a
295ebbebbd
Merge branch 'astoecke-fix-6354-sfx-distance-attenuation' into 'master'
...
Fade sounds when performing distance-based culling (Fixes #6354 )
Closes #6354
See merge request OpenMW/openmw!1341
2021-11-09 14:33:52 +00:00
psi29a
5836d0225f
Merge branch 'leave_butter_to_soften' into 'master'
...
Soft Particles (#6128 )
See merge request OpenMW/openmw!980
2021-11-09 14:16:47 +00:00
psi29a
28589b9692
Merge branch 'holsteredshield-already-has-shaders' into 'master'
...
Remove redundant recreateShaders
See merge request OpenMW/openmw!1368
2021-11-09 14:12:43 +00:00
Bret Curtis
f2bc179b0a
Add groundcover back into view
2021-11-09 10:20:32 +01:00
Evil Eye
1a2fde04bb
Clarify logic
2021-11-08 17:28:54 +01:00
Bo Svensson
5f1bf89369
improves groundcover view distance ( #3219 )
...
This PR aims to solve all issues with `Groundcover` view distance handling in a satisfying way while preserving other optimisations that benefit other features. The main idea here is not to rely on `ViewData` updates for distance culling calculations because we can not accurately determine distance against lazily updated views. Instead, we perform an accurate measurement in a cull callback we can run every frame in `Groundcover` itself. While we do have to add some code to handle this feature, it is quite loosely coupled code that could be useful elsewhere in the future. These changes should address a performance regression @akortunov experienced.
2021-11-08 10:27:42 +01:00
psi29a
9f26dfadd1
Merge branch 'cleanup_includes' into 'master'
...
Cleanup some includes
See merge request OpenMW/openmw!1369
2021-11-08 07:32:40 +00:00
psi29a
9b7dfcac6b
Merge branch 'windows_aero_snap' into 'master'
...
Fix windows aero snap with borderless window (#5394 )
See merge request OpenMW/openmw!1370
2021-11-08 07:13:08 +00:00
Alexei Kotov
a315af48e9
Merge branch 'parent_visibility' into 'master'
...
Only restore focus to widgets with visible parents
Closes #5377
See merge request OpenMW/openmw!1364
2021-11-08 05:36:13 +00:00
glassmancody.info
c489b77385
fix windows aero snap
2021-11-07 20:01:07 -08:00
elsid
e0c4f08aa5
Remove redundant includes
2021-11-08 02:21:02 +01:00
AnyOldName3
90ce50190e
Remove redundant recreateShaders
2021-11-08 00:49:10 +00:00
Evil Eye
11ed594910
Improve AI rating of bound effects
2021-11-07 22:13:27 +01:00
Evil Eye
9394cdde22
Only restore focus to widgets with visible parents
2021-11-07 21:12:15 +01:00
Bo Svensson
2e031f195b
fixes LightBufferBinding messages ( #3223 )
...
This PR aims to solve `uniform block LightBufferBinding has no binding` messages @glassmancody has reportedly encountered since PR #3110 due to an apparent bug in OSG. While we do have to add a workaround here that adds a bit of clunkiness, #3216 should allow us to clean up these interactions a bit in the future.
2021-11-07 18:26:02 +01:00
Evil Eye
3f48d67d8e
Merge branch 'blackscreen_fix' into 'master'
...
Blackscreen fix (#6229 )
See merge request OpenMW/openmw!1359
2021-11-07 14:31:19 +00:00
Evil Eye
a3e039d862
Explicitely sort by file name after adding all data dirs
2021-11-07 14:15:30 +01:00
Alexei Kotov
0c11175da1
Merge branch 'combat_aiming' into 'master'
...
Finish turning before attacking
Closes #3488
See merge request OpenMW/openmw!1358
2021-11-07 11:25:05 +00:00
Alexei Dobrohotov
e125308dd8
Force assign head animation timer (bug #4389 )
2021-11-07 14:10:51 +03:00
psi29a
627f816348
Merge branch 'navigator_impl' into 'master'
...
Reduce the size of included code from detournavigator/ into the engine
See merge request OpenMW/openmw!1355
2021-11-07 07:57:22 +00:00
Langerz82
303082f6b4
Finish turning before attacking
2021-11-06 17:44:29 +01:00
wareya
6d98866be0
Merge remote-tracking branch 'upstream/master'
2021-11-06 11:44:12 -04:00
Evil Eye
5fbfbb3d84
Merge branch 'clamp' into 'master'
...
Make better use of std::clamp
See merge request OpenMW/openmw!1357
2021-11-06 12:07:24 +00:00
cody glassman
04692e6012
blackscreen fix
2021-11-06 04:38:43 -07:00
Alexei Dobrohotov
7a0c13fcf8
Make better use of std::clamp
2021-11-06 08:47:32 +03:00
Alexei Kotov
9e2b132508
Merge branch 'dont_linger_weather' into 'master'
...
Stop lingering weather effects (#6387 )
See merge request OpenMW/openmw!1349
2021-11-06 05:38:16 +00:00
elsid
6b30d375fa
Replace detournavigator includes by forward declarations
2021-11-06 00:48:39 +01:00
elsid
9f808fbe3a
Move findPath-like navigator functions into a separate header
2021-11-06 00:34:06 +01:00
elsid
5e99454cc4
Add factory functions to create navigator implementations
2021-11-06 00:14:41 +01:00
elsid
3f80725ebe
Remove duplicated implementation of Misc::Convert::toOsg
2021-11-05 22:57:08 +01:00
wareya
49d2daee6a
Movement solver tweaks
...
1) As much as I dislike it, upping the collision margin from 0.1 to 0.2
fixes bugs, particularly involving walking into upwards-slanted walls.
2) There were still some problems involving acute crevices/seams; they
were using the adjusted instead of unadjusted normal, and also they need
to bypass the don't-slide-upwards check to prevent (see #6379 )
3) The move-away-from-what-we-just-hit code needs to run always, not
just on non-initial iterations. No idea why I did it this way before.
4) Force bullet to give actor boxes a tiny collision margin of 0.001
instead of the default 0.04. I can't tell whether this is actually
working or not, but it should reduce unexplained weirdness.
5) A piece of code that was meant to prevent bugs by short-circuiting
the movement solver if its direction changed more than 180 degrees
actually caused problems instead of preventing them, so I deleted it.
2021-11-05 14:56:55 -04:00
psi29a
b6d2c57de2
Merge branch 'new2017' into 'master'
...
MSVC2017 Compilation Fixes
See merge request OpenMW/openmw!1348
2021-11-05 10:16:04 +00:00
Bo Svensson
1960e976e2
refactors stringops.hpp ( #3192 )
...
With this PR we refactor `StringUtils::replaceAll` to accept `string_view` as suggested in a code comment. In addition, while we are touching this rebuild happy file, we slim it down a bit by moving a few sparingly used functions elsewhere.
2021-11-05 10:53:52 +01:00
wareya
d5aaa0394a
Fix a missing required include
2021-11-04 17:48:21 -04:00
Bo Svensson
0371072631
removes lowerCaseInPlace ( #3217 )
...
This PR removes unneeded `lowerCaseInPlace` calls in in a hot path of `objectpaging.cpp` that are no longer necessary after PR #3197 . In addition, I have been informed that these changes should by coincidence address a compiler specific compilation error we currently experience.
2021-11-04 22:20:06 +01:00
Andreas Stöckel
3ee4aadd88
Heuristic for fading environment sounds in
2021-11-04 16:05:31 -04:00
Andreas Stöckel
1cafef7bdb
Fade water sounds more softly
2021-11-04 16:05:31 -04:00
Andreas Stöckel
9cfa2eeab8
Remove hard maximum distance in the OpenAL driver
...
Hard sound source culling is now handled by the SoundManager.
2021-11-04 16:05:31 -04:00
Andreas Stöckel
6f2e311c58
Fade out sound sources that are no longer close
...
* Handle culling of all sound sources in a separate function cull3DSound
* Add two new settings Sound::sfx fade in duration and Sound::sfx fade out duration
2021-11-04 16:05:31 -04:00
Andreas Stöckel
1583252dd8
Improve sound fading
...
* Implement a more general SoundBase::setFade that can be used to fade to any desired
volume and not just fading out
* Implement SoundBase::setFadeout by using SoundBase::setFade
* Implement an exponential fade mode
2021-11-04 16:05:31 -04:00
Bo Svensson
cd946ea35a
removes unused recordcmp.hpp ( #3214 )
...
This PR removes an unused source file.
2021-11-04 16:56:51 +01:00
Bo Svensson
6cf74f7041
refactors ESM::Land ( #3213 )
...
With this PR we reduce coupling, simplify code, encapsulate a variable and separate actual `ESM` data from its context.
2021-11-04 16:55:32 +01:00
Bo Svensson
3042c000c6
fixes setActorFade logic errors ( #3195 )
...
* resets state updater to apply light settings (#3141 )
resets state updater to apply light settings
With this PR we achieve the same effect with fewer lines of code.
* fixes LightSource logic errors
We currently update `LightSource::setActorFade` in `TransparencyUpdater`. There are several logic errors inherent in this approach:
1. We fail to update `LightSource::setActorFade` for off screen actors because their `TransparencyUpdater` cull callback is not invoked.
2. We fail to update `LightSource::setActorFade` in the instant that a `TransparencyUpdater` is removed.
3. We fail to update `setActorFade` when an `mExtraLightSource` is created after calling `Animation::setAlpha`.
With this PR we avoid such issues by updating `LightSource::setActorFade` in `Animation::setAlpha` and `Animation::addExtraLightSource` instead.
2021-11-04 16:53:57 +01:00
glassmancody.info
4c3dd1a964
remove particle node when resetting particle effect
2021-11-04 08:42:22 -07:00
Bo Svensson
f684c1da52
fixes assertion ( #3215 )
...
This PR fixes an assertion introduced by #3211 . For some reason my build originally did not contain assertions despite passing `DEBUG` into cmake, but after deleting `CMakeCache.txt` I have now hit the assertion @glassmancody reported as well.
2021-11-04 10:15:05 +01:00
Bo Svensson
fac84b5dd3
restores ESM::Dialogue order ( #3209 )
...
With this PR we restore the previous order of `ESM::Dialogue` entries implicitly changed by PR #3197 . In the future we may want to consider additional verification and documentation of `mShared` order inconsistencies. We might additionally consider applying this sorting in the particular code that requires it.
2021-11-03 15:07:06 +01:00
psi29a
c9f3c27dc7
Merge branch 'phys_perf_test' into 'master'
...
Help bullet optimize collisions with very complex collision meshes by making small collision tests if possible
See merge request OpenMW/openmw!1317
2021-11-03 11:49:44 +00:00
Bo Svensson
4657c655b1
refactors parentFileIndices ( #3211 )
...
This PR aims to start addressing `ESM` design issues that have silenced errors we incorporated into groundcover `ESM` loading approaches.
- We move the resolution of `parentFileIndices` from `ESMStore` to `ESMReader` as suggested in a `TODO` comment.
- We improve a highly misleading comment which downplayed the significance of `parentFileIndices`.
- We document important preconditions.
- We move a user facing error message to the highest level and improve its context.
- We remove an inappropriate `setGlobalReaderList` method. We now pass this reader list into the method that requires it.
- We remove a thoroughly pointless optimisation of `Store<ESM::LandTexture>`'s construction that has unnecessarily depended on `getGlobalReaderList`.
There should be no functional changes for `master`, but this PR should remove an issue blocking PR #3208 .
2021-11-03 11:07:28 +01:00
elsid
2b057f5c15
Expect nif node children to have parent
2021-11-02 22:44:33 +01:00
elsid
4e8e8304aa
Avoid mesh allocation when data is invalid
2021-11-02 22:44:33 +01:00
elsid
4631d95739
Add more tests for BulletNifLoader
2021-11-02 22:44:32 +01:00
psi29a
523289c531
Merge branch 'refactor_bullet_shape' into 'master'
...
Refactor bullet shape
See merge request OpenMW/openmw!1333
2021-11-02 20:30:22 +00:00
psi29a
4ff4afd50b
Merge branch 'lua_callback' into 'master'
...
Refactoring. Lua `Callback` is moved from apps/openmw/mwlua to components/lua.
See merge request OpenMW/openmw!1334
2021-11-02 20:28:34 +00:00
psi29a
ea7e83499d
Merge branch 'enlightened_skeletons' into 'master'
...
Allow creatures to use torches
Closes #6376
See merge request OpenMW/openmw!1335
2021-11-02 20:25:26 +00:00
Evil Eye
a9106f4d7c
Rotate torches by 90 degrees
2021-11-02 18:01:22 +01:00
wareya
940e338453
Constifications
2021-11-02 15:17:26 +00:00
Bo Svensson
213faa6695
restores countRecords optimisations ( #3210 )
...
With this PR we restore @elsid 's optimisations of countRecords we have unintentionally discarded in PR #3197 . In addition, we give it a more appropriate name and add comments concerning its peculiar background.
2021-11-02 14:46:41 +01:00
psi29a
d3b2503111
Merge branch 'distractions' into 'master'
...
Reduce code duplication in getting the shield model
See merge request OpenMW/openmw!1337
2021-11-02 13:32:21 +00:00
psi29a
9694398b69
Merge branch 'actually_walk_on_the_water' into 'master'
...
#6373 : finish half commited commit
See merge request OpenMW/openmw!1336
2021-11-02 10:15:40 +00:00
Andreas Stöckel
a5a895ffd4
Fix #6381
...
Do not use osg::PI_f
2021-11-01 20:55:19 -04:00
Evil Eye
3660d5cc4c
Reduce code duplication in getting the shield model
2021-11-01 19:33:29 +01:00
glassmancody.info
4461366761
settings update and launcher option
2021-11-01 09:26:50 -07:00
fredzio
8c21b0b503
Apply waterwalking even when we skip simulation.
...
This chunk was supposed to be part of !1324 but somehow got stuck staged in my tree.
2021-11-01 12:44:36 +01:00
wareya
221f6f134d
gcc and clang don't like this
2021-10-31 18:18:49 -04:00
wareya
838fc634c6
address review comments
2021-10-31 15:32:24 -04:00
Evil Eye
92bdd44e58
Allow creatures to use torches
2021-10-31 20:25:37 +01:00
wareya
e1378cd290
Replace uniform with define
2021-10-31 13:18:19 -04:00
Petr Mikheev
e7ec89573e
Refactoring. Lua Callback
is moved from apps/openmw/mwlua to components/lua.
2021-10-31 17:47:46 +01:00
wareya
226d3eac0d
Improve performance, add simpler ripples, add a setting, fix nighttime brightness
2021-10-31 10:33:28 -04:00
Evil Eye
3c40935ec1
Fix regression #6375
2021-10-31 11:57:33 +01:00
Bo Svensson
356e9d7cf0
refactors osg::Callback virtual inheritance ( #3200 )
...
With this PR we refactor `SceneUtil::KeyframeController` not to require `virtual osg::Callback` inheritance. I suppose such `virtual` overhead is not justified here because it negatively impacts many other classes we derive from `osg::Callback`.
2021-10-30 22:43:18 +02:00
psi29a
4c81518abb
Merge branch 'puddle' into 'master'
...
Give each reflect and spell absorption effect a chance to apply
Closes #6255 and #6253
See merge request OpenMW/openmw!1279
2021-10-30 19:26:32 +00:00
glassmancody.info
8c3b00164e
soft particles
2021-10-30 12:19:31 -07:00
psi29a
3eb6b658c6
Merge branch 'setpos_strikes_back' into 'master'
...
#6292 unbreak scripted spells
See merge request OpenMW/openmw!1324
2021-10-30 18:50:02 +00:00
psi29a
740045f7d6
Merge branch 'test_compiler' into 'master'
...
Add unit tests for the mwscript compiler
See merge request OpenMW/openmw!1325
2021-10-30 18:41:15 +00:00
psi29a
15cb9f886c
Merge branch 'launcher_omwscripts' into 'master'
...
Support *.omwscripts in openmw-launcher
See merge request OpenMW/openmw!1329
2021-10-30 18:10:09 +00:00
Bo Svensson
1329f22186
refactors MWWorld::Store maps ( #3197 )
...
With this PR we clean up `MWWorld::Store` maps according to the approach of PR #3184 .
2021-10-30 19:27:57 +02:00
Bo Svensson
7d34149adc
consolidates createUnlitMaterial ( #3203 )
...
With this PR we remove a few duplicate lines of code by adding a parameter to `createUnlitMaterial`.
2021-10-30 19:19:58 +02:00
Bo Svensson
7e6533f0f3
refactors screenshot360 ( #3202 )
...
With this PR we refactor screenshot360 not to manually adjust node masks.
2021-10-30 19:10:16 +02:00
Evil Eye
ae08f942d5
Test binary operators
2021-10-30 12:23:14 +02:00
Evil Eye
3c5a50cf90
Add issues from Redmine
2021-10-30 12:09:02 +02:00
Evil Eye
319d30fb85
Add AddTopic testing
2021-10-30 10:42:11 +02:00
Evil Eye
b3208f4066
Add more issues and a forum thread
2021-10-30 10:42:10 +02:00
Evil Eye
8e0dfe3a8a
Add tests for more issues
2021-10-30 10:42:10 +02:00
Evil Eye
b2cdbe2e61
Add tests for certain issues
2021-10-30 10:42:10 +02:00
Evil Eye
3dada0796a
Validate integer math
2021-10-30 10:42:10 +02:00
Evil Eye
f027acf575
Move boilerplate to separate file
2021-10-30 10:42:09 +02:00
Evil Eye
be759e576a
Be sure to verify the opcode got executed
2021-10-30 10:42:09 +02:00
Evil Eye
6ad8549163
Allow validation of constant arguments
2021-10-30 10:42:09 +02:00
Evil Eye
e1ac871672
Start adding compiler tests
2021-10-30 10:42:08 +02:00
elsid
a78dee740a
Merge branch 'dead_code' into 'master'
...
remove dead code and fix changelog entry
See merge request OpenMW/openmw!1330
2021-10-30 03:05:54 +00:00
glassmancody.info
f0eb068e4b
remove dead code and fix changelog entry
2021-10-29 18:50:04 -07:00
elsid
8e71c246bf
Remove redundant BulletShape getters
2021-10-30 03:44:08 +02:00
elsid
b905dd17c3
Use unique_ptr to store btCollisionShape in BulletShape
2021-10-30 03:44:07 +02:00
fredzio
68f4c336ce
Rework again SetPos command to make more mods work.
...
Previous version skipped collision the frame immediately after a call to SetPos. It worked for one-off calls (teleports for instance) and continuous call along a pre-defined path (scenic travel). However, in the case of mod which uses SetPos to simulate a player-controlled movement, it is equivalent to using tcl.
Solution:
1/ skip update of mPosition and mPreviousPosition to avoid janky interpolation
2/ use back plain moveObject() instead of moveObjectBy() since we don't want physics simulation
3/ rework a little bit waterwalking influence on coordinate because of 1/
2021-10-29 23:20:17 +02:00
wareya
8c0102e1ee
Optimize short-trace test to only be done when particularly helpful
2021-10-29 15:11:08 -04:00
elsid
29a772c33f
Rename Resource::BulletShape::CollisionBox fields according to styleguide
2021-10-29 21:05:58 +02:00
Petr Mikheev
37386f417e
Support *.omwscripts in openmw-launcher
2021-10-29 20:09:47 +02:00
psi29a
e3cfe5d35a
Merge branch 'backproj' into 'master'
...
Move the projectile simulation to the background thread
See merge request OpenMW/openmw!1276
2021-10-29 12:52:41 +00:00
psi29a
b189282ba1
Merge branch 'compile_no_evil' into 'master'
...
Remove dead code
See merge request OpenMW/openmw!1327
2021-10-29 12:51:20 +00:00
psi29a
34b63bf142
Merge branch 'omwscripts' into 'master'
...
Change format of "*.omwscripts" files
See merge request OpenMW/openmw!1271
2021-10-29 12:49:49 +00:00
Evil Eye
9b565c4cf9
Remove dead code
2021-10-28 22:16:43 +02:00
psi29a
b3f84df43c
Merge branch 'sky_shaders' into 'master'
...
Sky shaders
See merge request OpenMW/openmw!1057
2021-10-27 20:25:40 +00:00
fredzio
3750eb9cd8
Move Projectile simulation to the background thread.
2021-10-27 22:17:06 +02:00
fredzio
a245981e4e
Make interpolateMovement works with PtrHolder instead of Actor
2021-10-27 22:05:19 +02:00
fredzio
ad7a810a62
Unify interface for Actor and Projectile
2021-10-27 22:03:04 +02:00
Frederic Chardon
5009b66ef5
Use std::variant in the physics simulation for the different types of objects. For now only support only for actors.
2021-10-27 22:02:46 +02:00
psi29a
fb3675d523
Merge branch 'improved_toggleworld' into 'master'
...
Improved toggle world (#6364 )
See merge request OpenMW/openmw!1320
2021-10-27 18:00:56 +00:00
glassmancody.info
e436147c10
improved toggle world
2021-10-27 09:16:01 -07:00
Andrei Kortunov
3ee6657768
Early out from LOS check when source and target is the same (bug 5913)
2021-10-27 10:01:06 +04:00
Petr Mikheev
95faeaa9c1
Fix: after reloadlua call onActive for all active scripts
2021-10-26 21:52:42 +02:00
Petr Mikheev
19a0fde278
Filter saves by the first esm/omwgame rather than by the first content file (that can be a universal omwaddon/omwscripts)
2021-10-26 21:52:42 +02:00
Petr Mikheev
47c89567fb
Load LuaScriptsCfg from both *.omwscripts and *.omwaddon files.
2021-10-26 21:52:42 +02:00
Petr Mikheev
9adc190209
Redesign LuaUtil::ScriptsContainer to work with ScriptsConfiguration
2021-10-26 21:32:48 +02:00
Petr Mikheev
33d71be81f
Add LuaUtil::ScriptsConfiguration
2021-10-26 21:32:02 +02:00
Petr Mikheev
6aab246879
Add ESM records that are needed to store Lua scripts configuration;
...
Use ptr.getType() (i.e. esm record names) instead of typeid(ptr.getClass()) in apps/openmw/mwlua.
2021-10-26 21:32:02 +02:00
Evil Eye
4ec927829f
Give each reflect and spell absorption effect a chance to apply
2021-10-26 16:50:40 +02:00
psi29a
c0dca5371b
Merge branch 'recalc_mana' into 'master'
...
Don't wait a frame to recalculate magicka
Closes #3792
See merge request OpenMW/openmw!1323
2021-10-26 08:58:04 +00:00
psi29a
2765bcee5e
Merge branch 'serialization' into 'master'
...
Add helpers for binary serialization
See merge request OpenMW/openmw!1319
2021-10-26 08:25:17 +00:00
glassmancody.info
ba4f1921ab
overrides
2021-10-25 15:04:55 -07:00
glassmancody.info
07e32c0fa6
remove object shader path
2021-10-25 10:23:16 -07:00
Evil Eye
289e1544d2
Don't wait a frame to recalculate magicka
2021-10-25 16:54:50 +02:00
Bret Curtis
3d0da9b9b2
Merge pull request #3191 from akortunov/warnfix
...
Fix some MSVC warnings
2021-10-25 15:17:05 +02:00
Bo Svensson
1ff8318a52
refactors premultiplied alpha ( #3189 )
...
With this PR we refactor a `premultiplied alpha` user string set by `characterpreview.cpp` into a more flexible mechanism allowing us to assign any state to GUI textures. We can consider these changes more future proof than the previous approach.
2021-10-25 09:28:32 +02:00
Bo Svensson
7f9beac3a7
refactors a case insensitive map ( #3184 )
...
This PR aims to spark the retirement of a questionable pattern I have found all over our code base. I will illustrate how this pattern encourages code duplication, lacks type safety, requires documentation and can be prone to bugs.
```
std::map<std::string, Object> mMap; // Stored in all lowercase for a case-insensitive lookup
std::string lowerKey = Misc::StringUtils::lowerCase(key);
mMap.emplace(lowerKey, object);
std::string lowerKey = Misc::StringUtils::lowerCase(key);
mMap.find(lowerKey);
mMap.find(key); // Not found. Oops!
```
An alternative approach produces no such issues.
```
std::unordered_map<std::string, Object, Misc::StringUtils::CiHash, Misc::StringUtils::CiEqual> mMap;
mMap.emplace(key, object);
mMap.find(key);
```
Of course, such an alternative will work for a `map` as well, but an `unordered_map` is generally preferable over a `map` with these changes because we have moved `lowerCase` into the comparison operator.
In this PR I have refactored `Animation::mNodeMap` accordingly. I have reviewed and adapted all direct and indirect usage of `Animation::mNodeMap` to ensure we do not change behaviour with this PR.
2021-10-25 09:18:26 +02:00
Bo Svensson
6fb376f1cf
templatise ptr.hpp ( #3185 )
...
With this PR we consolidate identical logic for Ptr and ConstPtr with the help of a template.
2021-10-25 09:08:50 +02:00
glassmancody.info
9cbbd2fff5
better transitions
2021-10-24 17:13:42 -07:00
Andrei Kortunov
107a9ecb17
Fix variables hiding
2021-10-24 18:45:04 +04:00
elsid
a58f1a94e3
Add helpers for binary serialization
...
To construct serializer from given entities:
* Data source/destination - any value that has to be serialized/deserialized,
usually already existing type.
* Format - functional object to define high level serialization logic to
define specific format and data schema. Like order of fields, allocation.
* Visitor - functional object to define low level serialization logic to
operator on given data part.
* BinaryWriter - copies given value into provided buffer.
* BinaryReader - copies value into given destination from provided buffer.
* SizeAccumulator - calculates required buffer size for given data.
2021-10-24 14:20:44 +02:00
glassmancody.info
1e40d27318
introduce sky shaders
2021-10-23 17:53:38 -07:00
Evil Eye
f70a154195
Merge branch 'place' of github.com:akortunov/openmw into master
2021-10-23 11:34:42 +02:00
psi29a
217d17adeb
Merge branch 'ugly_rounding' into 'master'
...
Prevent floating point issues accumulating
See merge request OpenMW/openmw!1306
2021-10-23 08:39:26 +00:00
Bo Svensson
c9c8d02332
fixes a crash ( #3183 )
...
This PR fixes a crash caused by the improperly ensured lifetime of RigGeometry::mSourceGeometry. mSourceGeometry was not adequate to ensure mSourceGeometry would outlive mGeometry because we extend mGeometrys lifetime beyond this lifetime by passing mGeometry to the draw traversal instead of this.
In addition,
We add important comments.
We detect and prevent generally unsafe operations in high level code.
We add a sprinkling of const to help clarify intentions.
2021-10-23 10:31:46 +02:00
Evil Eye
b5c876299d
Round to a power of two
2021-10-23 09:29:16 +02:00
wareya
e23b0edda4
Add pre-pass to collision trace function that traces over less distance if possible
2021-10-22 23:11:23 -04:00
psi29a
1ffa02b2fd
Merge branch 'fix_windows_tests' into 'master'
...
Fix tests on windows
See merge request OpenMW/openmw!1313
2021-10-22 12:35:10 +00:00
psi29a
a4899d72f4
Merge branch 'deduplicate_swim_speed' into 'master'
...
Deduplicate swim speed formula implementation
See merge request OpenMW/openmw!1310
2021-10-22 12:34:19 +00:00
psi29a
ed811176bc
Merge branch 'fix_esm_loader' into 'master'
...
Fix logic expression for not found value in EsmLoader::getModel
See merge request OpenMW/openmw!1308
2021-10-22 12:33:39 +00:00
psi29a
0d810fe41c
Merge branch 'init_gmst' into 'master'
...
Use lambda instead of bool to make sure GMST initialized once
See merge request OpenMW/openmw!1309
2021-10-21 21:41:29 +00:00
Alexei Kotov
156f2a471a
Merge branch 'self_target' into 'master'
...
Apply on self effects on projectiles to the target instead
Closes #6321
See merge request OpenMW/openmw!1312
2021-10-21 20:37:11 +00:00
elsid
b5f0057ac9
Fix tests on windows
2021-10-21 19:48:31 +02:00
Evil Eye
63fa6d3b7c
Apply on self effects on projectiles to the target instead
2021-10-21 17:28:36 +02:00
Evil Eye
31a7c83cc7
Fix a regression involving default arguments
2021-10-21 17:22:15 +02:00
elsid
68ed8487b5
Use lambda instead of bool to make sure GMST initialized once
...
This is less expensive than having 2 static variables and thread-safe.
2021-10-21 03:19:12 +02:00
elsid
2a0e1697b6
Deduplicate swim speed formula implementation
2021-10-21 01:25:09 +02:00
Bo Svensson
a854a6e04a
removes UnrefQueue ( #3181 )
...
Currently, we use an `UnrefQueue` which supposedly aims to transfer destruction costs to another thread. The implications of this unusual pattern can not be well understood because some allocators might free resources more efficiently if they are freed by the same thread that allocated them. In addition, `UnrefQueue` complicates the validation of thread safety in our engine. Lastly, our current usage of `UnrefQueue` triggers `ref()`, `unref()` atomic operations as objects are passed into the queue. These operations could be more expensive than the actual destruction.
With this PR we thus remove `UnrefQueue`. We can expect these changes to have a minor impact at most because we free most resources elsewhere in `ResourceSystem::updateCache`.
2021-10-20 23:02:15 +02:00
elsid
a3b6bc7263
Fix logic expression for not found value
2021-10-20 17:48:10 +02:00
Evil Eye
dd4d8b2649
Prevent floating point issues accumulating
2021-10-19 21:38:07 +02:00
psi29a
a5b9c9160d
Merge branch 'compression' into 'master'
...
Add functions to compress/decompress vector of bytes
See merge request OpenMW/openmw!1305
2021-10-19 08:07:22 +00:00
elsid
1da9c75692
Add missing initialization for Enchanting::mObjectType
2021-10-18 22:11:48 +02:00
elsid
e5413c0664
Add functions to compress/decompress vector of bytes
2021-10-18 20:46:22 +02:00
Petr Mikheev
17f7a1a2ea
Merge branch 'fix_lua_test' into 'master'
...
Fix LuaUtilPackageTest.Transform
See merge request OpenMW/openmw!1302
2021-10-18 07:16:10 +00:00
elsid
bb26ba30b6
Add progress reporter type
...
To log/report progress of long duration operations using given time period.
2021-10-18 01:26:10 +02:00
AnyOldName3
9be606a40d
Finish removing old Escape classes
2021-10-17 23:40:34 +01:00
elsid
23026caacc
Fix LuaUtilPackageTest.Transform
...
It can fail due to float arithmetic precision with error:
Expected equality of these values:
getAsString(lua, "moveAndScale")
Which is: "TransformM{ move(6, 22, 18) scale(0.5, 1, 0.5) rotation(angle=8.53284e-17, axis=(1, 0, 0)) }"
"TransformM{ move(6, 22, 18) scale(0.5, 1, 0.5) }"
2021-10-17 22:47:18 +02:00
psi29a
d8d16a52e1
Merge branch 'esm_loader' into 'master'
...
Add ESM data loader
See merge request OpenMW/openmw!1301
2021-10-17 19:21:32 +00:00
elsid
046b5f83ee
Add ESM data loader
...
A component to load ESM content files with limited support for record types and
selection which of them to load. Supported record types are:
ACTI, CELL, CONT, DOOR, GMST, LAND, STAT.
2021-10-17 19:55:29 +02:00
elsid
18d3102148
Do not use union to access FIXED_STRING<4> as int
...
https://en.cppreference.com/w/cpp/language/union :
> It's undefined behavior to read from the member of the union that wasn't most recently written.
2021-10-17 17:16:21 +02:00
Andrei Kortunov
362c124e8f
Allow to place levelled creatures to the game world (bug 6347)
2021-10-17 17:58:54 +04:00
psi29a
00b28d2665
Merge branch 'over_time' into 'master'
...
Fix particles and magnitudes for (damage) over time effects
See merge request OpenMW/openmw!1298
2021-10-17 12:12:22 +00:00
psi29a
2f0484f4fc
Merge branch 'clear_me_not' into 'master'
...
Do not clear depth buffer in first person (#6078 )
Closes #6078
See merge request OpenMW/openmw!1119
2021-10-17 09:30:30 +00:00
glassmancody.info
cc009d246f
do not clear depth buffer in first person
2021-10-16 18:37:34 -07:00
unknown
add6eb9c95
Fix particles and magnitudes for (damage) over time effects
2021-10-16 21:40:41 +02:00
psi29a
c051298848
Merge branch 'sqlite3_helpers' into 'master'
...
Add sqlite3 helpers
See merge request OpenMW/openmw!1299
2021-10-16 18:48:02 +00:00
elsid
c88367b6a6
Add sqlite3 helpers
2021-10-16 17:43:08 +02:00
elsid
501316a9f7
Add missing initialization in MWPhysics::Object
...
==16218== Conditional jump or move depends on uninitialised value(s)
==16218== at 0xCDBC27: MWPhysics::Object::commitPositionChange() (object.cpp:68)
==16218== by 0xCE5B64: MWPhysics::PhysicsTaskScheduler::updatePtrAabb(std::shared_ptr<MWPhysics::PtrHolder> const&) (mtphysics.cpp:446)
==16218== by 0xCE5CC3: operator() (mtphysics.cpp:432)
==16218== by 0xCE5CC3: for_each<std::_Rb_tree_const_iterator<std::shared_ptr<MWPhysics::PtrHolder> >, MWPhysics::PhysicsTaskScheduler::updateAabbs()::<lambda(const std::shared_ptr<MWPhysics::PtrHolder>&)> > (stl_algo.h:3820)
==16218== by 0xCE5CC3: MWPhysics::PhysicsTaskScheduler::updateAabbs() (mtphysics.cpp:431)
==16218== by 0xCE5E35: MWPhysics::PhysicsTaskScheduler::afterPreStep() (mtphysics.cpp:586)
==16218== by 0xCE6238: operator() (mtphysics.cpp:533)
==16218== by 0xCE6238: wait<MWPhysics::PhysicsTaskScheduler::doSimulation()::<lambda()> > (barrier.hpp:33)
==16218== by 0xCE6238: MWPhysics::PhysicsTaskScheduler::doSimulation() (mtphysics.cpp:533)
==16218== by 0xCE6377: MWPhysics::PhysicsTaskScheduler::worker() (mtphysics.cpp:464)
==16218== by 0x74523C3: execute_native_thread_routine (thread.cc:82)
==16218== by 0x76FF258: start_thread (in /usr/lib/libpthread-2.33.so)
==16218== by 0x78155E2: clone (in /usr/lib/libc-2.33.so)
==16218==
==16218== Conditional jump or move depends on uninitialised value(s)
==16218== at 0xCDBC30: MWPhysics::Object::commitPositionChange() (object.cpp:73)
==16218== by 0xCE5B64: MWPhysics::PhysicsTaskScheduler::updatePtrAabb(std::shared_ptr<MWPhysics::PtrHolder> const&) (mtphysics.cpp:446)
==16218== by 0xCE5CC3: operator() (mtphysics.cpp:432)
==16218== by 0xCE5CC3: for_each<std::_Rb_tree_const_iterator<std::shared_ptr<MWPhysics::PtrHolder> >, MWPhysics::PhysicsTaskScheduler::updateAabbs()::<lambda(const std::shared_ptr<MWPhysics::PtrHolder>&)> > (stl_algo.h:3820)
==16218== by 0xCE5CC3: MWPhysics::PhysicsTaskScheduler::updateAabbs() (mtphysics.cpp:431)
==16218== by 0xCE5E35: MWPhysics::PhysicsTaskScheduler::afterPreStep() (mtphysics.cpp:586)
==16218== by 0xCE6238: operator() (mtphysics.cpp:533)
==16218== by 0xCE6238: wait<MWPhysics::PhysicsTaskScheduler::doSimulation()::<lambda()> > (barrier.hpp:33)
==16218== by 0xCE6238: MWPhysics::PhysicsTaskScheduler::doSimulation() (mtphysics.cpp:533)
==16218== by 0xCE6377: MWPhysics::PhysicsTaskScheduler::worker() (mtphysics.cpp:464)
==16218== by 0x74523C3: execute_native_thread_routine (thread.cc:82)
==16218== by 0x76FF258: start_thread (in /usr/lib/libpthread-2.33.so)
==16218== by 0x78155E2: clone (in /usr/lib/libc-2.33.so)
==16218==
2021-10-16 00:43:50 +02:00
elsid
d06e697356
Initialize RenderingManager fields before use
...
PostProcessor is constructed before mNearClip, mViewDistance, mFieldOfView are
initialized and the constructor calls updateProjectionMatrix that uses these
fields.
==16218== Conditional jump or move depends on uninitialised value(s)
==16218== at 0x722EBE: min<float> (stl_algobase.h:235)
==16218== by 0x722EBE: MWRender::RenderingManager::updateProjectionMatrix() (renderingmanager.cpp:1183)
==16218== by 0x7D022F: MWRender::PostProcessor::PostProcessor(MWRender::RenderingManager&, osgViewer::Viewer*, osg::Group*) (postprocessor.cpp:144)
==16218== by 0x728B41: MWRender::RenderingManager::RenderingManager(osgViewer::Viewer*, osg::ref_ptr<osg::Group>, Resource::ResourceSystem*, SceneUtil::WorkQueue*, std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const&, DetourNavigator::Navigator&) (renderingmanager.cpp:452)
==16218== by 0xBB5E65: MWWorld::World::World(osgViewer::Viewer*, osg::ref_ptr<osg::Group>, Resource::ResourceSystem*, SceneUtil::WorkQueue*, Files::Collections const&, std::vector<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> >, std::allocator<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > > > const&, std::vector<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> >, std::allocator<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > > > const&, ToUTF8::Utf8Encoder*, int, std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const&, std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const&, std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const&, std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const&) (worldimp.cpp:190)
==16218== by 0xDEEA6F: OMW::Engine::prepareEngine(Settings::Manager&) (engine.cpp:789)
==16218== by 0xDF2068: OMW::Engine::go() (engine.cpp:959)
==16218== by 0xDE7B8F: runApplication(int, char**) (main.cpp:220)
==16218== by 0x1006593: wrapApplication(int (*)(int, char**), int, char**, std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const&) (debugging.cpp:205)
==16218== by 0x7152C3: main (main.cpp:232)
==16218==
==17455== Conditional jump or move depends on uninitialised value(s)
==17455== at 0x4F8613F: osg::Matrixd::makeFrustum(double, double, double, double, double, double) (Matrix_implementation.cpp:916)
==17455== by 0x4EC0E11: osg::Camera::setProjectionMatrixAsPerspective(double, double, double, double) (Matrixd:580)
==17455== by 0x722DDA: MWRender::RenderingManager::updateProjectionMatrix() (renderingmanager.cpp:1167)
==17455== by 0x7D01EF: MWRender::PostProcessor::PostProcessor(MWRender::RenderingManager&, osgViewer::Viewer*, osg::Group*) (postprocessor.cpp:144)
==17455== by 0x728BA1: MWRender::RenderingManager::RenderingManager(osgViewer::Viewer*, osg::ref_ptr<osg::Group>, Resource::ResourceSystem*, SceneUtil::WorkQueue*, std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const&, DetourNavigator::Navigator&) (renderingmanager.cpp:453)
==17455== by 0xBB5E25: MWWorld::World::World(osgViewer::Viewer*, osg::ref_ptr<osg::Group>, Resource::ResourceSystem*, SceneUtil::WorkQueue*, Files::Collections const&, std::vector<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> >, std::allocator<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > > > const&, std::vector<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> >, std::allocator<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > > > const&, ToUTF8::Utf8Encoder*, int, std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const&, std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const&, std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const&, std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const&) (worldimp.cpp:190)
==17455== by 0xDEEA3F: OMW::Engine::prepareEngine(Settings::Manager&) (engine.cpp:789)
==17455== by 0xDF2038: OMW::Engine::go() (engine.cpp:959)
==17455== by 0xDE7B5F: runApplication(int, char**) (main.cpp:220)
==17455== by 0x1006563: wrapApplication(int (*)(int, char**), int, char**, std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const&) (debugging.cpp:205)
==17455== by 0x7152C3: main (main.cpp:232)
==17455==
2021-10-16 00:43:31 +02:00
psi29a
ac3c02496c
Merge branch 'terrainselectionoptimize' into 'master'
...
Terrain selection optimizations
See merge request OpenMW/openmw!1261
2021-10-15 20:46:20 +00:00
Chris Djali
9c040d1ff7
Merge pull request #3175 from bosvensson1/patch-52
...
removes sky bounds
2021-10-15 20:12:32 +01:00
unelsson
14c4bba4a3
Remove unused include
2021-10-15 21:54:00 +03:00
unelsson
28278e9a82
Drawing duplicate lines is faster than iterating through big containers
2021-10-15 21:54:00 +03:00
unelsson
55456a19fc
Only iterate through temporary selection when using toggle
2021-10-15 21:54:00 +03:00
unelsson
46960825ef
Various terrain selection and editmode dragging fixes
2021-10-15 21:54:00 +03:00
unelsson
89a20b6ea5
Call dragEnded instead of pressed also after aborted operation
2021-10-15 21:54:00 +03:00
unelsson
3df9ceda03
Remove measurement code
2021-10-15 21:54:00 +03:00
unelsson
7602d677fa
Terrain selection optimizations, measurements, renderBin change
2021-10-15 21:54:00 +03:00
psi29a
ed1953b811
Merge branch 'actor_souls_only' into 'master'
...
Don't hit the ground
Closes #6339
See merge request OpenMW/openmw!1295
2021-10-14 17:15:02 +00:00
Evil Eye
5805c0114a
Don't hit the ground
2021-10-14 17:40:03 +02:00
psi29a
29082ff658
Merge branch 'morrowland_the_musical' into 'master'
...
Stop trying to play non-existent music files started by scripts
See merge request OpenMW/openmw!1293
2021-10-14 15:25:11 +00:00
psi29a
787da4891c
Merge branch 'actor_souls_only' into 'master'
...
Check if the target is an actor before updating magic effects
Closes #6339
See merge request OpenMW/openmw!1294
2021-10-14 15:19:16 +00:00
psi29a
89077af3ff
Merge branch 'getters' into 'master'
...
Move getters to header in order to allow inlining (performance optimization)
See merge request OpenMW/openmw!1289
2021-10-14 15:17:08 +00:00
Evil Eye
bba80b07a2
Check if the target is an actor
2021-10-14 16:49:30 +02:00
Bo Svensson
db3d938ee9
cleans up BSAFile ( #3177 )
...
We currently build a large map of a BSAFile's contents unused by Open MW. We already map archive contents in VFS. With this PR we remove the map from BSAFile and reimplement its only current use in BSATool.
2021-10-14 14:46:44 +02:00
psi29a
e86b9a7b89
Merge branch 'add_comment' into 'master'
...
Add comment for MWWorld::Ptr::getType() because it is not obvious.
See merge request OpenMW/openmw!1291
2021-10-14 12:44:04 +00:00
Evil Eye
4a6464ea67
Stop trying to play non-existent music files started by scripts
2021-10-13 22:40:07 +02:00
Evil Eye
ec6451e93a
Merge branch 'recordtype' into 'master'
...
Avoid copying std::string in MWWorld::Ptr::getTypeDescription()
See merge request OpenMW/openmw!1290
2021-10-13 17:04:32 +00:00
Bo Svensson
fc9ab97950
sky.cpp
2021-10-13 10:08:28 +00:00
Petr Mikheev
4e9d691715
Add comment for MWWorld::Ptr::getType() because it is not obvious.
2021-10-12 21:30:37 +02:00
Evil Eye
6b482d0b52
Merge branch 'openmw-tradeglitch' into master
2021-10-12 18:19:19 +02:00
psi29a
6ec66edb7c
Merge branch 'soulful' into 'master'
...
Fix soul trapping for one shot kills
Closes #6337
See merge request OpenMW/openmw!1288
2021-10-12 07:59:44 +00:00
psi29a
67fa8413f3
Merge branch 'physics_heightfield' into 'master'
...
Replace float type for arguments to create heightfield with int
See merge request OpenMW/openmw!1285
2021-10-12 07:58:34 +00:00
psi29a
207a7245bc
Merge branch 'navigator_settings' into 'master'
...
Initialize navigator max climb and max slope settings in makeSettingsFromSettingsManager
See merge request OpenMW/openmw!1283
2021-10-12 07:02:08 +00:00
psi29a
444765e304
Merge branch 'navmesh_agent_half_extents' into 'master'
...
Define default actor half extents in settings
See merge request OpenMW/openmw!1282
2021-10-12 07:01:13 +00:00
Petr Mikheev
a8acc19988
Avoid copying std::string in MWWorld::Ptr::getTypeDescription()
2021-10-12 00:18:23 +02:00
elsid
405e814190
Move btCollisionObject creation for MWPhysics::Object into components
2021-10-11 23:14:02 +02:00
Evil Eye
ae4578f566
Fix soul trapping for one shot kills
2021-10-11 21:46:15 +02:00
Petr Mikheev
fec65acd18
Move getters to header in order to allow inlining
2021-10-11 21:33:35 +02:00
elsid
144862aa35
Define default actor half extents in settings
...
Player's half extents may change over time when wolfskin model is used for
example. Having it in settings is a more presistent approach.
2021-10-11 19:41:43 +02:00
elsid
7c5a590890
Replace float type for arguments to create heightfield with int
...
To reduce amount of computations on the caller side and restrict possible
values.
* verts can't be non-int because it's a number of things.
* worldsize is initially defined as int by ESM::Land::REAL_SIZE.
* Put function to calculate heightfied shift into components to be able to
reuse by other binaries.
2021-10-11 19:28:08 +02:00
elsid
6986feb81b
Initialize navigator max climb and max slope settings in makeSettingsFromSettingsManager
...
To avoid having multiple places to initialize them when they will be required
by multiple binaries.
2021-10-11 18:50:26 +02:00
Bo Svensson
d6613d3677
mostly reverts MWLua changes ( #3170 )
...
We just can no longer use the former ptr.getTypeName() as a fallback, but I do not suppose it matters. This value was an implementation defined string that usually contained a garbled mess.
Probably we should additionally refactor Lua types completely now that we have Ptr::getType(). I will leave this up to MWLua developers.
2021-10-11 16:56:26 +02:00
Bo Svensson
5cf9995a31
fixes windows build
2021-10-11 13:28:37 +00:00
Bo Svensson
ef906cbfa8
improves MWClass mapping ( #3166 )
...
Currently, we use a peculiar mapping of ESM classes by their std::type_info::name. This mapping is an undefined behaviour because std::type_info::name is strictly implementation defined. It could return a non-unique value on some platforms. With this PR we use the unsigned int sRecordId of the ESM class as a more efficient lookup type that does not build on undefined behaviour. We can expect marginally faster save-game loading with these changes as well.
2021-10-11 13:46:21 +02:00
Bo Svensson
98f8295765
allows to skip ComputeLightSpaceBounds traversal ( #3152 )
...
Currently, we always traverse the scene graph an additional time with a ComputeLightSpaceBounds visitor during shadow casting. ComputeLightSpaceBounds is only useful when the shadow casting mask allows us to shrink the bounds of the rendered scene, so we guard its traversal with a check against getCastsShadowTraversalMask. In practice, this guard never works because we build the traversal mask inclusively.
With this PR we limit the getCastsShadowTraversalMask check to relevant masks. This new check allows us to skip a superfluous ComputeLightSpaceBounds traversal with most settings.
2021-10-11 11:27:50 +02:00
psi29a
66a6b80df9
Merge branch 'thrust_into_the_light' into 'master'
...
Detect keys and enchanted items in containers without custom data
Closes #6326
See merge request OpenMW/openmw!1265
2021-10-11 09:13:31 +00:00
psi29a
f9124ccea6
Merge branch 'recast_mesh_slope' into 'master'
...
Use different colors for walkable and non-walkable recast mesh triangles
See merge request OpenMW/openmw!1277
2021-10-11 08:56:04 +00:00
psi29a
3e2694dde9
Merge branch 'catch_me' into 'master'
...
Remove active effects from spells that no longer exist
See merge request OpenMW/openmw!1273
2021-10-11 08:53:48 +00:00
psi29a
d3bad2dba2
Merge branch 'stripperiffic_werewolves' into 'master'
...
Remove magic effects before saving stats when turning into a werewolf
Closes #6330
See merge request OpenMW/openmw!1270
2021-10-11 08:52:46 +00:00
psi29a
21c4504d35
Merge branch 'max_slope' into 'master'
...
Change max walkable slope angle to 46 degrees
See merge request OpenMW/openmw!1280
2021-10-11 08:22:35 +00:00
Bo Svensson
cbcdd705ee
minor objectpaging.cpp scene graph optimisations ( #3155 )
...
We now use PositionAttitudeTransform for unmerged nodes because I have been informed PositionAttitudeTransform's scene graph performance is measurably faster than MatrixTransform's. We still need to use MatrixTransform for merged nodes because the Optimizer has limited support for non-MatrixTransform nodes. These MatrixTransforms will be removed in the merging process anyway.
2021-10-11 10:09:01 +02:00
AnyOldName3
18869c2c75
Add some extra tests
...
The behaviour here is unchanged, but was previously untested.
2021-10-11 00:02:33 +01:00
AnyOldName3
7fb5b773dd
Remove obsolete tests
...
The old behaviour was basically a bug and @ doesn't mean anything special now
2021-10-11 00:01:58 +01:00
AnyOldName3
1b83b08d80
Merge remote-tracking branch 'upstream/master' into detain-hash
...
Tests which no longer work are commented out.
Some of these don't work because they're effectively testing for the
presence of bugs in the old implementation.
Others don't work because we're no longer accidentally disabling the
boost::program_options feature where it generates an error if only part
of a token gets consumed.
These will be fixed by later commits.
2021-10-10 23:50:50 +01:00
elsid
ff9aabafd1
Change max walkable slope angle to 46 degrees
...
This is the value used by vanilla Morrowind engine. At this angle player
character starts sliding down the slope.
This fixes navigation and movement issue in Mournhold, Godsreach.
2021-10-10 18:25:05 +02:00
Bo Svensson
af759683b8
enables std::move in keywordsearch.hpp ( #3163 )
...
For some reason we have commented std::move keywords in keywordsearch.hpp while they are quite beneficial. openmw_test_suite for keywordsearch.hpp takes 30% less time with these changes.
2021-10-10 18:15:40 +02:00
elsid
0c8a811ad5
Render only cached recast mesh
...
To avoid waiting while recast mesh is generating.
Remove redundant continue.
2021-10-10 13:13:57 +02:00
Evil Eye
3d5950f790
Remove active effects from spells that no longer exist
2021-10-09 12:27:17 +02:00
AnyOldName3
af0d399103
Purge all uses of Escape Hash types
2021-10-09 01:49:08 +01:00
Evil Eye
ec735529da
Remove active effects from the player when transforming
2021-10-08 17:32:41 +02:00
Evil Eye
f6eeee3ad5
Detect keys and enchanted items in containers without custom data
2021-10-08 16:51:30 +02:00
psi29a
7af245d205
Merge branch 'sync_sync_with_async' into 'master'
...
Merge logic of sync and async physics simulation
See merge request OpenMW/openmw!1250
2021-10-08 09:35:32 +00:00
psi29a
ae31138686
Merge branch 'options_tests' into 'master'
...
Add tests for openmw options
See merge request OpenMW/openmw!1253
2021-10-08 08:02:40 +00:00
psi29a
9c47fdcf7e
Merge branch 'flip_sign' into 'master'
...
Fix regression #6328
Closes #6328
See merge request OpenMW/openmw!1267
2021-10-08 06:47:57 +00:00
psi29a
1332e57195
Merge branch 'outside_means_outside' into 'master'
...
Make StayOutside only block teleportation from exteriors to interiors
Closes #6323
See merge request OpenMW/openmw!1268
2021-10-08 06:46:42 +00:00
psi29a
fc7e13d76a
Merge branch 'omwaddon_dep' into 'master'
...
Allow creating omwaddons without a dependency on an omwgame
See merge request OpenMW/openmw!1243
2021-10-08 06:40:43 +00:00
Evil Eye
caafd0c667
Remove CE enchantments before saving stats when turning into a werewolf
2021-10-07 21:09:43 +02:00
psi29a
1f62fd3b56
Merge branch 'Fix_Keyword_Report_to_caius' into 'master'
...
Fix keyword search when the keyword is preceded by a non whitespace non alpha character
Closes #6308
See merge request OpenMW/openmw!1266
2021-10-07 13:26:40 +00:00
florent teppe
e5abadc234
Fix keyword search when the keyword is preceded by a non whitespace non alpha character
2021-10-07 13:26:40 +00:00
psi29a
555224a0fb
Merge branch 'fixes' into 'master'
...
Make compilers happy and fix the changelog
See merge request OpenMW/openmw!1260
2021-10-07 10:17:27 +00:00
Evil Eye
dfc72e9b7e
Make StayOutside only block teleportation from exteriors to interiors
2021-10-06 18:25:28 +02:00
Evil Eye
7540265432
Fix regression #6328
2021-10-06 17:14:00 +02:00
Bo Svensson
787f91211d
resets state updater to apply light settings ( #3141 )
...
resets state updater to apply light settings
With this PR we achieve the same effect with fewer lines of code.
2021-10-06 11:21:30 +02:00
psi29a
c3f5e8f968
Merge branch 'lua_transform' into 'master'
...
3D transforms in Lua
See merge request OpenMW/openmw!1235
2021-10-06 09:21:21 +00:00
elsid
035307b012
Add tests for openmw options
...
In attempt to document current behaviour. Add commented out checks as desired
behaviour.
2021-10-05 22:51:12 +02:00
Kindi
ce54edf011
Update tradewindow.cpp
...
Additional check
2021-10-05 18:00:53 +00:00
Bo Svensson
442a0e8434
avoids two transforms in sky.cpp ( #3150 )
...
As we discovered in #3148 , `Transform` nodes and their low level equivalence `pushModelViewMatrix` are somewhat costly involving a `Matrix::invert` operation per frame.
With this PR we avoid one `Transform` node for sun flashes and avoid another `pushModelViewMatrix` call in case the sun is fully visible.
2021-10-05 16:00:30 +02:00
fredzio
3b174d72d8
Introduce 3 scoped mutex wrappers to allow to conditionally skip taking
...
mutexes in synchronous case.
2021-10-05 15:52:27 +02:00
fredzio
21dbe314bf
Use common function for sync and async case. Now both cases follow the
...
same flow, synchronous simulation is just a special case.
2021-10-05 15:44:20 +02:00
Frederic Chardon
499b161e7b
Merge handleFall() and updateMechanics() into updateActor(). It remove gratuitious differences between sync and async cases. Also, it will make the after simulation update logic easier to follow when projectiles move into the simulation thread.
2021-10-05 15:44:20 +02:00
Bret Curtis
0d1d3e67bc
Merge pull request #3149 from bosvensson1/patch-24
...
With this PR we fix a -Wreorder warning.
2021-10-05 15:07:02 +02:00
Bo Svensson
4b1c009ffd
use StateSet define for translucentFramebuffer ( #3138 )
...
With this PR we test out osg's shader define system for a somewhat harmless feature. As we can see, our code becomes more concise and efficient in this case. Most importantly, we no longer create unneeded vertex shader objects.
2021-10-05 14:37:08 +02:00
Bo Svensson
b2af81bc18
converts remaining osg::NodeCallback ( #3147 )
...
With this PR we convert remaining instantiations of the deprecated osg::NodeCallback in Open MW to SceneUtil::NodeCallback.
2021-10-05 14:21:12 +02:00
Bo Svensson
9f58616aa0
fixes -Wreorder warning
2021-10-05 12:02:49 +00:00
Bo Svensson
8e9851c97c
npcanimation.cpp ( #3148 )
2021-10-05 13:52:19 +02:00
Kindi
d9b254178f
Update tradewindow.hpp
...
remover redundant
2021-10-04 20:47:45 +00:00
Kindi
f28d6738bf
Update tradewindow.cpp
2021-10-04 20:44:56 +00:00
Bo Svensson
e4a9eefc2a
uses a bitfield in refdata.hpp ( #3143 )
...
* uses a bitfield in refdata.hpp
With this simple change we pack boolean values to reduce the memory requirements of game objects.
* refdata.hpp [ci skip]
* refdata.cpp
2021-10-04 12:12:00 +02:00
Bo Svensson
aaf7b423d6
adds a replacement for osg::NodeCallback ( #3144 )
...
* nodecallback.hpp
* lightmanager.hpp
* lightmanager.cpp
* lightmanager.hpp
* nodecallback.hpp
* nodecallback.hpp
* [ci skip]
* lightmanager.hpp
* nodecallback.hpp
* nodecallback.hpp
* lightmanager.cpp
* lightmanager.cpp
* nodecallback.hpp
* [ci skip]
* [ci skip]
* controller.cpp
* [ci skip]
* osgacontroller.cpp
* keyframe.hpp
* controller.hpp
* keyframe.hpp
* [ci skip]
* keyframe.hpp
* animation.hpp
* [ci skip]
* weaponanimation.cpp
* nodecallback.hpp
2021-10-04 10:56:55 +02:00
Kindi
0c1b78c42a
Update tradewindow.cpp curly
2021-10-04 02:16:01 +00:00
kuyondo
071793eeb3
Merge branch 'master' of https://gitlab.com/Kuyondo/openmw
2021-10-04 08:12:56 +08:00
kuyondo
49da33a129
comiit
2021-10-04 08:12:15 +08:00
Evil Eye
d680aa26e9
Disallow switch fallthrough
2021-10-03 21:58:10 +02:00
psi29a
0e07fc38e5
Merge branch 'opencs-ui-tweaks' into 'master'
...
Minor UI tweaks all around OpenMW-CS
See merge request OpenMW/openmw!1212
2021-10-03 19:13:51 +00:00
Matjaž Lamut
1c9f06f742
Minor UI tweaks all around OpenMW-CS
2021-10-03 19:13:51 +00:00
psi29a
2c8c36fe5d
Merge branch 'master' into 'effective_magic'
...
# Conflicts:
# CHANGELOG.md
2021-10-01 21:20:08 +00:00
psi29a
bd866cf210
Merge branch 'fix_infidelities' into 'master'
...
Fix Infidelities quest from Tribunal (#6307 )
Closes #6307
See merge request OpenMW/openmw!1248
2021-10-01 21:12:15 +00:00
psi29a
1d342f80ed
Merge branch 'cursorspeedmerge' into 'master'
...
Updated: Change cursor speed with settings.cfg (#6312 )
Closes #6312
See merge request OpenMW/openmw!1255
2021-10-01 11:23:53 +00:00
psi29a
f6b27f610d
Merge branch 'revert_and_twist' into 'master'
...
Revert and restore the cell grid size with alternate fix
See merge request OpenMW/openmw!1259
2021-10-01 11:21:06 +00:00
Bret Curtis
52a10a4bc0
remove one last assert
2021-10-01 12:24:29 +02:00
Bo Svensson
2568f119a4
reapplies PR without npe ( #3137 )
...
* avoids creating empty statesets on drawables
Currently, we attempt to skip creating state on drawable nodes when this state matches the default state. This attempt is incomplete because we still create an avoidable empty stateset in the default case.
* renderingmanager.cpp
* nifloader.cpp
* nifloader.cpp
* shadervisitor.cpp
2021-10-01 10:11:00 +02:00
psi29a
9cf9da9cbd
Merge branch 'fix' into 'master'
...
Resolve warning: lambda capture 'defaultCollisionType' is not required to be captured for this use
See merge request OpenMW/openmw!1247
2021-10-01 08:02:17 +00:00
andrewapp
b5af192888
gamepad cursor speed fix
2021-10-01 09:19:26 +10:00
Bret Curtis
8309910d9d
Restore the cell grid to its former non-exorbitant size, reducing stutter and also threw in a simple alternative fix for the actor position adjustment issue.
2021-09-30 22:58:40 +02:00
Evil Eye
2de7b8e2fb
Allow non-biped creatures using weapons to open doors
2021-09-29 21:21:52 +02:00
Evil Eye
4abcb0d7b9
Remove applied magnitude instead of min magnitude
2021-09-29 19:25:12 +02:00
Evil Eye
63a9203dde
Fix icon magnitude
2021-09-29 19:25:12 +02:00
Evil Eye
43074347e8
Prevent spell duplication
2021-09-29 19:25:11 +02:00
Evil Eye
b8e4f18751
Clear temporary effects before unloading actors to prevent absorb effects becoming permanent
2021-09-29 19:25:11 +02:00
Evil Eye
161e042e2a
Prevent iterator invalidation when cleaning up summons
2021-09-29 19:25:11 +02:00
Evil Eye
dc1fe62dde
Overhaul magic effects to work with onApply and onEnd events
2021-09-29 19:25:10 +02:00
Andrei Kortunov
e109d86489
Revert "avoids creating empty statesets on drawables ( #3132 )"
...
This reverts commit 957c25a491
.
2021-09-29 21:01:22 +04:00
Bo Svensson
d8707a763f
fixes build ( #3134 )
...
* quadtreeworld.cpp
* renderingmanager.cpp [ci skip]
* quadtreeworld.hpp
* cellborder.hpp
* cellborder.cpp
2021-09-29 17:10:58 +02:00
Bret Curtis
803195a05f
add back some explicit includes
2021-09-29 16:29:10 +02:00
Bo Svensson
8358418555
set the correct program link parameters ( #3110 )
...
* shadermanager.hpp setProgramTemplate
* shadermanager.hpp
* shadermanager.cpp setProgramTemplate
* shadervisitor.hpp setProgramTemplate
* shadervisitor.cpp setProgramTemplate
* scenemanager.cpp setProgramTemplate
* scenemanager.hpp setProgramTemplate
* renderingmanager.cpp
* groundcover.cpp setProgramTemplate
* groundcover.hpp
* groundcover.cpp
* shadervisitor.cpp
* util.cpp
* lightmanager.cpp
* scenemanager.cpp
* scenemanager.hpp
* lightmanager.cpp
* lightmanager.cpp
* lightmanager.cpp
* scenemanager.hpp [ci skip]
* water.cpp
* groundcover.cpp
* shadermanager.hpp
2021-09-29 15:40:37 +02:00
Andrei Kortunov
1109cc3ac7
Remove unused data field ( #3133 )
2021-09-29 12:08:51 +02:00
Bo Svensson
957c25a491
avoids creating empty statesets on drawables ( #3132 )
...
* avoids creating empty statesets on drawables
Currently, we attempt to skip creating state on drawable nodes when this state matches the default state. This attempt is incomplete because we still create an avoidable empty stateset in the default case.
* renderingmanager.cpp
* nifloader.cpp
2021-09-29 09:58:19 +02:00
Andrei Kortunov
fc2076db1a
Fix MSVC warnings about local variables redeclaration ( #3130 )
2021-09-29 09:36:05 +02:00
elsid
c0ef4417c3
Check AiTravel destination for other actors presence
...
Use faster aabbTest but without destance filter. To avoid dependency on a
specific constant and correctly handle situations when there is a big
difference between actors sizes.
2021-09-29 01:05:23 +02:00
elsid
9950132a5f
Allow travelling actors find path over pathgrid navmesh area type
...
In addition to other navmesh areas. This makes actors behaviour closer to
vanilla when pathgrid is correct.
2021-09-29 01:05:23 +02:00
elsid
163968f578
Normalize area cost factor
...
Recastnavigation uses path cost and heuristic based on distance to find
shortest path by A* algorithm. Using raw speed values makes cost much lower
value than heuristic (1000 times less at maximum). Heuristic is defined as
distance from node to target * 0.999 that means area cost should never be less
than 0.999 or 1 for simplicity.
Use max speed to make lowest possible cost factor equal to 1.
2021-09-29 01:03:24 +02:00
Petr Mikheev
48538d5cef
3D transforms in Lua
2021-09-28 20:37:47 +02:00
Petr Mikheev
eb2f863b7d
Resolve unused-lambda-capture
warnings
2021-09-28 13:02:45 +02:00
Petr Mikheev
fb3917fc1a
Lua callbacks
2021-09-28 09:36:23 +02:00
Petr Mikheev
0bd1c22e24
Raycasting in Lua
2021-09-28 09:36:23 +02:00
Bret Curtis
fd251dfe55
remove unused member variable
2021-09-28 09:19:48 +02:00
Bo Svensson
5fde6867a2
removes unused code ( #3129 )
...
* scenemanager.cpp
* scenemanager.hpp
* scenemanager.cpp
* stats.cpp
* renderingmanager.cpp
2021-09-28 09:07:49 +02:00
Evil Eye
77a23dab09
Only add enabled objects to the scene
2021-09-27 22:23:00 +02:00
Petr Mikheev
e760a6c7e6
Merge branch 'forlua' into 'master'
...
Simple Physics API modification for Lua
See merge request OpenMW/openmw!1216
(cherry picked from commit d88494c90b501d0832ae0330a0ca81d8b8e5aa50)
02dd055a Save hitObject in castSphere() just like in castRay()
0793d0bf Allow to override collision mask and group for castSphere() as for castRay()
2021-09-27 19:50:57 +00:00
Bo Svensson
01cc61087b
improves paging preloader ( #3126 )
...
* Return check for distance when we try to reuse data
* [ci skip]
* [ci skip]
* [ci skip]
* [ci skip]
* [ci skip]
* cellpreloader.cpp
* [ci skip]
* [ci skip]
* [ci skip]
* [ci skip]
* [ci skip]
* [ci skip]
* [ci skip]
* [ci skip]
* quadtreeworld.cpp
* chunkmanager.cpp
* chunkmanager.cpp
* cellpreloader.cpp
* jvoisin
* whitespace
* whitespace
2021-09-27 21:32:18 +02:00
psi29a
782e0710af
Merge branch 'OpenCS-preserve-blocked' into 'master'
...
OpenCS - Preserve "blocked" record flags when saving. #6288
Closes #6288
See merge request OpenMW/openmw!1052
2021-09-27 19:21:20 +00:00
psi29a
908d196fee
Merge branch 'master' into 'undead_intelligence'
...
# Conflicts:
# CHANGELOG.md
2021-09-27 19:12:13 +00:00
psi29a
ade6cd0127
Merge branch 'editor_columns_filtering' into 'master'
...
Toggling table columns visibility. Partially implements #890
Closes #890
See merge request OpenMW/openmw!1232
2021-09-27 19:02:19 +00:00
psi29a
2cee222e73
Merge branch 'explosion_at_impact' into 'master'
...
Bring arrow behaviour in line with vanilla (#6233 and other change)
See merge request OpenMW/openmw!1188
2021-09-27 19:00:53 +00:00
Bo Svensson
c6f7137ee1
fixes bugs with share state ( #3111 )
...
* optimizer.cpp merge fix
* objectpaging.cpp
* optimizer.hpp setSharedStateManager
* optimizer.cpp shareState
* scenemanager.cpp shareState
* scenemanager.cpp
* optimizer.cpp
* optimizer.cpp
* scenemanager.cpp
* optimizer.cpp
2021-09-27 20:41:24 +02:00
Evil Eye
233bb287e1
Merge branch 'refactoring2' into 'master'
...
Minor refactoring: use Misc::normalizeAngle in worldimp.cpp
See merge request OpenMW/openmw!1242
2021-09-27 16:01:31 +00:00
Evil Eye
30c998f34e
Merge branch 'test_cells' into 'master'
...
Use same logic for testing cell as for loading cell
See merge request OpenMW/openmw!1240
2021-09-27 15:24:00 +00:00
Evil Eye
34cf66139a
Make GetCurrentAIPackage return -1 for non-actors and dead actors
2021-09-26 22:15:43 +02:00
Evil Eye
2f4df12b2e
Merge branch 'Fix_ASCII' into 'master'
...
Fixed an issue where keyword search expected the text to be all ASCII characters
See merge request OpenMW/openmw!1227
2021-09-26 20:08:55 +00:00
Petr Mikheev
413ac067ec
Allow creating omwaddons without a dependency on an omwgame
2021-09-26 17:44:28 +02:00
Petr Mikheev
83e0d9aeef
Minor refactoring: use Misc::normalizeAngle in worldimp.cpp
2021-09-26 17:28:51 +02:00
psi29a
e2e5161d81
Merge branch 'optimizebrushdraw' into 'master'
...
Optimize terrain editing brush drawing performance
Closes #6285
See merge request OpenMW/openmw!1226
2021-09-26 15:14:55 +00:00
elsid
5878b1fce6
Use same logic for testing cell as for loading cell
...
Having different branches makes testing less useful. If something fails in
regular executing it should fail in testing. To make it possible there should
be none differences in the execution paths.
2021-09-24 22:24:07 +02:00
elsid
d36595e09e
Make sure PathFinder::getClosestPoint is not called with failing precondition
...
Pathgrid should be not nullptr and points should be not empty.
2021-09-23 01:48:54 +02:00
Pi03k
e641bea606
Toggling table columns visibility
2021-09-22 10:47:08 +02:00
Petr Mikheev
5893b88409
Ignore time to destination when giving way ( #6296 )
2021-09-22 01:46:04 +02:00
Bo Svensson
b22fb7a7bf
consolidate node mask checks ( #3125 )
...
* consolidate node mask checks
This PR simplifies a few checks against node masks in object paging by using the osg provided `setTraversalMask`.
* objectpaging.cpp
2021-09-21 22:39:31 +02:00
Evil Eye
786b6b7c9a
Merge branch 'lua_util' into 'master'
...
Move LuaState::makeReadOnly(sol::table) out of the class
See merge request OpenMW/openmw!1229
2021-09-21 15:14:09 +00:00
florent.teppe
d9c3ba03f4
Uses limits instead of climits
2021-09-20 21:01:28 +02:00
Bo Svensson
99df1c695c
fixes wireframe is broken ( #3123 )
...
* renderingmanager.cpp [ci skip]
* groundcover.hpp [ci skip]
* groundcover.cpp
* renderingmanager.cpp [ci skip]
* renderingmanager.hpp
2021-09-20 20:17:55 +02:00
florent.teppe
2d32954888
Replaced Assert_true with expect_eq
2021-09-20 19:56:47 +02:00
psi29a
15bcbb5844
Merge branch 'getsquareroot' into 'master'
...
Remove duplicate GetSquareRoot implementation
See merge request OpenMW/openmw!1231
2021-09-19 19:49:55 +00:00
Evil Eye
831055f878
Merge branch 'OpenCS-fix-modify' into 'master'
...
OpenCS - Re-implement the fix for Issue #6067 .
See merge request OpenMW/openmw!1173
2021-09-19 19:23:30 +00:00
florent.teppe
0e06e9b221
Removed useless comment and converted the file to UTF8 to keep special characters
2021-09-19 20:31:22 +02:00
Evil Eye
6d7cb38834
Remove duplicate GetSquareRoot implementation
2021-09-19 19:53:38 +02:00
florent.teppe
c1c501ca35
Added test to make sure keyword search works even with non ascii characters
2021-09-19 15:05:48 +02:00
florent.teppe
bcb0526268
Added climits, it compiled on VS2019, but not with g++
2021-09-19 15:00:51 +02:00
Petr Mikheev
2f25257a3e
Move LuaState::makeReadOnly(sol::table) out of the class because it doesn't need to access LuaState internals.
2021-09-19 14:38:27 +02:00
Petr Mikheev
f1e3c55ea3
Fix deadlock in Lua worker thread ( #6286 )
2021-09-19 11:32:52 +02:00
florent.teppe
76be2e91e5
Fixed an issue where keyword search expected the text to be all ASCII characters
2021-09-18 18:25:04 +02:00
psi29a
68db9869f5
Merge branch 'DistantTerrainDebugChunks' into 'master'
...
Debug terrain chunks
See merge request OpenMW/openmw!1169
2021-09-18 15:21:26 +00:00
psi29a
18f5762a76
Merge branch 'master' into 'OpenCS-preserve-blocked'
...
# Conflicts:
# CHANGELOG.md
2021-09-18 15:20:26 +00:00
unelsson
70e210735a
Optimize terrain editing brush drawing performance
2021-09-18 15:57:00 +03:00
Pi03k
4ff5a04e9b
Remove redundant qt-related cmake macros
2021-09-17 14:41:04 +02:00
Bo Svensson
f62adab43a
Avoid the terrain sync completely in most cases ( #3103 )
...
We can take elsid's commit 605cb8d
further by avoiding the terrain sync completely in most cases. Currently in changeCellGrid we wait for a new preloading task to ensure the getPagedRefnums for the new active cells have been filled in by object paging. This is usually not necessary because we have already completed a preload in the past containing these active cells. With this PR we remember what we preloaded and skip the terrain sync if it is not needed.
2021-09-16 22:11:19 +02:00
psi29a
2be3a76b6a
Merge branch 'spin_me_right_round' into 'master'
...
Reset rotation when respawning actors
Closes #6273
See merge request OpenMW/openmw!1219
2021-09-15 08:27:25 +00:00
psi29a
24d1c2b5fa
Merge branch 'recurse_directory_iterator' into 'master'
...
VFS manager refactoring
See merge request OpenMW/openmw!1218
2021-09-15 07:20:52 +00:00
Cédric Mocquillon
6817282097
Move getFileExtension to common header and use instead of repeating same code
2021-09-14 18:09:55 +02:00
Cédric Mocquillon
c2df0949e2
Change normalizeFilename signature
2021-09-14 18:09:55 +02:00
Cédric Mocquillon
d4e26746a3
Use recurse subdirectory iterator to iterate over the VFS without exposing internal details
2021-09-14 18:09:54 +02:00
Evil Eye
60298cd66d
Reset rotation when respawning actors
2021-09-14 16:53:57 +02:00
pi03k
e4eeb9cce9
Remove 'no relevant classes' moc warning
2021-09-14 11:20:18 +02:00
Bo Svensson
b6f572578e
Groundcover optimisation ( #3101 )
...
* groundcover.cpp share state
* groundcover.hpp share state
2021-09-13 12:20:00 +02:00
psi29a
0ab8a7ddd7
Merge branch 'create-objects-menu' into 'master'
...
OpenMW-CS: Usability changes to the drop-down menu when creating a new object.
See merge request OpenMW/openmw!1210
2021-09-12 14:15:11 +00:00
psi29a
c40f921396
Revert "actoranimation.cpp faster getbonebyname ( #3099 )"
...
This reverts commit c284d0cf5c
2021-09-12 07:56:20 +00:00
Cédric Mocquillon
080c909c28
Merge the 'debug chunks' and 'object paging debug batches' settings into a single one
2021-09-11 21:53:05 +02:00
Bo Svensson
e2d0e86020
cellpreloader.cpp unused variable ( #3102 )
2021-09-11 20:58:42 +02:00
AnyOldName3
7b482bc2e2
Maybe force dedicated GPU on dual-AMD machines
2021-09-11 19:23:27 +01:00
psi29a
f8c7664234
Merge branch 'copy_before_move' into 'master'
...
Maybe fix #6259
Closes #6259
See merge request OpenMW/openmw!1197
2021-09-11 09:32:50 +00:00
Bo Svensson
ac72f3d636
reduces virtual function calls in a hotspot of cache retrieval ( #3100 )
...
* chunkmanager.cpp static_cast [ci skip]
* groundcover.cpp static_cast [ci skip]
* Update objectpaging.cpp
objectpaging.cpp static_cast [ci skip]
2021-09-10 17:58:57 +02:00
Bret Curtis
1edeffbafc
constify getBoneByName
2021-09-09 23:57:20 +02:00
Bo Svensson
9d661359a1
Groundcover consolidation ( #3096 )
...
* chunkmanager.hpp viewdistance
* chunkmanager.cpp viewdistance
* chunkmanager.hpp viewdistance
* quadtreeworld.cpp viewdistance
* quadtreeworld.cpp consolidate
* quadtreeworld.hpp consolidate
* renderingmanager.cpp groundcover consolidate
* renderingmanager.hpp groundcover consolidate
* renderingmanager.cpp updater move
* renderingmanager.hpp updater move
* groundcover.hpp activegrid consolidation
* groundcover.cpp activegrid consolidation
* settings-default.cfg dead settings remove
* viewdata.cpp revert
* wrong file paste mistake
* wrong file paste mistake
* wrong file paste mistake
* renderingmanager.cpp updatecallback fix
* renderingmanager.cpp namespace fix
* groundcover.hpp redefinition fix
* groundcover.cpp redefinition fix
* renderingmanager.cpp crash fix
* renderingmanager.cpp euclidean groundcover distance
* viewdata.hpp getreusedistance
* quadtreeworld.cpp reusedistance
* groundcover.rst [ci skip]
2021-09-09 23:10:22 +02:00
Bo Svensson
c284d0cf5c
actoranimation.cpp faster getbonebyname ( #3099 )
2021-09-09 23:04:38 +02:00
Bo Svensson
147ed39900
This PR solves a crash with Robert's bodies logged on your bugtracker. ( #3095 )
...
* attach.cpp [ci skip]
* attach.cpp [ci skip]
* attach.cpp [ci skip]
* npcanimation.cpp [ci skip]
* attach.hpp [ci skip]
* attach.cpp [ci skip]
* creatureanimation.cpp [ci skip]
* creatureanimation.cpp [ci skip]
* cellpreloader.cpp
* npcanimation.cpp
* attach.cpp
* make android adk happy
* make android adk happy
* changelog.md [ci skip]
* authors.md [ci skip]
2021-09-09 22:56:57 +02:00
Lamoot
6e6214bc43
In OpenMW-CS, when creating a new object, sort the entries in the drop-down menu alphabetically. Also have the menu be tall enough to show all of them at once (without scroll bars).
2021-09-09 20:46:27 +02:00
elsid
6b7434ca69
Pass std::string_view instead of const std::string&
...
* Starting with Actor::getBodyPartMesh and ending with
Misc::StringUtils::ciEqual.
* Add tests for Misc::StringUtils::ciEqual.
2021-09-09 18:39:50 +02:00
psi29a
149241daae
Merge branch 'dead_animation_code_removal' into 'master'
...
Dead animation code removal
Closes #6264
See merge request OpenMW/openmw!1198
2021-09-08 10:07:54 +00:00
JanuarySnow
bdbc6c0cba
Dead animation code removal
2021-09-08 10:07:54 +00:00
psi29a
4bf22f3ca0
Merge branch 'fix_pathgrid_path' into 'master'
...
Use pathgrid path when destination is closer to different graph component node
See merge request OpenMW/openmw!1155
2021-09-08 09:55:42 +00:00
elsid
605cb8db7c
Make sync terrain preloading sleep free
...
This reduces average time spent on in. 5 milliseconds as a base precision is
quite a lot considering that for 60 FPS frame time is 1000/16 = ~16.67 ms
when it's a cell loading frame and there is more important work to do rather
than sleeping.
2021-09-07 14:52:42 +02:00
psi29a
aef6ec464c
Merge branch 'optimize_add_item' into 'master'
...
Optimize ContainerStore::stacks (attempt #2 )
See merge request OpenMW/openmw!1200
2021-09-07 08:40:02 +00:00
elsid
403f0a72f0
Do not copy RefId when need to compare
...
Makes ContainerStore::stacks ~4x times faster when adding 4k different items
in a single frame.
2021-09-06 22:52:09 +02:00
elsid
e910dd7a25
Rename CellRef::getRefIdPtr -> getRefIdRef and return reference
...
Return value can't be nullptr. Pointer complicates the code because has to be
dereferenced.
Also move function definition to hpp to make it easier for compiler to optimize
calls.
2021-09-06 22:52:08 +02:00
elsid
b0f772af40
Define dependency to OSG plugins in one place
...
Each binary depending on components library requires OSG plugins to be linked.
Duplicating dependecies for each binary does not give benefits and brings
problems when new binary is added.
2021-09-06 22:44:52 +02:00
Frederic Chardon
7b26058fa5
moveObject() has side effects that might invalidate iterators from mActors. Instead of iterating over mActors, make a copy of needed data and iterate over the copies.
2021-09-06 12:51:25 +02:00
psi29a
6170971ea3
Merge branch 'bettermoveinstance' into 'master'
...
Set instance movement based on camera zoom
See merge request OpenMW/openmw!1186
2021-09-06 09:48:30 +00:00
elsid
a8c16071dc
Fix -Wreturn-local-addr warning
...
/home/elsid/dev/openmw/apps/opencs/model/world/actoradapter.cpp: In member function ‘const string& CSMWorld::ActorAdapter::ActorData::getPart(ESM::PartReferenceType) const’:
/home/elsid/dev/openmw/apps/opencs/model/world/actoradapter.cpp:142:20: error: returning reference to temporary [-Werror=return-local-addr]
142 | return "";
| ^~
2021-09-04 18:04:45 +02:00
Petr Mikheev
76320aae45
Merge branch 'const_ret_val' into 'master'
...
Don't use `const` for objects returned by value.
See merge request OpenMW/openmw!1183
2021-09-04 12:41:52 +00:00
psi29a
a57b5674e5
Merge branch 'hash_actors' into 'master'
...
Replace std::map with std::unordered_map and use constant Ptr.mRef as a key
See merge request OpenMW/openmw!1129
2021-09-03 15:16:14 +00:00
psi29a
a0201feb97
Merge branch 'lua_tostring' into 'master'
...
Function LuaUtil::toString
See merge request OpenMW/openmw!1187
2021-09-03 13:09:17 +00:00
fredzio
d20730458d
Replace std::map with std::unordered_map for mActors and mObjects.
...
Use Ptr.mRef as a key instead of Ptr: it is constant for the lifetime of
the object.
2021-09-03 13:14:05 +02:00
fredzio
0bce6c09e1
Change projectile behaviour to be like in vanilla wrt. water plane:
...
- enchanted arrow explode upon hit the water plane
- non enchanted arrow disappear (or more accurately, they hit nothingness)
- enchanted arrow shot underwater explode immediately
- non enchanted arrow disappear immediately
Also, solve a bug that occured previously and could theoritically still happens where we use the last tested collision position for instead of the last registered hit:
Use the hit position as saved inside Projectile::hit() instead of the last position saved inside the callback.
If a projectile collides with several objects (bottom of the sea and water surface for instance), the last collision tested won't necessarily be the impact position as we have no control over the order in which the tests are performed.
2021-09-03 10:24:05 +02:00
jvoisin
d4e3575f1d
Don't use const
for objects returned by value.
...
This prevents the usage of std::move semantics,
and makes clang-tidy sad.
2021-09-01 22:23:50 +02:00
unelsson
f876ff2c14
Clear temporary movement data at the end of the drag
2021-09-01 02:04:04 +03:00
unelsson
53d315c862
XYZ-locking, mouse wheel move fix
2021-09-01 02:04:04 +03:00
unelsson
23fe3d74ab
Use floats, not doubles
2021-09-01 02:04:04 +03:00
unelsson
840e7615f5
Store object origins and move difference
2021-09-01 02:04:04 +03:00
unelsson
0d511da615
Test of basic mouse-plane use
2021-09-01 02:04:04 +03:00
fredzio
d1a5bc207b
Iterate over mInactiveCells when unloading cells in TestCells / TestInteriorCells. Otherwise we dereference an invalid iterator after deactiveCell().
2021-08-31 16:53:52 +02:00
elsid
0daf6f5d0b
Merge branch 'comma' into 'master'
...
Don't use comma where there is no need to.
See merge request OpenMW/openmw!1179
2021-08-31 12:33:15 +00:00
Petr Mikheev
33d4d88447
Function LuaUtil::toString
2021-08-31 09:41:58 +02:00
Evil Eye
18f51e1026
Merge branch 'nonull' into 'master'
...
Don't pass a nullptr to a std::string constructor
See merge request OpenMW/openmw!1178
2021-08-30 18:59:06 +00:00
Evil Eye
06e1b17cc1
Merge branch 'unnecessary_copy' into 'master'
...
Dont copy-construct from a const-ref when used only as a const-ref
See merge request OpenMW/openmw!1184
2021-08-29 19:39:51 +00:00
jvoisin
db4fe11a44
Don't pass a nullptr to a std::string constructor
...
This is undefined behaviour.
2021-08-29 20:41:15 +02:00
jvoisin
deb2af6acc
Dont copy-construct from a const-ref when used only as a const-ref
...
This also makes clang-tiny a bit happier
2021-08-29 20:22:34 +02:00
jvoisin
a15cca5763
Use reserve
on vectors for fixed loops
...
This is a bit useless, but has the merit of appeasing clang-tiday
2021-08-29 20:18:49 +02:00
jvoisin
a6b1e38eab
Don't use comma where there is no need to.
2021-08-29 14:12:14 +02:00
cc9cii
0a5571f19e
Disable editing for blocked records in both table and dialogue edit widget.
2021-08-29 15:27:59 +10:00
Evil Eye
b4486992f0
Allow Rieklings and Goblins to attack again
2021-08-28 10:45:00 +02:00
cc9cii
b0d5ca386d
Update original cell column and do not modify the refnum when moving a reference to another cell with 3D editing.
2021-08-28 16:12:40 +10:00
cc9cii
2eb210f31a
Partially undo commit 71be4cdd20
so that moved references retain the original refnum. This is consistent with vanilla CS's behaviour.
2021-08-28 16:12:40 +10:00
cc9cii
b2bd97f283
A different implementation to MR 1051 to fix Issue #6067 .
...
This MR doesn't delete the original record, but instead the original record is updated with the moved record when loading.
Issue #4752 is no longer addressed in this MR.
2021-08-28 14:09:55 +10:00
cc9cii
7264a10c07
Partially revert commit dab1a9e7fb
2021-08-28 09:49:45 +10:00
cc9cii
7227a83e60
Preserve "blocked" record flags when saving with OpenCS. This will help outputs of OpenCS to be used with vanilla Morrowind.
...
Sample use case: users are using the Morrowind Code Patch feature that allows modders to enable this flag to differentiate editor-made potions from player crafted potions for tooltips.
2021-08-28 09:42:54 +10:00
psi29a
66f028c4a1
Merge branch 'correctcommandimplementation' into 'master'
...
Don't do storage in constructors of the commands
See merge request OpenMW/openmw!1126
2021-08-27 07:30:45 +00:00
psi29a
d852b10227
Merge branch 'Map-door-markers-flicker-in-some-cells' into 'master'
...
Do not update doors markers at each frame, only when needed
Closes #6214
See merge request OpenMW/openmw!1168
2021-08-26 15:06:38 +00:00
psi29a
fff35dcb03
Merge branch 'Ignore-empty-pgrd' into 'master'
...
Do not store empty PGRD records. Should resolve Issue #6209 .
See merge request OpenMW/openmw!1121
2021-08-26 14:29:49 +00:00
psi29a
e8057d9fd1
Merge branch 'aipursue_path' into 'master'
...
Make AiPursue path destination to be as close as possible to target (#6211 )
Closes #6211
See merge request OpenMW/openmw!1154
2021-08-26 07:55:12 +00:00
psi29a
b585aad81e
Merge branch 'offset-bullet-debug' into 'master'
...
glPolygonOffset for Bullet debug geometry
See merge request OpenMW/openmw!684
2021-08-25 07:26:21 +00:00
Thunderforge
42ce22f568
Adding saveSettingInt() and loadSettingInt()
...
Convenience methods for saving and loading integer settings. Versions for QSpinBox and QComboBox are included. Right now, only simple settings are used for it; we have some additional settings that include validation that aren't using these new methods.
2021-08-23 18:31:52 -05:00
unelsson
de3497d291
Fix undo-redo crash
2021-08-22 23:42:27 +03:00
unelsson
890ce1eefb
Reverse action order for redo and undo
2021-08-22 23:42:27 +03:00
unelsson
0cfabd6f3b
Move mapToSource back to constructor
2021-08-22 23:42:27 +03:00
unelsson
b2fe591590
Don't do any storing in the constructor
2021-08-22 23:42:27 +03:00
unelsson
45549da0f5
For most commands, set mOld in redo, not in constructor
2021-08-22 23:42:27 +03:00
psi29a
716eebe616
Merge branch 'terrainselectioncrashfix' into 'openmw-47'
...
Fix terrain selection crash
See merge request OpenMW/openmw!1165
(cherry picked from commit ec4e3b04a7
)
b84e41bd
Avoid storing ref, dynamic cast worldspacewidget for safety
d62ddc00
Use QPointer to detect object existence, less verbose debug messages
cb42b528
Remove friend, make getEditMode public to allow editmode testing.
4b148180
Restucture code
08f7c73e
Fix text
2021-08-22 19:22:54 +00:00
psi29a
855f491196
Merge branch 'splintercell' into 'master'
...
Clean up text key extraction
See merge request OpenMW/openmw!1163
2021-08-22 14:51:54 +00:00
Alexei Dobrohotov
0922d0b105
Clean up text key extraction
2021-08-22 05:56:30 +03:00
Petr Mikheev
3771e523f1
More object bindings
2021-08-21 17:18:11 +02:00
Alexei Dobrohotov
31e70f2ecc
Merge branch 'minor_factorisation' into 'master'
...
Minor factorisation in apps/openmw/mwmechanics/actors.cpp
See merge request OpenMW/openmw!1143
2021-08-21 06:22:17 +00:00
cc9cii
28ad139464
Check if deleted, just in case.
2021-08-21 07:20:10 +10:00
psi29a
d09c807a40
Merge branch 'fixbadcast' into 'master'
...
Fix std::bad_cast
Closes #6217
See merge request OpenMW/openmw!1130
2021-08-20 20:36:44 +00:00
unelsson
7801f42005
Don't do mapToSource at executeModify
2021-08-20 22:32:41 +03:00
psi29a
9751717b35
Merge branch 'components_qt' into 'master'
...
Do no link binaries with Qt where it's not used
See merge request OpenMW/openmw!1157
2021-08-20 19:29:42 +00:00
elsid
e9b8933b2f
Do no link binaries with Qt where it's not used
...
Define components_qt static library with all qt dependent components that also
depends on other components. Link only cs, wizard and launcher with qt
dependent components.
2021-08-20 19:02:09 +02:00
psi29a
77e58abf0d
Merge branch 'lua_input' into 'master'
...
Lua package 'openmw.input'
See merge request OpenMW/openmw!1073
2021-08-20 11:44:42 +00:00
elsid
193be0d5d1
Merge branch 'some_small_changes' into 'master'
...
Fix coverity warning and build on some osg
See merge request OpenMW/openmw!1153
2021-08-19 23:40:14 +00:00
cc9cii
bd3ef506cd
Empty Pathgrid record is considered as the modder's intention to delete any existing record.
2021-08-19 19:30:01 +10:00
cc9cii
802a202455
Remove warning log messages as they are more suitable for OpenCS.
2021-08-19 12:45:09 +10:00
cc9cii
8244ba8957
Erase old record instead (i.e. assume an empty Pathgrid record was placed in purpose)
2021-08-19 12:31:49 +10:00
cc9cii
1d925154f2
Do not store (or worse, overwrite) empty PGRD records. Should resolve Issue #6209 .
2021-08-19 12:31:49 +10:00
glassmancody.info
a6c7fcd436
don't pingpong depth function on character preview update
2021-08-18 15:46:25 -07:00
elsid
fea4fb6e69
Make AiPursue path destination to be as close as possible to target
...
Even when target is not reachable actor will try to run there either because
target navmesh polygon is selected within extended area or because partial path
is built to the closest possible polygon.
2021-08-18 23:44:36 +02:00
elsid
9112c65afc
Use pathgrid path when destination is closer to different graph component node
...
Partially revert d863267d5c
to restore 0.46
behaviour for pathgrid based pathfinding.
2021-08-18 19:52:10 +02:00
glassmancody.info
d63eb3325f
fix coverity warning and build on some osg
2021-08-17 17:45:50 -07:00
psi29a
6595c731f7
Merge branch 'fix_rc_poly_mesh_flags_length' into 'master'
...
Fix flags length for rcPolyMesh
See merge request OpenMW/openmw!1134
2021-08-17 09:19:32 +00:00
psi29a
faa3e04494
Merge branch 'const_reff' into 'master'
...
Sprinkle some const-ref
See merge request OpenMW/openmw!1145
2021-08-17 08:20:13 +00:00
cc9cii
b1fb3e2313
Add missing includes.
2021-08-17 13:53:14 +10:00
cc9cii
47a841d3b7
Fix/workaround for Issue #3246
...
OpenMW save file assumes the presence of NPC/Creature data but the vanilla save file provides only the delta changes in most situations. The base data are not available without loading all the relevant dependency content files. Duplicating that code in the ESSImporter is not desirable.
Ideally a flag should be set but that will mean a change in the save file format. For a minor change such as this doing so seems like an overkill. So a temporary workaround is introduced where the gold carried by the NPC/Creature is used as an indicator as the lack of ACDT data.
2021-08-17 12:29:28 +10:00
jvoisin
39cd679ca9
Minor factorisation in apps/openmw/mwmechanics/actors.cpp
2021-08-16 13:13:44 +02:00
Alexei Dobrohotov
6c1ac9ed9f
Merge branch 'init_sky' into 'master'
...
Use an initialization list in WrapAroundOperator's constructor
See merge request OpenMW/openmw!1146
2021-08-16 01:19:28 +00:00
Alexei Dobrohotov
7665ebfa67
Merge branch 'another_fix' into 'master'
...
Fix #6219
Closes #6219
See merge request OpenMW/openmw!1137
2021-08-16 01:15:52 +00:00
Alexei Dobrohotov
873e16ae93
Merge branch 'emp' into 'master'
...
Use an emplace instead of an insert
See merge request OpenMW/openmw!1144
2021-08-16 01:14:36 +00:00
elsid
f966fdb65e
Merge branch 'noweak' into 'master'
...
use shared_ptr inside the physics simulation to simplify the code
See merge request OpenMW/openmw!1141
2021-08-15 21:59:47 +00:00
jvoisin
ff2a51a484
Use an initialization list in WrapAroundOperator's constructor
2021-08-15 19:57:20 +02:00
jvoisin
7a015d24c6
Sprinkle some const-ref
2021-08-15 19:50:28 +02:00
jvoisin
0792bb212a
Use an emplace instead of an insert
2021-08-15 18:57:33 +02:00
glassmancody.info
ed72f3335b
silence compiler warning
2021-08-15 08:02:00 -07:00
fredzio
ec871e6bf7
Use shared_ptr instead of weak_ptr for actors handle inside the
...
simulation
The purpose of weak_ptr is to avoid performing the simulation on deleted
Actor by promoting it to a shared_ptr via a lock() call. This clutter
the code with a lot of branches, whereas the overwhelmingly common case is for the call to succeed.
Since the simulation is decoupled from the engine state, we can use a shared_ptr instead of a weak_ptr.
This allow us to ignore (ie not handle) the rarer case where the actor is delete from the scene. This means that the simulation
will run for one frame more than before for each actor, whereas the rest of the engine
will be ignorant of this.
2021-08-15 16:21:16 +02:00
AnyOldName3
7400050b38
Merge branch 'character_preview_alpha_fix' into 'master'
...
Fix transparent objects being invisible in character doll
See merge request OpenMW/openmw!1140
2021-08-15 00:01:23 +00:00
glassmancody.info
6cc71745ac
ensure character preview is using standard depth
2021-08-14 14:50:33 -07:00
Mads Buvik Sandvei
d40c18234a
Double buffering the water's node position uniform
2021-08-14 17:41:58 +00:00
fredzio
713f612bdb
Partially revert !1046 : the player is added before the scene exists, so we need to check again the grounded state, as it correctly was.
2021-08-13 18:01:16 +02:00
jvoisin
b01ef2629c
Fix two Wreorder clang warnings
2021-08-13 13:59:57 +02:00
Alexei Dobrohotov
839cf36bdd
Merge branch 'hidden_markers' into 'master'
...
Use common implementation to filter hidden markers
See merge request OpenMW/openmw!1132
2021-08-12 22:29:20 +00:00
elsid
54a676f2e3
Add functions to get length of recast type arrays
...
To avoid duplicating same formulas in multiple places.
2021-08-12 22:43:01 +02:00
elsid
05258ed644
Remove redundant TileCachedRecastMeshManager::hasTile function
...
It's used only for tests. getMesh is a valid replacement.
2021-08-12 22:40:06 +02:00
elsid
3caf45807f
Use common implementation to filter hidden markers
2021-08-12 22:35:16 +02:00
Cédric Mocquillon
b0b60b05b8
Do not update doors markers at each frame, only when needed
2021-08-12 22:10:45 +02:00
unelsson
298db2ef76
Initialize and check pointer.
2021-08-12 22:31:37 +03:00
unelsson
f1d05a93bf
Get index and model from proxy
2021-08-12 22:28:16 +03:00
jvoisin
bcdd0f55da
Merge branch 'bc_refnum' into 'master'
...
Always print object refnum
See merge request OpenMW/openmw!1123
2021-08-12 10:18:55 +00:00
elsid
e84a177a91
Always print object refnum
...
Also print content file index even when it's negative. To be able to identify
the object unambiguously.
2021-08-12 02:02:25 +02:00
fredzio
de9ee2f196
Revert "Calls directly MovementSolver::traceDown instead of"
...
This reverts commit c1e50f530b
.
2021-08-11 21:53:04 +02:00
Petr Mikheev
0e6fbbc126
Lua package 'openmw.input'
2021-08-10 19:00:52 +03:00
psi29a
45b45b3560
Merge branch 'fix_op_bzzt_whoopsie' into 'master'
...
resolve issue of OP meshes that cross boundaries
See merge request OpenMW/openmw!1117
2021-08-10 15:50:33 +00:00
Bret Curtis
c99bddc8dc
Revert "Move reference to the right cell according to its geographical position"
...
This reverts commit d0677c3f07
.
2021-08-09 22:11:00 +02:00
Bret Curtis
7dfaef7644
resolve issue of meshes that cross boundaries; should only be calculating the maxBound, not the minBound of y; also fix it in groundcover as it was copied blindly over;
2021-08-09 22:05:12 +02:00
Cédric Mocquillon
bfc9ea9e32
Fix warning on MSVC convertion from double to float
2021-08-09 19:43:35 +02:00
Cédric Mocquillon
b0e30e4bb6
Change setting to clamp the local viewing distance to fix value (instead of coeff)
2021-08-09 19:43:34 +02:00
Cédric Mocquillon
b27de8f188
Disable zooming when setting is off
2021-08-09 19:43:34 +02:00
Alexei Dobrohotov
73e83fd3d8
Merge branch 'dontcrash' into 'master'
...
Fix #6208 (hopefully)
Closes #6208
See merge request OpenMW/openmw!1113
2021-08-09 17:10:11 +00:00
fredzio
8e3984ae5a
Clear mActors when reseting the simulation. Otherwise during next run we can try to read past the end of mActorsFrameData.
2021-08-09 14:46:41 +02:00
jvoisin
586d8684d0
Fix two coverity issues about uninitialised variables
2021-08-09 12:43:30 +02:00
psi29a
cb7a4d20dd
Merge branch 'killmutex' into 'master'
...
Remove mutex from PtrHolder
See merge request OpenMW/openmw!1110
2021-08-08 19:45:16 +00:00
psi29a
3afa9829b3
Merge branch 'tracedown' into 'master'
...
Correct calls to traceDown in addActor
See merge request OpenMW/openmw!1109
2021-08-08 19:41:53 +00:00
fredzio
c1e50f530b
Calls directly MovementSolver::traceDown instead of
...
PhysicsSystem::traceDown before inserting into mActors.
The latter does nothing until the actor is inserted into mActors.
We can't move the call after the insertion either because then
the actor is part of the simulation, and we'd have a race.
2021-08-08 18:26:35 +02:00
AnyOldName3
8d93748f87
Fix rebase issue
2021-08-08 17:25:57 +01:00
AnyOldName3
cf15803e67
Disable triangle detection workaround when Bullet actually uses triangles
2021-08-08 16:53:14 +01:00
AnyOldName3
8b4c2d205d
WIP-ish glPolygonOffset for Bullet debug geometry
2021-08-08 16:53:08 +01:00
fredzio
b4dd9e6b4d
Avoid division by zero in movementsolver when an actor is immobile and
...
in a storm
2021-08-08 17:19:18 +02:00
fredzio
ee09f3095f
At last kill PtrHolder mutex
2021-08-08 15:05:07 +02:00
fredzio
07fa1803f7
Use btCollisionObject* instead of MWWorld::Ptr inside of Projectile
...
collision handling and castRay() to avoid calling getPtr(). It is a step forward
removing the mutex inside of PtrHolder.
Do the same for DeepestNotMeContactTestResultCallback. It is used
only for not-ranged combat for now, but do it anyway for parity with all
other callback. This way, once the PtrHolder mutex is gone one will not
have to worry about wether it is safe to use the callback in a specific
context.
To avoid use-after-free with projectile / projectile collision, defer deletion of projectile.
Since instead of storing a copy of target Ptr we have a pointer to its collision object,
we can't delete projectiles until after we finished iterating over the loops.
2021-08-08 15:05:07 +02:00
fredzio
e88b94d0b0
Move btCollisionObject* into PtrHolder
...
Remove unused function
2021-08-08 15:05:07 +02:00
psi29a
8ad3d3d792
Merge branch 'freezeandcool' into 'master'
...
Don't use FreezeOnCull for any particle system (#4744 )
Closes #4744
See merge request OpenMW/openmw!1103
2021-08-08 12:35:26 +00:00
psi29a
8c81191d09
Merge branch 'schneller' into 'master'
...
Optimize actors physics simulation
See merge request OpenMW/openmw!1048
2021-08-08 12:27:53 +00:00
Alexei Dobrohotov
1fc7cb8191
Don't use FreezeOnCull for any particle system ( #4744 )
2021-08-08 03:36:35 +03:00
fredzio
5fc3b80406
Don't query actor halfextent in a tight loop, use the already existing
...
variable. These repeated calls become costly with > 150 actors.
2021-08-07 13:38:24 +02:00
fredzio
7dd5e715d7
Compute and store actor half extents. This is faster for 2 reasons:
...
- half extents changes when actor scale is modified, which is very rare
- we don't need to protect them by the actor mutex.
2021-08-07 13:38:24 +02:00
fredzio
bcd6541d3e
Reorganize ActorFrameData members:
...
- constify all read-only variables
- order them so that all variables modified as aprt of the simulation
fits in one cache line
2021-08-07 13:38:24 +02:00
fredzio
0c5cf6ec19
Store the btCollisionObject* of the object we're standing on instead of
...
MWWorld::Ptr:
- they are equivalent
- btCollisionObject* is readily available from the simulation, it saves
a call to a mutex
- btCollisionObject* is smaller
2021-08-07 13:38:24 +02:00
fredzio
26d9052b8c
Move the weak_ptr<Actor> outside of ActorFrameData.
2021-08-07 13:38:24 +02:00
fredzio
f68273c3c0
Remove Actor* from ActorFrameData
2021-08-07 13:38:24 +02:00
fredzio
9e911cc8b5
Introduce helper function to write back updated values inside parent Actor class
2021-08-07 13:38:24 +02:00
fredzio
b04c958410
Modify the way swimming is handled:
...
- compute the swimming state instead of storing it, it changes as part of the simulation and was not updated, so it was wrong anyway.
- store the swim level in ActorFrameData, it is constant per Actor so no need to compute it inside the simulation
2021-08-07 13:38:24 +02:00
fredzio
6e51a9a512
Simplify a bit the solver
2021-08-07 13:38:24 +02:00
fredzio
51514e44cc
Handle jump as part of the simulation preparation (inside of
...
PhysicsSystem) instead of inside the simulaiton.
For mechanics, we don't care how the jump is handled, just that it will be.
2021-08-07 13:38:24 +02:00
fredzio
1bfaf353be
Explicitely store all the potential states an Actor can have into the
...
ActActorFrameData structure. It makes it easier to reason about the
simulation (and hopefully simplify it).
Remove atomics from Actor class as a side effect.
Rename mFloatToSurface to mInert to make is explicit what it represent, not what it is used for
Store the Actor rotation (1 Vec2) instead of the whole ESM::Position (2 Vec3)
2021-08-07 13:38:24 +02:00
fredzio
9472728fa4
Do not generate data for immobile actors instead of early out from the solver
2021-08-07 13:38:24 +02:00
Evil Eye
29921bf9fa
Don't stack cast packages
2021-08-07 10:06:56 +02:00
psi29a
b770373491
Merge branch 'OpenCS-enforce-str-length' into 'master'
...
OpenCS - Disallow entry of strings longer than the lengths allowed by the file format (#3066 )
See merge request OpenMW/openmw!1088
2021-08-06 21:08:09 +00:00
glassmancody.info
09e03fde2e
refactor and fix wobbly shores
2021-08-04 17:49:57 -07:00
glassmancody.info
cad0b151cb
enable shaders path and dehardcode depth formats
2021-08-04 17:39:11 -07:00
glassmancody.info
d89e37d689
add framebuffer extension check and fix issues with manual screenshots
2021-08-04 17:39:11 -07:00
glassmancody.info
70fac33940
initial reverse-z depth implementation
2021-08-04 17:39:11 -07:00
Petr Mikheev
a94072243b
Lua command core.quit
2021-08-04 19:14:24 +03:00
cc9cii
8aee84c46e
Disallow entry of strings longer than the lengths allowed by the file format.
...
It is possible to allow longer strings but that will require an extension in the omwaddon format as well as changes to the reader to handle that extension. Such changes should be a separate MR.
(applied the patch in https://gitlab.com/OpenMW/openmw/-/issues/3066 )
2021-08-04 09:39:18 +10:00
psi29a
9fa7521fc5
Merge branch 'OpenCS-no-charconv' into 'master'
...
OpenCS - Avoid the inclusion of charconv header
See merge request OpenMW/openmw!1087
2021-08-03 23:32:40 +00:00
psi29a
9b7e14ec00
Merge branch 'OpenCS-moved-reference' into 'master'
...
OpenCS - Fix moved reference - Issues #3514 and #4752
See merge request OpenMW/openmw!1051
(cherry picked from commit 2bee171c7990522da33c2667f7d079fa35f4ede0)
36c30f7f Fix for Issue #3514 where moving a reference to another cell is not handled properly.
40327681 Update the changelog.
2021-08-03 23:29:05 +00:00
psi29a
e10e9c0005
Merge branch 'navmesh_reduce_lock_wait' into 'master'
...
Reduce waiting duration on locks when updating navmesh object in the main thread (#6193 )
Closes #6193
See merge request OpenMW/openmw!1079
2021-08-03 23:05:39 +00:00
psi29a
16d04cf76c
Merge branch 'fixtexindex' into 'master'
...
Fix texture index search bug
See merge request OpenMW/openmw!1080
2021-08-03 23:00:33 +00:00
cc9cii
bf06898a79
Retain the use of std::string_view in the function signature.
2021-08-04 08:23:22 +10:00
cc9cii
99e691fbe3
Avoid the inclusion of <charconv> header due to Ubuntu Bionic (18.04) which as gcc version less than 8.1
...
Partially reverts commit fd67ebde25
2021-08-04 06:47:14 +10:00
Petr Mikheev
3ce5e9e680
Improve error messages in components/lua/serialization.cpp
2021-08-03 16:42:26 +03:00
Petr Mikheev
0f7f5ce140
Remove Lua command "self:setDirectControl"
2021-08-03 14:36:51 +03:00
elsid
c8987bda2f
Store reference to BulletShapeInstance for btCollisionShape
...
To keep btCollisionShape lifetime.
2021-08-03 12:21:56 +02:00
elsid
4574e5f565
Remove redundant Navigator API functions
2021-08-03 12:21:55 +02:00
psi29a
bd1bf4ec73
Merge branch 'donoteraseme' into 'master'
...
#6192 : Stop crashing in moveActors()
See merge request OpenMW/openmw!1085
2021-08-03 07:53:13 +00:00
fredzio
bc738c5640
Use extract/insert instead of erase/emplace
...
When we call moveObject(), we might trigger a change of cell for the
actor, which in turn triggers updatePtr(). The erase/emplace
construct invalidate references, whereas extract/insert do not.
The reason is was working before !1075 is because we were always
"refreshing" the reference by a call to getActor().
2021-08-03 07:00:42 +02:00
unelsson
09ee2a0a36
fix texture brush index search
2021-08-01 19:42:41 +03:00
psi29a
4b48e62b64
Merge branch 'fixandclean' into 'master'
...
Fix opencs build and remove some clang warnings
See merge request OpenMW/openmw!1078
2021-08-01 12:11:17 +00:00
fredzio
1391194152
Remove unneeded return statement
2021-08-01 13:14:32 +02:00
fredzio
9ba459662d
Remove unneeded std::move
...
[19/199] Building CXX object apps/opencs/CMakeFiles/openmw-cs.dir/model/world/commands.cpp.o
../../../apps/opencs/model/world/commands.cpp:298:12: warning: moving a temporary object prevents copy elision [-Wpessimizing-move]
mOld = std::move(model.getRecord (id).clone());
^
../../../apps/opencs/model/world/commands.cpp:298:12: note: remove std::move call here
mOld = std::move(model.getRecord (id).clone());
^~~~~~~~~~ ~
../../../apps/opencs/model/world/commands.cpp:333:12: warning: moving a temporary object prevents copy elision [-Wpessimizing-move]
mOld = std::move(model.getRecord (id).clone());
^
../../../apps/opencs/model/world/commands.cpp:333:12: note: remove std::move call here
mOld = std::move(model.getRecord (id).clone());
^~~~~~~~~~ ~
2 warnings generated.
2021-08-01 13:14:32 +02:00
fredzio
36e33b0cf2
Add missing override
2021-08-01 13:14:32 +02:00
fredzio
bede1ea1ec
Fix build
2021-08-01 13:14:32 +02:00
psi29a
15d278de55
Merge branch 'opt-out-compose' into 'master'
...
Make it possible to opt out of composing variables
Closes #6186
See merge request OpenMW/openmw!1076
2021-08-01 08:53:52 +00:00
cc9cii
67cad2c515
Fix CSMWorld::InfoCollection::getTopicRange()
returning one too many.
2021-08-01 15:53:00 +10:00
AnyOldName3
04e9b6d242
Abort on duplicate content file
2021-08-01 03:04:12 +01:00
AnyOldName3
4727ae4b3b
Make it possible to opt out of composing variables
2021-08-01 02:47:10 +01:00
psi29a
547bc4a252
Merge branch 'notonlyactors' into 'master'
...
Refactor the physics simulation to make it not actor centric.
See merge request OpenMW/openmw!1075
2021-07-31 23:39:22 +00:00
psi29a
a3a079acc1
Merge branch 'projstats' into 'master'
...
Add projectiles number to the resources stats
See merge request OpenMW/openmw!1074
2021-07-31 23:12:14 +00:00
psi29a
4c5e6beb75
Merge branch 'canyouseeme' into 'master'
...
Solve actor awareness check without async physics
See merge request OpenMW/openmw!1071
2021-07-31 22:18:35 +00:00
fredzio
35928cf4d3
Refactor a bit the physics simulation to make it not actor centric:
...
- inline PhysicsSystem::applyQueuedMovements() into PhysicsSystem::stepSimulation()
- rename PhysicsTaskScheduler::moveActors() to PhysicsTaskScheduler::applyQueuedMovements()
- move the actor movement code from World::doPhysics() to
PhysicsSystem::moveActors() (analogically to the projectile manager)
2021-07-31 23:39:04 +02:00
psi29a
141095b850
Merge branch 'OpenCS-loading-opt' into 'master'
...
OpenCS loading time improvements
See merge request OpenMW/openmw!1044
2021-07-31 21:27:29 +00:00
fredzio
c76387162b
Add projectiles number to the resources stats
2021-07-31 23:08:50 +02:00
psi29a
ca011927f3
Merge branch 'ObjectPagingDisappearingTexture' into 'master'
...
Move reference to the right cell according to its geographical position
See merge request OpenMW/openmw!1065
2021-07-31 10:58:20 +00:00
Evil Eye
5cdf1e7e6b
Merge branch 'vec3_vs_xyz' into 'master'
...
Use Vec3f instead of x,y,z in World API
See merge request OpenMW/openmw!730
2021-07-31 10:36:11 +00:00
fredzio
a7b190ad29
Change rotateObject() to take a osg::Vec3f argument instead of 3 floats
...
for readability.
2021-07-30 23:24:53 +02:00
fredzio
88a5ca440b
Change moveObject() to take a osg::Vec3f argument instead of 3 floats
...
for readability.
2021-07-30 23:24:49 +02:00
fredzio
4e7c128d25
The LOS cache is now unconditionally used without async physics as well
...
with a TTL of 0 frame. It helps performance when several subsystems
request the same LOS in the same frame (combat, headtracking, etc).
Except it doesn't work if the cache is never trimmed.
2021-07-30 22:23:42 +02:00
Cédric Mocquillon
d0677c3f07
Move reference to the right cell according to its geographical position
2021-07-30 18:28:29 +02:00
psi29a
8c36eb56cf
Merge branch 'stereo_friendly_water' into 'master'
...
Stereo friendly water and statesetupdater
See merge request OpenMW/openmw!563
2021-07-30 11:00:49 +00:00
psi29a
c5d49b44ba
Merge branch 'lua_settings' into 'master'
...
Add Lua package 'openmw.settings'
See merge request OpenMW/openmw!1017
2021-07-30 10:47:15 +00:00
Evil Eye
779795734f
Remove calm/rally/demoralize and turn undead from the wrong targets
2021-07-29 18:23:45 +02:00
Evil Eye
a366a85c4e
Merge branch 'noalloc_dance_for_npcanimation' into 'master'
...
Don't do an unnecessarily complex memory allocation dance in npcanimation.cpp
See merge request OpenMW/openmw!1042
2021-07-28 17:25:28 +00:00
Evil Eye
88d207b0cd
Merge branch 'land' into 'master'
...
Correct creature landing sound type (bug #6118 )
Closes #6118
See merge request OpenMW/openmw!1054
2021-07-28 16:18:44 +00:00
psi29a
ea05b958b8
Merge branch 'FixIssueWithTRData' into 'master'
...
Fix issue with Tamriel Data landscapes
See merge request OpenMW/openmw!1064
2021-07-28 10:16:55 +00:00
psi29a
292e6f1a9e
Merge branch 'seducer_ice_queen' into 'master'
...
Prevent a missing weapon animation from partially freezing actors
See merge request OpenMW/openmw!1060
2021-07-28 09:06:13 +00:00
Cédric Mocquillon
c98b0f713d
If same area is defined in multiple plugin the last must wins
2021-07-28 10:29:16 +02:00
elsid
6adf7b10ae
Fix removing heightfield from navigator
...
It's added not as object so it shouldn't be removed as it.
2021-07-27 20:11:22 +02:00
Petr Mikheev
2938aaf05c
Rename API_VERSION
-> API_REVISION
in Lua API.
2021-07-27 20:06:04 +02:00
Petr Mikheev
3e4c0b775d
Add Lua package 'openmw.settings'
2021-07-27 20:06:04 +02:00
Petr Mikheev
68b8a148d7
Initialize Lua packages in LuaManager::init rather than in constructor.
2021-07-27 19:52:17 +02:00
Evil Eye
977f717f8b
Prevent a missing weapon animation from partially freezing actors
2021-07-27 16:33:07 +02:00
Alexei Dobrohotov
536dc6a0c6
Correct creature landing sound type (bug #6118 )
2021-07-27 07:39:21 +03:00
psi29a
5a434aebe0
Merge branch 'SortedStaticLands' into 'master'
...
Replace land static container from vector to flat_set
See merge request OpenMW/openmw!853
2021-07-26 18:29:07 +00:00
Cédric Mocquillon
7772f5111b
std::set version
2021-07-26 18:30:06 +02:00
madsbuvi
41c08b1c3b
Stereo friendly StateSetUpdater
...
(cherry picked from commit 496b3aef88b8fd867dcdd23a6ca43144573b1b2f)
Stereo friendly water
(cherry picked from commit 0e22c55e48a7f965367d3d430c1bef5357b22748)
Option to disable per view mapping.
Include memory header
De-hardcode settings and buffers.
formatting error
Update water.cpp (whitespace)
Update water.cpp (more whitespace)
include render order
c array -> c++ array
2021-07-26 14:01:02 +02:00
psi29a
44ceb9572a
Merge branch 'recast_mesh_heightfield' into 'master'
...
Reduce navmesh cache size by special handling for heightfields
See merge request OpenMW/openmw!1032
2021-07-26 11:49:30 +00:00
glassmancody.info
166e23a6d9
fix CI artifacts, missing header
2021-07-25 20:49:17 -07:00
elsid
9a5ec5fd03
Store heightfields as array of heights instead of triangles
...
To reduce size of RecastMesh and therefore cache size.
2021-07-26 00:22:21 +02:00
elsid
28b2f769c2
Update navmeshtilescache benchmark generators
2021-07-26 00:22:21 +02:00
elsid
fdee9db20c
Consider RecastMeshManager not empty when there is water
2021-07-26 00:22:21 +02:00
elsid
5d6c93566d
Rename DetourNavigator::Water -> Cell
2021-07-26 00:22:21 +02:00
elsid
753767d6d9
Store only water shift
...
Rotation is not used.
2021-07-26 00:22:20 +02:00
elsid
a1549321d7
Move Water struct out of RecastMesh class
2021-07-26 00:22:20 +02:00
elsid
d60edb36aa
Make RecastMesh independent from recast scale factor
...
To avoid scaling until it's required by delaying coordinates conversion until
navmesh generation.
2021-07-26 00:22:20 +02:00
elsid
af7059373c
Make RecastMesh independent from the order of RecastMeshBuilder calls
...
To make sure RecastMesh objects are equal if built with the same data but in
different order. Will be used later when there will be more than one place
building RecasMesh objects.
2021-07-26 00:22:20 +02:00
elsid
100cba6260
Use navigator field in Scene
2021-07-26 00:22:03 +02:00
psi29a
6949dd89c2
Merge branch 'gui_shaders' into 'master'
...
Add shader path for mygui (#6162 )
See merge request OpenMW/openmw!1019
2021-07-25 21:37:39 +00:00
psi29a
b92c6985cd
Merge branch 'auto_in_most_apps' into 'master'
...
Using auto keyword in most apps
See merge request OpenMW/openmw!885
2021-07-25 21:23:26 +00:00
psi29a
7d7427015e
Merge branch 'removing_unused_launcher_imports' into 'master'
...
Removing unused imports in the Launcher
See merge request OpenMW/openmw!884
2021-07-25 21:18:25 +00:00
Petr Mikheev
200ccfab69
Merge branch 'Allow-Zoom-levels-on-the-World-Map' into 'master'
...
Allow Zoom levels on the World Map
See merge request OpenMW/openmw!275
2021-07-25 20:19:11 +00:00
fredzio
7145ef4ce0
Update AABB also in sync cases
2021-07-25 18:00:48 +02:00
Petr Mikheev
e371831086
Merge branch 'esmstore_infix' into 'master'
...
Use prefix increment for iterators in esmstore.cpp
See merge request OpenMW/openmw!1041
2021-07-25 13:28:18 +00:00
jvoisin
ce8c30bf07
Minor code simplification in npcanimation.cpp
2021-07-25 14:20:37 +02:00
Cédric Mocquillon
1051745f29
[Launcher] Add new setting 'allow zooming' to advanced tab in the launcher
2021-07-25 14:17:10 +02:00
CedricMocquillon
9fee9dbc9c
[Global map] Regroup markers when the zoom out
2021-07-25 14:17:10 +02:00
CedricMocquillon
18f5853279
[Global <-> Local] Auto switch between local and global map when zoom in/out
2021-07-25 14:17:09 +02:00
CedricMocquillon
8c87defddf
[Local map] Use the distance view in the local map
2021-07-25 14:17:08 +02:00
CedricMocquillon
ed04ebe9ff
[Local map] Allow zoom on local map
2021-07-25 14:17:08 +02:00
CedricMocquillon
9fadbd5b7a
[Global map] Allow zoom on global map
2021-07-25 14:17:07 +02:00
CedricMocquillon
99cd4b6742
[Refactoring] Several refactorings:
...
[Refactoring] Add marker size method instead of using magic constant
[Refactoring] Simplify worldPosToImageSpace and cellTopLeftCornerToImageSpace usage
[Refactoring] Add a missing 'f' to specify the float type
[Refactoring] Make cellTopLeftCornerToImageSpace more homogenous with worldPosToImageSpace
[Refactoring] Extract createmakrercoords method
[Refactoring] Use worldPosToImageSpace instead of cellTopLeftCornerToImageSpace
Remove cellTopLeftCornerToImageSpace as it is not used anymore
Remove getCellSize as it is not used anymore
[Refactoring] Extract new method createMarker
[Refactoring] Extract new method getMarkerCoordinates
[Refactoring] Extract new method getPosition
[Refactoring] Extract new method centerView
[Refactoring] Extract new method createDoorMarker
[Refactoring] Simplify for loop
[Refactoring] Make the test before the loop
2021-07-25 14:17:06 +02:00
cc9cii
33dcd7585a
OpenCS - Jump To Modified
2021-07-24 20:00:25 +00:00
psi29a
2eea590762
Merge branch 'spawn_fix' into 'master'
...
Fix #6173
Closes #6173
See merge request OpenMW/openmw!1046
2021-07-24 12:04:20 +00:00
cc9cii
3e466699c8
A better way to plug a potential memory leak in the event of an exception during push_back().
2021-07-24 21:23:03 +10:00
cc9cii
fd67ebde25
Changes based on review comments, including:
...
* replace murmurhash with std::unordered_map
* plug potential leak from unique_ptr release
* replacing some sections with cleaner code
2021-07-24 09:17:48 +10:00
fredzio
f348b70733
Set mCanWaterWalk and mOnGround when adding Actor to the scene.
...
mCanWaterWalk was set to false and updated during next frame's simulation
mOnGround is set to true but then was updated as part of the scene
loading logic.
2021-07-23 18:04:58 +02:00
cc9cii
ee3361a118
Fix table being sorted twice (at least it appeared that way according to the sample profiler)
...
- Quoting Qt-4.8: "Note: . Setting the property to true with setSortingEnabled() immediately triggers a call to sortByColumn() with the current sort section and order."
(copied the changes from commit SHA-1: 77394fce99
)
2021-07-23 23:18:11 +10:00
cc9cii
725d689e8a
Call push_back() if inserting to the end of the vector. It seems MSVC may be generating different code compared to insert().
...
(copied the changes from commit SHA-1: 257126ed69
)
2021-07-23 23:17:16 +10:00
cc9cii
44a333b6db
Don't attempt to open files yet to be created.
2021-07-23 21:25:35 +10:00
Petr Mikheev
ec79f26320
Merge branch 'minor' into 'master'
...
Minor code cleanup
See merge request OpenMW/openmw!1038
2021-07-23 11:20:37 +00:00
cc9cii
5c504e4d22
Convert the CellRef record index lookup maps to use integer keys rather than strings.
...
- Morrowind load over 300,000 references, so even small inefficiencies add up to longer loading times.
- std::map is used, but should try others, std::unordered_map or even std::vector
(copied the changes from commit SHA-1: 86945d1912
)
2021-07-23 19:07:56 +10:00
cc9cii
10c6304a1f
Fix typo from commit cfdbd0d471
.
2021-07-23 18:12:09 +10:00
cc9cii
fc2f68a465
Change the loader's top progress bar to show total number of records processed rather than the number of files.
...
(copied the changes from commit SHA-1: ff072441fd
)
2021-07-23 17:34:27 +10:00
cc9cii
5fffcab94f
Performance improvements for loading Info records.
...
- The order of info records with the same topic are maintained in Collection::mRecords
- The index lookup data structure are not ordered. The topic string is hashed. The infos for the topic are simply placed in a vector.
- The index values for appending or inserting a record takes prev/next values (if exist)
- FIXME: prev/next values are not adjusted for adding or removing records
- FIXME: undo after reordering does not reset the modified flag
(copied the changes from commit SHA-1: 06f9922822
)
2021-07-23 16:05:58 +10:00
cc9cii
66bda84240
Convert RefNum index map to use find().
...
(copied the changes from commits 68e16b6cee
and 0de223c637
)
NOTE: it is unclear how this change affects commit 61a4a0807b
2021-07-23 15:30:33 +10:00
cc9cii
be45092e55
Use std::unique_ptr to store records in collections, RefidCollection and RefIdData.
...
(copied the changes from commit 23e7e3c165
)
2021-07-23 14:21:21 +10:00
glassmancody.info
e8c6f31e0c
add shader path for mygui ( #6162 )
2021-07-22 15:55:30 -07:00
jvoisin
73c20be29a
Use prefix increment for iterators in esmstore.cpp
...
See https://pvs-studio.com/en/docs/warnings/v803/
for the rationale.
2021-07-22 22:03:59 +02:00
jvoisin
74fab99b89
Use a const-ref for an osg::Quat
...
Since an osg::Quat contains at least 4 floats,
it should be worth it to use a const-ref instead
of passing it by value.
2021-07-22 21:33:18 +02:00
jvoisin
f86ddef4db
Minor code cleanup
2021-07-22 15:15:41 +02:00
psi29a
469cc44ef7
Merge branch 'tweaks' into 'master'
...
Change settings for async physics
See merge request OpenMW/openmw!778
2021-07-22 07:18:41 +00:00
jvoisin
5e3f000b66
Add a std::noboolalpha to a std::boolalpha
2021-07-21 14:40:54 +02:00
Nuri
36657698fb
Added checks for paralysis, knocked down, and death when picking up items from inventory. Fixes #6165
2021-07-21 07:46:02 +00:00
psi29a
cc642b5335
Merge branch 'slimfast' into 'master'
...
Reduce size of physics objects by 1/3
See merge request OpenMW/openmw!1024
2021-07-20 19:03:14 +00:00
Alexei Dobrohotov
e5f96ab4ae
Merge branch 'lol_so_random' into 'master'
...
Set the ptr's custom data before filling the store so leveled lists have access to the level
See merge request OpenMW/openmw!1028
2021-07-18 14:02:06 +00:00
Evil Eye
b95cf4fd00
Set the ptr's custom data before filling the store so leveled lists have access to the level
2021-07-18 15:04:25 +02:00
elsid
f92843e3d2
Fix UB: reference binding to misaligned address in Lua tests
...
/home/elsid/dev/openmw/apps/openmw_test_suite/lua/test_serialization.cpp:166:34: runtime error: reference binding to misaligned address 0x562ea892076c for type 'const struct TestStruct1', which requires 8 byte alignment
0x562ea892076c: note: pointer points here
00 74 73 31 00 00 00 00 00 00 f8 3f 00 00 00 00 00 00 04 40 21 79 4b 08 00 00 00 74 65 73 74 5f
^
#0 0x562ea6462b8e in deserialize /home/elsid/dev/openmw/apps/openmw_test_suite/lua/test_serialization.cpp:166
#1 0x562ea68b7402 in deserializeImpl /home/elsid/dev/openmw/components/lua/serialization.cpp:172
#2 0x562ea68b7bf6 in deserializeImpl /home/elsid/dev/openmw/components/lua/serialization.cpp:204
#3 0x562ea68b86ea in LuaUtil::deserialize(sol::state&, std::basic_string_view<char, std::char_traits<char> >, LuaUtil::UserdataSerializer const*) /home/elsid/dev/openmw/components/lua/serialization.cpp:251
#4 0x562ea6464d96 in TestBody /home/elsid/dev/openmw/apps/openmw_test_suite/lua/test_serialization.cpp:197
#5 0x562ea6d9dac6 in void testing::internal::HandleSehExceptionsInMethodIfSupported<testing::Test, void>(testing::Test*, void (testing::Test::*)(), char const*) /home/elsid/dev/googletest/googletest/src/gtest.cc:2607
#6 0x562ea6d9dac6 in void testing::internal::HandleExceptionsInMethodIfSupported<testing::Test, void>(testing::Test*, void (testing::Test::*)(), char const*) /home/elsid/dev/googletest/googletest/src/gtest.cc:2643
#7 0x562ea6d92e25 in testing::Test::Run() /home/elsid/dev/googletest/googletest/src/gtest.cc:2682
#8 0x562ea6d92e25 in testing::Test::Run() /home/elsid/dev/googletest/googletest/src/gtest.cc:2672
#9 0x562ea6d93024 in testing::TestInfo::Run() /home/elsid/dev/googletest/googletest/src/gtest.cc:2861
#10 0x562ea6d93728 in testing::TestInfo::Run() /home/elsid/dev/googletest/googletest/src/gtest.cc:2834
#11 0x562ea6d93728 in testing::TestSuite::Run() /home/elsid/dev/googletest/googletest/src/gtest.cc:3015
#12 0x562ea6d94142 in testing::TestSuite::Run() /home/elsid/dev/googletest/googletest/src/gtest.cc:2994
#13 0x562ea6d94142 in testing::internal::UnitTestImpl::RunAllTests() /home/elsid/dev/googletest/googletest/src/gtest.cc:5855
#14 0x562ea6d9e096 in bool testing::internal::HandleSehExceptionsInMethodIfSupported<testing::internal::UnitTestImpl, bool>(testing::internal::UnitTestImpl*, bool (testing::internal::UnitTestImpl::*)(), char const*) /home/elsid/dev/googletest/googletest/src/gtest.cc:2607
#15 0x562ea6d9e096 in bool testing::internal::HandleExceptionsInMethodIfSupported<testing::internal::UnitTestImpl, bool>(testing::internal::UnitTestImpl*, bool (testing::internal::UnitTestImpl::*)(), char const*) /home/elsid/dev/googletest/googletest/src/gtest.cc:2643
#16 0x562ea6d93140 in testing::UnitTest::Run() /home/elsid/dev/googletest/googletest/src/gtest.cc:5438
#17 0x562ea5d3fdc6 in RUN_ALL_TESTS() /home/elsid/dev/googletest/build/gcc/release/install/include/gtest/gtest.h:2490
#18 0x562ea5d3fc6f in main /home/elsid/dev/openmw/apps/openmw_test_suite/openmw_test_suite.cpp:11
#19 0x7fe3938d0b24 in __libc_start_main (/usr/lib/libc.so.6+0x27b24)
#20 0x562ea5d3fb7d in _start (/home/elsid/dev/openmw/build/gcc/ubsan/openmw_test_suite+0x173eb7d)
/home/elsid/dev/openmw/apps/openmw_test_suite/lua/test_serialization.cpp:176:34: runtime error: reference binding to misaligned address 0x562ea892078f for type 'const struct TestStruct2', which requires 4 byte alignment
0x562ea892078f: note: pointer points here
75 63 74 32 04 00 00 00 03 00 00 00 04 00 6e 64 69 74 69 6f 6e 73 00 73 68 61 70 65 00 51 00 00
^
#0 0x562ea6462df9 in deserialize /home/elsid/dev/openmw/apps/openmw_test_suite/lua/test_serialization.cpp:176
#1 0x562ea68b7402 in deserializeImpl /home/elsid/dev/openmw/components/lua/serialization.cpp:172
#2 0x562ea68b7bf6 in deserializeImpl /home/elsid/dev/openmw/components/lua/serialization.cpp:204
#3 0x562ea68b86ea in LuaUtil::deserialize(sol::state&, std::basic_string_view<char, std::char_traits<char> >, LuaUtil::UserdataSerializer const*) /home/elsid/dev/openmw/components/lua/serialization.cpp:251
#4 0x562ea6464d96 in TestBody /home/elsid/dev/openmw/apps/openmw_test_suite/lua/test_serialization.cpp:197
#5 0x562ea6d9dac6 in void testing::internal::HandleSehExceptionsInMethodIfSupported<testing::Test, void>(testing::Test*, void (testing::Test::*)(), char const*) /home/elsid/dev/googletest/googletest/src/gtest.cc:2607
#6 0x562ea6d9dac6 in void testing::internal::HandleExceptionsInMethodIfSupported<testing::Test, void>(testing::Test*, void (testing::Test::*)(), char const*) /home/elsid/dev/googletest/googletest/src/gtest.cc:2643
#7 0x562ea6d92e25 in testing::Test::Run() /home/elsid/dev/googletest/googletest/src/gtest.cc:2682
#8 0x562ea6d92e25 in testing::Test::Run() /home/elsid/dev/googletest/googletest/src/gtest.cc:2672
#9 0x562ea6d93024 in testing::TestInfo::Run() /home/elsid/dev/googletest/googletest/src/gtest.cc:2861
#10 0x562ea6d93728 in testing::TestInfo::Run() /home/elsid/dev/googletest/googletest/src/gtest.cc:2834
#11 0x562ea6d93728 in testing::TestSuite::Run() /home/elsid/dev/googletest/googletest/src/gtest.cc:3015
#12 0x562ea6d94142 in testing::TestSuite::Run() /home/elsid/dev/googletest/googletest/src/gtest.cc:2994
#13 0x562ea6d94142 in testing::internal::UnitTestImpl::RunAllTests() /home/elsid/dev/googletest/googletest/src/gtest.cc:5855
#14 0x562ea6d9e096 in bool testing::internal::HandleSehExceptionsInMethodIfSupported<testing::internal::UnitTestImpl, bool>(testing::internal::UnitTestImpl*, bool (testing::internal::UnitTestImpl::*)(), char const*) /home/elsid/dev/googletest/googletest/src/gtest.cc:2607
#15 0x562ea6d9e096 in bool testing::internal::HandleExceptionsInMethodIfSupported<testing::internal::UnitTestImpl, bool>(testing::internal::UnitTestImpl*, bool (testing::internal::UnitTestImpl::*)(), char const*) /home/elsid/dev/googletest/googletest/src/gtest.cc:2643
#16 0x562ea6d93140 in testing::UnitTest::Run() /home/elsid/dev/googletest/googletest/src/gtest.cc:5438
#17 0x562ea5d3fdc6 in RUN_ALL_TESTS() /home/elsid/dev/googletest/build/gcc/release/install/include/gtest/gtest.h:2490
#18 0x562ea5d3fc6f in main /home/elsid/dev/openmw/apps/openmw_test_suite/openmw_test_suite.cpp:11
#19 0x7fe3938d0b24 in __libc_start_main (/usr/lib/libc.so.6+0x27b24)
#20 0x562ea5d3fb7d in _start (/home/elsid/dev/openmw/build/gcc/ubsan/openmw_test_suite+0x173eb7d)
2021-07-17 17:41:41 +02:00
fredzio
44f822da56
Do not store a btTransform into Projectile class: reduce its size by 112 bytes
2021-07-17 13:11:41 +02:00
fredzio
f02d01ef0c
Do not store btTransform into Object class: reduce its size by 104 bytes
2021-07-17 13:11:41 +02:00
fredzio
62ef708910
Do not store a btTransform into Actor class: reduce its size by 128 bytes
2021-07-17 13:11:39 +02:00
psi29a
42e50e487a
Merge branch 'cleaning' into 'master'
...
Improve save cleaning
See merge request OpenMW/openmw!1015
2021-07-16 08:53:06 +00:00
psi29a
22068eed6b
Merge branch 'navmesh_cache_without_off_mesh' into 'master'
...
Do not use off mesh connections as a part of navmesh cache key
See merge request OpenMW/openmw!1016
2021-07-16 08:40:56 +00:00
psi29a
6d08a1d731
Merge branch 'skip_async' into 'master'
...
Don't put player in the air after going out of tcl
See merge request OpenMW/openmw!1009
2021-07-16 07:50:26 +00:00
Evil Eye
087e933326
Close windows using Ptrs that are about to be deleted
2021-07-15 22:31:26 +02:00
elsid
beeb882ea8
Do not use off mesh connections as a part of navmesh cache key
...
To reduce cache size and make it more flexible.
Adding off mesh connections to the navmesh is the last step of navmesh
generation and it's very fast comparing to other steps (microseconds vs
milliseconds). Having less cache size makes get and set operations almost 2x
times faster that also have an order of microseconds. So in total there is
no performance impact.
2021-07-14 12:19:17 +02:00
elsid
6128fcfc82
Use empty off mesh connections in benchmark
...
To get proper comparison with the next change removing it from the cache key.
2021-07-14 00:01:46 +02:00
Evil Eye
1e1ebb049e
Workaround clang and actually erase from the vector
2021-07-13 21:18:24 +02:00
Evil Eye
86c50ece92
Improve save cleaning
2021-07-12 20:51:13 +02:00
elsid
5c9af1742a
Dump moved cell refs in esmtool
2021-07-12 18:56:45 +02:00
elsid
cfdbd0d471
Indicate moved cell refs explicitly
...
This is less error prone approach than use of MovedCellRef fields.
Also make separate functions for skipping and reading moved cell refs to avoid
passing special flags logic and null pointers for unused arguments.
2021-07-12 18:56:42 +02:00
elsid
f90c4ae22f
Add yaml-like separator between cell refs
...
To be able to separate records visually.
2021-07-12 18:48:49 +02:00
psi29a
cd9fb2adad
Merge branch 'dial_me_maybe' into 'master'
...
Change disposition to work like vanilla
Closes #5100 and #5842
See merge request OpenMW/openmw!599
2021-07-12 14:22:26 +00:00
psi29a
6475082095
Merge branch 'lifetime' into 'master'
...
Maybe fix #6071
Closes #6071
See merge request OpenMW/openmw!1010
2021-07-12 14:11:14 +00:00
psi29a
223216733d
Merge branch 'coverity_fix' into 'master'
...
Fix some coverity issues
See merge request OpenMW/openmw!1013
2021-07-12 14:06:44 +00:00
Petr Mikheev
8ff8ec4abd
Fix coverity issues
2021-07-12 12:51:25 +02:00
elsid
153cd9a20c
Avoid redundant search for existing element
2021-07-12 11:41:21 +02:00
elsid
eece47f70e
Avoid copying osg::ref_ptr when adding or removing item from work queue
...
Copy constructor does refcounting, and move constructor doesn't.
2021-07-12 11:41:21 +02:00
elsid
b8fcd6d3ba
Manage work item lifetime on the client side
...
Instead of explicit work queue stop before any possibly used engine manager
is destructed. Based on an assumption that any engine manager can be destructed
independently from the work queue destruction. This model is already used in
CellPreloader that conflicts with explicit work queue stop.
After the work queue is requested to be stopped, any client waiting for a not
started work item to be done will wait forever because the work item is dropped
from the queue. Therefore either clients should not wait for own work items to
be completed in destructor or the work queue should not drop items before
clients are destructed. Other approaches are possible but are not considered
due to increasing complexity.
CellPreloader already tries to wait for all created work items to be done so
keep it that way and extend the model to AsyncScreenCaptureOperation and Scene.
Additionally abort all scheduled work items when owner is destructed. This
prevents a long exit when multiple screenshots are scheduled right before
exiting the game.
2021-07-12 11:41:14 +02:00
glassmancody.info
389b830046
fix black objects with OP batch debug due to unitialized uniform
2021-07-11 23:03:55 -07:00
fredzio
1650dabed8
Assign the return value of weak_ptr::lock() to a variable, so that the
...
shared object lifetime is properly extended. Otherwise there is a
possibility that the Actor gets destroyed during call to unstuck().
2021-07-11 18:01:20 +02:00
fredzio
643a64cb2f
Change some settings for async physics:
...
- default to 1 thread
- default to always use defered aabb update, remove option
- always keep a cache of LOS request for at least the current frame.
This decreases number of raycast, especially when a lot of actors are
involved and "NPCs avoid collisions" is on
2021-07-11 17:07:39 +02:00
fredzio
6ad2cf8e4f
Skip simulation result after calling Actor::updatePosition(). Otherwise
...
when going out of tcl the player would go back to previous position for
one frame.
2021-07-11 16:42:45 +02:00
elsid
73639a93b6
Avoid CTAD to fix macOS build
...
../../../apps/openmw/engine.cpp:706:23: error: no viable constructor or deduction guide for deduction of template arguments of 'function'
? std::function(ScheduleNonDialogMessageBox {})
^
/Applications/Xcode.app/Contents/Developer/Toolchains/XcodeDefault.xctoolchain/usr/bin/../include/c++/v1/functional:1430:48: note: candidate template ignored: could not match 'function<_Fp>' against '(anonymous namespace)::ScheduleNonDialogMessageBox'
template<class _Fp> class _LIBCPP_TEMPLATE_VIS function; // undefined
^
/Applications/Xcode.app/Contents/Developer/Toolchains/XcodeDefault.xctoolchain/usr/bin/../include/c++/v1/functional:1430:48: note: candidate function template not viable: requires 0 arguments, but 1 was provided
../../../apps/openmw/engine.cpp:707:23: error: no viable constructor or deduction guide for deduction of template arguments of 'function'
: std::function(IgnoreString {})
^
/Applications/Xcode.app/Contents/Developer/Toolchains/XcodeDefault.xctoolchain/usr/bin/../include/c++/v1/functional:1430:48: note: candidate template ignored: could not match 'function<_Fp>' against '(anonymous namespace)::IgnoreString'
template<class _Fp> class _LIBCPP_TEMPLATE_VIS function; // undefined
^
2021-07-11 13:26:21 +02:00
Cédric Mocquillon
269cd31059
Use same world coordinates to compute distances
2021-07-10 19:04:46 +02:00
Petr Mikheev
c2280ada1d
OpenMW Lua, API_VERSION=0
2021-07-09 20:48:54 +02:00
Petr Mikheev
85c441ec9a
Refactoring and minor fixes related to active/inactive object state
2021-07-09 20:48:54 +02:00
Petr Mikheev
43b7e6964a
Add function World::isCellActive
2021-07-09 20:48:54 +02:00
Petr Mikheev
702eb19271
Fixes and refactoring
2021-07-09 20:48:54 +02:00
Petr Mikheev
cc7dbabd19
Change argument of onKeyPress
2021-07-09 20:48:54 +02:00
Petr Mikheev
b1a6441c23
Add LocalScripts::LocalEngineEvent. Add OnConsume
engine handler.
2021-07-09 20:48:54 +02:00
Petr Mikheev
1268597676
Make loaded but inactive objects available in Lua scripts.
2021-07-09 20:48:54 +02:00
Petr Mikheev
403d31313c
New setting "lua num threads". Thread syncronization is changed from std: 🧵 :yield to std::condition_variable.
2021-07-09 20:48:54 +02:00
Petr Mikheev
a8f76260bc
A possibility to view actor controls from lua scripts without disabling AI.
2021-07-09 20:48:54 +02:00
Petr Mikheev
c463f52390
Add Cell Lua bindings
2021-07-09 20:48:54 +02:00
Petr Mikheev
de349962d1
Engine handlers onActive/onInactive and a function self:isActive()
2021-07-09 20:32:53 +02:00
Petr Mikheev
d5cda61855
Console command "reload lua"
2021-07-09 20:24:56 +02:00
Petr Mikheev
9d09ecf8ca
Add mwlua/actions
2021-07-09 20:24:56 +02:00
Petr Mikheev
f5722f9ba0
Inventory bindings
2021-07-09 20:24:56 +02:00
Petr Mikheev
bdccf161c4
Add lua package 'openmw.query'
2021-07-09 20:24:56 +02:00
Petr Mikheev
32218f6dd5
More Lua bindings
2021-07-09 20:24:56 +02:00
Petr Mikheev
87b5afb9bf
Control active Lua scripts from openmw.cfg
2021-07-09 20:24:56 +02:00
Petr Mikheev
8c6d303730
Saving/loading for Lua scripts (saves format is changed)
2021-07-09 20:24:56 +02:00
Petr Mikheev
914e604e06
Interactions between LuaManager and other parts of OpenMW
2021-07-09 20:24:56 +02:00
Petr Mikheev
f2d0a702e9
Add Lua timers
2021-07-09 20:24:51 +02:00
Petr Mikheev
3d7e306064
Add apps/openmw/mwlua
2021-07-09 20:03:27 +02:00
Petr Mikheev
7df500c385
Put RefData move constructor to cpp file
2021-07-09 20:03:27 +02:00
Petr Mikheev
6db2450c90
Initial support of generated RefNums with negative mContentFile.
2021-07-09 20:03:27 +02:00
Petr Mikheev
b53667d555
Queries. Data structures and lua bindings.
2021-07-09 20:03:27 +02:00
Petr Mikheev
479856f812
Add components/lua/scriptscontainer and components/esm/luascripts
2021-07-09 20:03:27 +02:00
Petr Mikheev
8dbaf6022c
Add components/lua/serilalization
2021-07-09 20:03:27 +02:00
Petr Mikheev
4b068b27ca
Add components/lua/luastate and components/lua/utilpackage
2021-07-09 20:03:27 +02:00
Petr Mikheev
9e168fd9cc
Add Lua/LuaJit and sol3 to openmw
2021-07-09 19:27:00 +02:00
psi29a
c94339f248
Merge branch 'OpenMW_Bug6067_take3' into 'master'
...
Make Object Paging to ignore moved references. (Issue #6139 )
See merge request OpenMW/openmw!1001
2021-07-09 16:05:53 +00:00
psi29a
d8bed73ada
Merge branch 'local_crache' into 'master'
...
Cache failed compilation when getting locals
Closes #6123
See merge request OpenMW/openmw!988
2021-07-08 22:16:15 +00:00
psi29a
c774a68439
Merge branch 'system_benchmark' into 'master'
...
Support system Google Benchmark
See merge request OpenMW/openmw!1000
2021-07-08 22:15:26 +00:00
elsid
d8cd5b361a
Hide message boxes when HUD is hidden
2021-07-08 21:14:01 +02:00
elsid
4259f7f230
Add setting to enable/disabled notification for saved screenshots
2021-07-08 21:14:01 +02:00
elsid
5103120eef
Notify about saved screenshot
...
Show message about saved screenshot via schedule message box. Since screenshot
saving happens not in the main thread calling messageBox directly is unsafe.
WindowManager::scheduleMessageBox delays message box showing until next update
in the main thread.
2021-07-08 21:14:01 +02:00
elsid
f7a6be053d
Stop engine work queue before destructing environment
...
To avoid access to null and dangling pointers from active work items on
quitting.
2021-07-08 21:14:01 +02:00
elsid
f8e02000ec
Write screenshots to file asynchronously
2021-07-08 21:13:57 +02:00
elsid
33aa4d0822
Move WriteScreenshotToFileOperation to components
2021-07-08 20:27:19 +02:00
elsid
8d2d24ce65
Store screen capture operation as osg::ref_ptr
2021-07-08 20:27:19 +02:00
psi29a
6cc5dc5bf0
Merge branch 'halp' into 'master'
...
Implement the help command
Closes #2780
See merge request OpenMW/openmw!1002
2021-07-07 20:49:41 +00:00
Evil Eye
eced6f2126
Implement the help command
2021-07-07 18:48:25 +02:00
psi29a
103f5943cf
Merge branch 'endl' into 'master'
...
Remplace a ton of std::endl with \n
See merge request OpenMW/openmw!978
2021-07-07 10:42:52 +00:00
cc9cii
16e1398819
Quick solution to add logic to getNextRef() calls so that moved references are ignored. Currently it is assumed that MVRF records have been all read before the ESM reader context was saved, which is false assumption. Should resolve Issue #6139 .
2021-07-07 08:18:38 +10:00
elsid
d85cbe4069
Support system Google Benchmark
2021-07-06 19:33:26 +02:00
Evil Eye
1196e0cfe6
Change disposition to work like vanilla
2021-07-06 17:03:56 +02:00
psi29a
126cf40848
Merge branch 'filter' into 'master'
...
Add a default filter to CS tables
See merge request OpenMW/openmw!958
2021-07-06 14:16:45 +00:00
psi29a
3c0a0ba9e1
Merge branch 'master' into 'touch_my_crank'
...
# Conflicts:
# CHANGELOG.md
2021-07-06 09:18:12 +00:00
psi29a
c372c239a6
Merge branch 'master' into 'OpenCS_Bug6017'
...
# Conflicts:
# CHANGELOG.md
2021-07-06 07:52:49 +00:00
psi29a
cda0c7ed44
Merge branch 'ghd' into 'master'
...
Great House Dagoth
See merge request OpenMW/openmw!638
2021-07-06 07:22:29 +00:00
cc9cii
ae4ddd810f
More dead code removal.
2021-07-06 14:45:45 +10:00
cc9cii
ec457a09c3
Fix Npc edit widget index out of bounds due to a removed column.
2021-07-06 13:45:58 +10:00
cc9cii
f68c81e631
Merge branch 'master' into 'OpenCS_Bug6017'
2021-07-06 03:10:46 +00:00
cc9cii
4b3de46bfa
Use enums in place of magic numbers. Ensure Creature and NPC cell references are always saved as persistent.
2021-07-06 12:37:02 +10:00
cc9cii
1f5b20ef7d
test fix for missing refs
2021-07-06 11:43:30 +10:00
Evil Eye
796617fa0c
Allow activators to be activated using telekinesis
2021-07-05 22:00:43 +02:00
Evil Eye
18f297a4e0
Allow a missing implicit argument for GetDistance
2021-07-05 18:34:09 +02:00
Evil Eye
0a15d7740a
Delay physics for objects created by scripts
2021-07-05 18:34:06 +02:00
jvoisin
3925c0fecf
Remplace a ton of std::endl with \n
...
endl is calling flush, which is really nuking performances,
and I care about esmtool's performances because I'm
using it for fuzzing.
2021-07-05 18:27:43 +02:00
psi29a
7cc4e5afa1
Merge branch 'more_magical_stamina' into 'master'
...
Make fatigue and magicka recalculation behave the same way
Closes #6107
See merge request OpenMW/openmw!968
2021-07-05 13:24:09 +00:00
elsid
7498a86abe
Remove redundant semicolons
2021-07-05 13:11:54 +02:00
psi29a
3588bfcb17
Merge branch 'OpenMW_Bug6067' into 'master'
...
Support moved references records in any order. (Issue #6067 )
See merge request OpenMW/openmw!982
2021-07-05 08:20:37 +00:00
psi29a
6a4eeeb39b
Merge branch 'fix_door_freeze' into 'master'
...
Fix slow AiPackage::getTarget calls (#6136 )
Closes #6136
See merge request OpenMW/openmw!990
2021-07-05 08:17:46 +00:00
psi29a
9123db3a59
Merge branch 'fix_navmesh_update' into 'master'
...
Fix navmesh update on opening/closing door
See merge request OpenMW/openmw!995
2021-07-05 07:30:32 +00:00
elsid
c7c0d11cab
Trigger navmesh update when any navigator object has been updated
...
Set World::mShouldUpdateNavigator to true when this happens. Previously
assignment to true was missing for object rotation and moving.
2021-07-05 00:20:57 +02:00
elsid
09f9075842
Use RecastMeshBuilder once to create RecastMesh
...
This allows to move all data out of the object instead of copying.
2021-07-04 22:18:05 +02:00
elsid
8d1eb7e2e6
Fix slow AiPackage::getTarget calls
...
Assume there are no cell refs with empty ref id.
2021-07-04 14:09:11 +02:00
Evil Eye
9a7c07173d
Cache failed compilation when getting locals
2021-07-04 10:58:12 +02:00
Andreas Stöckel
b1fa0e9560
Fix Avatar Preview Coordinate Transformations in the Inventory (Issues #6129 , #6131 )
2021-07-04 08:36:59 +00:00
cc9cii
42bcbe34de
Cell references that teleport (Doors) should be placed in the "persistent" group when saving.
2021-07-04 16:18:47 +10:00
NeveHanter
6bb030aa55
Ignore actors siding with player in awarness check to allow training the sneaking or knowing whether player is detected by other actors in the siding actor line of sight
2021-07-03 13:40:36 +02:00
Evil Eye
5e4beb217a
Make fatigue and magicka recalculation behave the same way
2021-07-03 10:47:26 +02:00
Dobrohotov Alexei
3cab69c389
Fix ShowMap partial match filtering (bug #6115 )
2021-07-03 01:04:22 +03:00
psi29a
07c3ed16d0
Merge branch 'base64-fixes' into 'master'
...
Base64 fixes
Closes #6111
See merge request OpenMW/openmw!965
2021-07-02 06:27:17 +00:00
jvoisin
2cb9482893
Use a std::vector instead of a std::list in hypertextparser.cpp
2021-07-01 23:09:08 +00:00
elsid
5624fe1911
Consider path not found when there is navmesh query error
...
Fix a specific case when the guard at the start of the game fails to find path
due to failed getPolyHeight call that results into a partial path to the
target.
2021-06-30 20:13:27 +02:00
cc9cii
6575b95448
Support moved references (i.e. with MVRF sub-records) that do not occur at the beginning of the cell references block.
2021-06-30 15:34:40 +10:00
cc9cii
2d8dd9be32
Fix using incorrect id to search for record flags. Eliminate inefficient double-loop in saving cell references.
2021-06-30 10:46:51 +10:00
cc9cii
47ef98ca1b
Clean up RefIdData code for better legibility.
2021-06-30 10:09:56 +10:00
cc9cii
f2a301653c
Remove redundant mPersistent member from ESM::NPC and ESM::Creature, replaced by mRecordFlags. Fixed the editing of the persistence flag value.
2021-06-30 08:20:29 +10:00
cc9cii
2a76634f5f
Moved persistence flag from references to the header flags of referenceables (e.g. Static, Weapon, etc). Editing widget is not fully working.
2021-06-29 23:25:26 +10:00
cc9cii
f6eab52a1b
Added "Persistent" column to references table.
2021-06-29 19:45:02 +10:00
cc9cii
024ad3276b
Partial fix for #6017 . The persistence flag of the references are saved but it is not yet possible to modify it via OpenCS.
2021-06-29 19:20:01 +10:00
Evil Eye
4f264af5a9
Merge branch 'staticsload' into 'master'
...
Loads statics before actors II (#5379 )
See merge request OpenMW/openmw!588
2021-06-28 20:25:51 +00:00
psi29a
67f32263b2
Merge branch 'fix_malexa_escape' into 'master'
...
Inscribe physical bounding box into navmesh agent cylinder (#6114 )
Closes #6114
See merge request OpenMW/openmw!967
2021-06-28 14:26:08 +00:00
fredzio
c795e0bce6
Some actors are supposed to spawn on an object that belongs to an adjacent cell.
...
Since actors can be active in 3x3 grid around the player, we need to
first load all objects in a 5x5 grid around the player.
Split load and unloading in 2 phases. Add an mInactiveCells set into the
scene, which contains all cells inside the aforementioned 5x5 grid.
These cells contains only heightfields and non-animated physics objects.
Animated objects are tied to the scene graph, which doesn't exists yet
in these cells, so we skip them.
2021-06-28 09:36:04 +02:00
elsid
8d2cdedc87
Show number of pathgrid node in a tooltip
...
To allow users faster understand what node it is.
2021-06-28 00:34:49 +02:00
elsid
84d6dea277
Inscribe physical bounding box into navmesh agent cylinder
...
To disallow too narrow navmesh for a bounding box.
2021-06-27 13:44:38 +02:00
AnyOldName3
d38126ef1c
Pack default CS config
...
*Technically* it was already being loaded as if it were packed, but it
made no difference because it's supposed to be empty.
2021-06-26 20:00:25 +01:00
Evil Eye
1f658209f8
Merge branch 'DoNotCopyFullDialogue' into 'master'
...
Do not copy full dialogue as we only want to return its id
See merge request OpenMW/openmw!856
2021-06-26 11:59:37 +00:00
Alexey Sokolov
ec576b36f1
Add a default filter to CS tables
...
This fixes the single most annoying issue of OpenMW-CS: inability for
users to filter records in the table if they don't happen to know by
heart the syntax of the very powerful filter engine. Because simply
typing the text into the search field did not work. Now, existence of .*
suggests that regex is used, and users still can replace the text with a
custom filter if they wish.
2021-06-25 11:45:43 +01:00
psi29a
7d8949ec3f
Merge branch 'positively_glowing' into 'master'
...
Detach objects from the active grid when attempting to get their animation
Closes #6105
See merge request OpenMW/openmw!951
2021-06-25 09:20:25 +00:00
Evil Eye
2be27da791
Merge branch 'const_refs' into 'master'
...
Add a ton of const refs
See merge request OpenMW/openmw!954
2021-06-24 18:57:41 +00:00
Evil Eye
9f7980ecd7
Merge branch 'refenreces' into 'master'
...
Sprinkle some references where it makes sense
See merge request OpenMW/openmw!952
2021-06-24 17:40:36 +00:00
Evil Eye
7e9785941c
Merge branch 'default' into 'master'
...
Use `default` instead of empty constructors/destructors
See merge request OpenMW/openmw!957
2021-06-24 17:19:02 +00:00
jvoisin
cf11870b1c
Sprinkle some references where it makes sense
2021-06-24 00:28:09 +02:00
jvoisin
5840279f16
Use default
instead of empty constructors/destructors
...
See https://pvs-studio.com/en/docs/warnings/v832/ for details
2021-06-24 00:26:15 +02:00
jvoisin
b2c170efa0
Use initialization lists where possible
2021-06-23 23:36:43 +02:00
jvoisin
1123dc46ee
Add a ton of const refs
2021-06-23 23:13:59 +02:00
Evil Eye
692615fd3c
Detach objects from the active grid when attempting to get their animation
2021-06-23 18:08:49 +02:00
Evil Eye
7377568f01
Merge branch 'modernize_use_override_openmw_cs' into 'master'
...
Using override keyword in OpenMW CS
See merge request OpenMW/openmw!888
2021-06-22 18:04:40 +00:00
Evil Eye
f264a8d90a
Merge branch 'vfx' into 'master'
...
Calculate magic VFX vertical offset (bug #5453 )
Closes #5453
See merge request OpenMW/openmw!909
2021-06-22 17:15:29 +00:00
Alexey Yaryshev
2577047b59
Fixed an issue #6101 ( https://gitlab.com/OpenMW/openmw/-/issues/6101 )
2021-06-22 14:51:49 +00:00
Dobrohotov Alexei
870cdd0130
Calculate magic VFX vertical offset (bug #5453 )
2021-06-21 23:29:45 +03:00
psi29a
9c3117d2d4
Merge branch 'fix_smooth_movement' into 'master'
...
Validate almost straight shortcuts by navmesh raycast (#6102 )
Closes #6102
See merge request OpenMW/openmw!947
2021-06-21 19:54:17 +00:00
Evil Eye
b2acb322af
Merge branch 'modernize_use_override_for_most_apps' into 'master'
...
Using override keyword in most apps
See merge request OpenMW/openmw!886
2021-06-21 18:47:45 +00:00
elsid
e7d68d3d1b
Validate almost straight shortcuts by navmesh raycast
...
Check whether it's possible to actually move over navmesh by such shortcut.
2021-06-21 18:50:45 +02:00
Léo Peltier
5c4e1252e9
Handle AutoCalc flag when getting spell cost
...
Fixes #5483
This only applies to "base game" spells.
When adding an AutoCalc spell with TES:CS its cost is computed and
stored inside game files. This stored cost was being used by OpenMW and
the actual cost was never recomputed at runtime whereas Morrowind.exe
discards the stored cost.
While this worked fine in vanilla, mods can update AutoCalc spell
effects without ever updating the stored cost.
The formula was mostly there already but there was a few differences,
namely a 1 second offset in duration.
2021-06-20 13:42:28 +02:00
psi29a
6a9f2fdb17
Merge branch 'underground' into 'master'
...
Get The Underground 2 running
See merge request OpenMW/openmw!608
2021-06-19 21:06:15 +00:00
Evil Eye
690e5ef757
Don't resolve a script's target just to get the ID
2021-06-19 19:26:57 +02:00
Evil Eye
67c8d73fe0
Allow scripts to fail per target
2021-06-19 19:26:55 +02:00
Evil Eye
879e66a043
Don't autoequip items when implicitely adding an item using equip
2021-06-19 19:26:53 +02:00
Evil Eye
382d458f9c
Ignore wrong reference class for SetHello
2021-06-19 19:26:53 +02:00
elsid
e5e04b85c1
Consider time to destination when try to avoid collision
...
Actor may reach destination before collision. Get next path point from active
packet pathfinder and use point tolerance to reduce distance.
Use maximum of last destination tolerance and DEFAULT_TOLERANCE because
there are 2 checks made for path completion. First checks whether actor is
close enough to the destination and second drop last path point when actor is
closer than DEFAULT_TOLERANCE.
2021-06-19 14:11:20 +02:00
elsid
56e6305345
Revert "Merge branch 'fix_new_game_guard' into 'master'"
...
This reverts commit a487295d39
.
2021-06-19 14:06:46 +02:00
psi29a
b7886bc036
Merge branch 'SpeedUpInteriorCheck' into 'master'
...
Speedup searching for exterior cells
See merge request OpenMW/openmw!857
2021-06-19 00:29:47 +00:00
psi29a
047d993cf4
Merge branch 'at' into 'master'
...
Use operator[] instead of at() when the idx is checked
See merge request OpenMW/openmw!916
2021-06-19 00:26:48 +00:00
psi29a
f66196588c
Merge branch 'object_paging_min_size_combo_box' into 'master'
...
Adding Object Paging Min Size combo box to Advanced -> Visuals
See merge request OpenMW/openmw!917
2021-06-19 00:20:29 +00:00
psi29a
5aa1f7b3d0
Merge branch 'remove_useless' into 'master'
...
Remove some useless variables from esmtool
See merge request OpenMW/openmw!925
2021-06-19 00:17:58 +00:00
psi29a
3794e6d4b2
Merge branch 'fix-ffmpeg-api-const' into 'master'
...
Fix future FFMpeg API changes
See merge request OpenMW/openmw!922
2021-06-19 00:15:16 +00:00
psi29a
4d95855dd5
Merge branch 'reduce_esmreader' into 'master'
...
Reduce a bit std::stringstream's code bloat in hot/small functions
See merge request OpenMW/openmw!933
2021-06-18 22:53:25 +00:00
psi29a
071786aff6
Merge branch 'UseSameDistanceForAllLodsOfTheCurrentChunk' into 'master'
...
Use same distance for all lods of the current chunk
Closes #6061
See merge request OpenMW/openmw!940
2021-06-16 11:47:30 +00:00
psi29a
329ec8f044
Merge branch 'dont_bury_me_plz' into 'master'
...
Don't unsummon creatures not found within the active cells
Closes #6070
See merge request OpenMW/openmw!926
2021-06-16 09:43:53 +00:00
psi29a
c39c0266a9
Merge branch 'free_from_bondage' into 'master'
...
Do not assume the bound item cache is valid after loading a save
Closes #6069
See merge request OpenMW/openmw!931
2021-06-16 09:43:14 +00:00
jvoisin
22153cca7b
Reduce a bit the code bloat in hot paths/small functions
...
There is no need to bloat hot/small functions with
a ton of function calls and involving locales
for simple error messages.
2021-06-15 17:57:14 +02:00
unknown
7d756d997e
Rebuild the cache in readState
2021-06-12 18:18:52 +02:00
CedricMocquillon
7fa67ff675
Use same distance for all lod instances of a chunk
2021-06-12 15:34:15 +02:00
fredzio
7d0483d7ad
Cast spell even if target Ptr is empty. It happens when enchanted arrows
...
hit water or ground.
2021-06-11 05:55:37 +02:00
Evil Eye
90fa8dca35
Do not assume the bound item cache is valid after loading a save
2021-06-06 18:10:55 +02:00
Evil Eye
89e0bfd1a4
Purge summon effects on dispose
2021-06-06 12:45:42 +02:00
Evil Eye
004660be3d
Don't unsummon creatures not found within the active cells
2021-06-02 20:33:29 +02:00
jvoisin
d651f9e60c
Remove some useless variables from esmtool
2021-06-02 19:04:46 +02:00
Dan Church
70a0229010
Fix future FFMpeg API changes
...
avcodec_find_decoder now returns const AVCodec*.
2021-06-01 10:56:48 -05:00
Alexey Sokolov
3e4340338f
Update IRC links to libera
...
In README, in OpenCS about dialog, in Travis notification
2021-05-31 21:15:26 +01:00
psi29a
a487295d39
Merge branch 'fix_new_game_guard' into 'master'
...
Consider time to destination when try to avoid collision
See merge request OpenMW/openmw!914
2021-05-30 11:52:48 +02:00
Thunderforge
89950e5528
Preventing type conversion of double to float for objectPagingMinSize
2021-05-29 16:27:23 -05:00
Thunderforge
9f2f5174d4
Adding Object Paging Min Size combo box to Advanced -> Visuals
...
Requested in Discord by CMAugust and hammered out with a few other users.
2021-05-29 16:17:30 -05:00
jvoisin
8695b6fbc5
Use operator[] instead of at() when the idx is checked
2021-05-29 15:31:32 +02:00
Evil Eye
b8472e1303
Use modified paralyze magnitude to fall and float
2021-05-28 16:55:54 +02:00
psi29a
9dfba37ce9
Merge branch 'fix_big_object_navmesh_update' into 'master'
...
Fix overwhelming recast mesh and navmesh updates for big rotating objects (#6060 )
Closes #6060
See merge request OpenMW/openmw!911
2021-05-27 21:08:33 +00:00
elsid
e9433a91fb
Add more tests for TileCachedRecastMeshManager
2021-05-27 20:18:52 +02:00
psi29a
825ac6100f
Merge branch 'fix_loading_screen' into 'master'
...
Always center loading screen progress bar by height when there is active message box (#6059 )
See merge request OpenMW/openmw!910
2021-05-27 16:45:49 +00:00
Evil Eye
1a1085272a
Use ciEqual to determine actor-specific answers
2021-05-27 17:13:04 +02:00
elsid
4a6961b365
Trigger navmesh update on moved player only when player tile has been changed
2021-05-27 16:52:42 +02:00
elsid
d122e184cc
Report navmesh change for not posted tiles
...
Corresponding recast mesh tiles can be updated but navmesh tiles may never
appear for them. Report back zero navmesh version to allow oscillating recast
objects detection to work. This version is always less than any generated
navmesh tile version so any report for generated navmesh will override it.
If zero navmesh version is reported after recast mesh tile got report about
generated navmesh tile it is a no-op since generated version is always greater
than zero.
2021-05-27 12:40:00 +02:00
elsid
3915e5d2cc
Always center loading screen progress bar by height when there is active message box
...
To fix all possible situations when active message box overlaps with loading
screen progress.
The only used condition to center loading screen progress by height is
number of message boxes > 0. No need to pass it through interface.
LoadingScreen can check it inside setLabel function.
2021-05-26 23:29:37 +02:00
Mads Buvik Sandvei
d906ec773a
Fix hangup on savegame after manual screenshots.
2021-05-24 17:57:39 +00:00
psi29a
dff4b83d9d
Merge branch 'stop_threading' into 'master'
...
Stop osg viewer threading before destructing engine
See merge request OpenMW/openmw!901
2021-05-22 08:52:44 +00:00
elsid
375372981c
Stop osg viewer threading before destructing engine
...
To avoid rendering while engine parts are destructing.
2021-05-21 23:16:15 +02:00
elsid
105cd5b06f
Add more checks to NavMeshTilesCache tests
2021-05-21 19:33:42 +02:00
fredzio
b13afd758c
Remove both racy and useless code.
...
Actor's position can be determined in 3 ways:
1/ as a result of physics simulation
2/ after a script require a relative position change (SetPos, Move)
3/ absolutely set from games mechanics event (teleport) or script
(PositionCell)
In case 1/, RefData::mPosition is updated with the physics simulation result
In case 2/, when RefData::mPosition is updated, physics simulation is informed of the change and update accordingly
In case 3/, when RefData::mPosition is updated, the physics simulation state is reset
In all 3 cases, we don't need to check the RefData::mPosition to get a
correct behaviour.
TSAN reported the following data race:
Read of size 4 at 0x7b50005b75b0 by thread T12 (mutexes: write M656173, write M84859534346343880):
#0 ESM::Position::asVec3() const /build/openmw/openmw/master2/.build/freebsd/TSAN/../../.././components/esm/defs.hpp:55:27 (openmw+0xb809d5)
#1 MWPhysics::Actor::updateWorldPosition() /build/openmw/openmw/master2/.build/freebsd/TSAN/../../../apps/openmw/mwphysics/actor.cpp:131:59 (openmw+0xb809d5)
#2 MWPhysics::Actor::setPosition(osg::Vec3f const&) /build/openmw/openmw/master2/.build/freebsd/TSAN/../../../apps/openmw/mwphysics/actor.cpp:177:5 (openmw+0xb809d5)
#3 MWPhysics::PhysicsTaskScheduler::updateActorsPositions() /build/openmw/openmw/master2/.build/freebsd/TSAN/../../../apps/openmw/mwphysics/mtphysics.cpp:524:28 (openmw+0xb91ac0)
#4 MWPhysics::PhysicsTaskScheduler::afterPostStep() /build/openmw/openmw/master2/.build/freebsd/TSAN/../../../apps/openmw/mwphysics/mtphysics.cpp:614:13 (openmw+0xb915e7)
#5 MWPhysics::PhysicsTaskScheduler::worker()::$_5::operator()() const /build/openmw/openmw/master2/.build/freebsd/TSAN/../../../apps/openmw/mwphysics/mtphysics.cpp:498:45 (openmw+0xb915e7)
#6 void Misc::Barrier::wait<MWPhysics::PhysicsTaskScheduler::worker()::$_5>(MWPhysics::PhysicsTaskScheduler::worker()::$_5&&) /build/openmw/openmw/master2/.build/freebsd/TSAN/../../.././components/misc/barrier.hpp:30:21 (openmw+0xb915e7)
#7 MWPhysics::PhysicsTaskScheduler::worker() /build/openmw/openmw/master2/.build/freebsd/TSAN/../../../apps/openmw/mwphysics/mtphysics.cpp:498:31 (openmw+0xb915e7)
#8 MWPhysics::PhysicsTaskScheduler::PhysicsTaskScheduler(float, btCollisionWorld*, MWRender::DebugDrawer*)::$_0::operator()() const /build/openmw/openmw/master2/.build/freebsd/TSAN/../../../apps/openmw/mwphysics/mtphysics.cpp:162:45 (openmw+0xb92630)
#9 decltype(std::__1::forward<MWPhysics::PhysicsTaskScheduler::PhysicsTaskScheduler(float, btCollisionWorld*, MWRender::DebugDrawer*)::$_0>(fp)()) std::__1::__invoke<MWPhysics::PhysicsTaskScheduler::PhysicsTaskScheduler(float, btCollisionWorld*, MWRender::DebugDrawer*)::$_0>(MWPhysics::PhysicsTaskScheduler::PhysicsTaskScheduler(float, btCollisionWorld*, MWRender::DebugDrawer*)::$_0&&) /usr/include/c++/v1/type_traits:3899:1 (openmw+0xb92630)
#10 void std::__1::__thread_execute<std::__1::unique_ptr<std::__1::__thread_struct, std::__1::default_delete<std::__1::__thread_struct> >, MWPhysics::PhysicsTaskScheduler::PhysicsTaskScheduler(float, btCollisionWorld*, MWRender::DebugDrawer*)::$_0>(std::__1::tuple<std::__1::unique_ptr<std::__1::__thread_struct, std::__1::default_delete<std::__1::__thread_struct> >, MWPhysics::PhysicsTaskScheduler::PhysicsTaskScheduler(float, btCollisionWorld*, MWRender::DebugDrawer*)::$_0>&, std::__1::__tuple_indices<>) /usr/include/c++/v1/thread:280:5 (openmw+0xb92630)
#11 void* std::__1::__thread_proxy<std::__1::tuple<std::__1::unique_ptr<std::__1::__thread_struct, std::__1::default_delete<std::__1::__thread_struct> >, MWPhysics::PhysicsTaskScheduler::PhysicsTaskScheduler(float, btCollisionWorld*, MWRender::DebugDrawer*)::$_0> >(void*) /usr/include/c++/v1/thread:291:5 (openmw+0xb92630)
Previous write of size 8 at 0x7b50005b75b0 by main thread:
#0 memcpy /wrkdirs/usr/ports/devel/llvm-devel/work-default/llvm-project-3f6753efe1990a928ed120bd907940a9fb3e2fc3/compiler-rt/lib/tsan/../sanitizer_common/sanitizer_common_interceptors.inc:827:5 (openmw+0x55a057)
#1 MWWorld::RefData::setPosition(ESM::Position const&) /build/openmw/openmw/master2/.build/freebsd/TSAN/../../../apps/openmw/mwworld/refdata.cpp:216:19 (openmw+0xa3de1c)
#2 MWWorld::World::moveObject(MWWorld::Ptr const&, MWWorld::CellStore*, float, float, float, bool) /build/openmw/openmw/master2/.build/freebsd/TSAN/../../../apps/openmw/mwworld/worldimp.cpp:1130:26 (openmw+0xa57300)
#3 MWWorld::World::moveObject(MWWorld::Ptr const&, float, float, float, bool, bool) /build/openmw/openmw/master2/.build/freebsd/TSAN/../../../apps/openmw/mwworld/worldimp.cpp:1253:16 (openmw+0xa580c8)
#4 MWWorld::World::doPhysics(float, unsigned long long, unsigned int, osg::Stats&) /build/openmw/openmw/master2/.build/freebsd/TSAN/../../../apps/openmw/mwworld/worldimp.cpp:1530:17 (openmw+0xa5af8f)
#5 MWWorld::World::updatePhysics(float, bool, unsigned long long, unsigned int, osg::Stats&) /build/openmw/openmw/master2/.build/freebsd/TSAN/../../../apps/openmw/mwworld/worldimp.cpp:1862:13 (openmw+0xa61a7c)
#6 OMW::Engine::frame(float) /build/openmw/openmw/master2/.build/freebsd/TSAN/../../../apps/openmw/engine.cpp:333:42 (openmw+0xcce9e7)
#7 OMW::Engine::go() /build/openmw/openmw/master2/.build/freebsd/TSAN/../../../apps/openmw/engine.cpp:935:14 (openmw+0xcd86ed)
#8 runApplication(int, char**) /build/openmw/openmw/master2/.build/freebsd/TSAN/../../../apps/openmw/main.cpp:296:17 (openmw+0xcbffac)
#9 wrapApplication(int (*)(int, char**), int, char**, std::__1::basic_string<char, std::__1::char_traits<char>, std::__1::allocator<char> > const&) /build/openmw/openmw/master2/.build/freebsd/TSAN/../../../components/debug/debugging.cpp:205:15 (openmw+0x1335442)
#10 main /build/openmw/openmw/master2/.build/freebsd/TSAN/../../../apps/openmw/main.cpp:308:12 (openmw+0xcc008a)
:wqa
2021-05-20 20:46:44 +02:00
psi29a
3920477618
Merge branch 'moving_lighting_method_to_graphics' into 'master'
...
Moving Lighting Method from Advanced -> Visuals to Graphics -> Lighting
See merge request OpenMW/openmw!883
2021-05-19 05:09:24 +00:00
psi29a
c4fde03542
Merge branch 'ObjectPagingMergeIssue' into 'master'
...
Share state
See merge request OpenMW/openmw!879
2021-05-19 05:08:12 +00:00
Thunderforge
945f1aad20
Using override keyword in OpenMW CS
...
Detected by clang-tidy's modernize-use-override
2021-05-18 19:53:55 -05:00
Thunderforge
efcdb2dfdd
Using override keyword in most apps
...
Detected by clang-tidy's modernize-use-override
Future MRs can be created to run this on OpenMW and OpenMW CS
2021-05-18 19:42:24 -05:00
Thunderforge
ded7bd92e6
Using auto keyword in most apps
...
Detected by clang-tidy's modernize-use-auto
2021-05-18 19:20:59 -05:00
Thunderforge
6ba23a028c
Removing unused imports in the Launcher
2021-05-18 18:23:16 -05:00
Thunderforge
4a15868c0e
Moving Lighting Method from Advanced -> Visuals to Graphics -> Lighting
...
The plan is to add additional options to this new tab, and since it's of similar status as the Shaders settings, it makes sense to put them next to them on the Graphics page.
2021-05-18 18:05:54 -05:00
CedricMocquillon
d11a6bd92c
Share state
2021-05-18 17:57:47 +02:00
Atahualpa
3a1243a5d0
Rebased branch, reduced code duplication, added comments, adjusted formatting.
2021-05-18 17:53:00 +02:00
Atahualpa
ca80aeaaea
Fix vertex calculation for cell-border drawing.
2021-05-18 15:05:26 +02:00
Atahualpa
356efa15a2
Fixes #6035 (circle brush selects outside of circle) and #6036 (some corner vertices not selected).
2021-05-18 15:04:01 +02:00
Atahualpa
7be891b440
Directly use Geometry instead of Geode; fix for loop; add size_t type-cast.
2021-05-18 14:56:03 +02:00
Atahualpa
73949d5bd0
Updating the CMake file isn't a bad idea either...
2021-05-18 14:56:03 +02:00
Atahualpa
6c49074765
Remove old references to Cell class.
2021-05-18 14:56:03 +02:00
Atahualpa
008bf64dd9
Second step toward fixing terrain selection issues.
2021-05-18 14:56:03 +02:00
Atahualpa
18ea4d8eb2
First step toward fixing terrain selection issues.
2021-05-18 14:56:02 +02:00
Bret Curtis
373f8636b7
Merge pull request #3092 from akortunov/master
...
Do not trigger in-game bindings via mouse buttons when controls are disabled
2021-05-18 10:47:45 +02:00
psi29a
ae66afb219
Merge branch 'less_verbose' into 'master'
...
Make the code less verbose.
See merge request OpenMW/openmw!874
2021-05-18 08:30:50 +00:00
psi29a
e9fbd76e9b
Merge branch 'windows_tests' into 'master'
...
Support running tests and benchmarks for windows
See merge request OpenMW/openmw!839
2021-05-18 08:12:22 +00:00
psi29a
4bc7012104
Merge branch 'pack-default-settings' into 'master'
...
Pack default settings
Closes #5925
See merge request OpenMW/openmw!822
2021-05-18 08:11:13 +00:00
elsid
3ef1b27099
Add missing includes
2021-05-18 01:21:42 +02:00
psi29a
f1f1703441
Merge branch 'fix_navmesh_wait' into 'master'
...
Fix redundant waiting until navmesh is generated
See merge request OpenMW/openmw!861
2021-05-17 10:54:23 +00:00
Andrei Kortunov
c11774f278
Do not trigger in-game bindings via mouse buttons when controls are disabled (bug #6047 )
2021-05-17 12:23:56 +04:00
AnyOldName3
c2e4eda825
Merge branch '6013-fix' into 'master'
...
Retain draw callback
Closes #6013 and #5967
See merge request OpenMW/openmw!875
2021-05-16 17:30:38 +00:00
madsbuvi
f3e17e7c52
Don't redundantly call notify on every frame.
2021-05-16 18:09:48 +02:00
Frederic Chardon
62c7adc87b
Merge branch 'no_at_boundaries' into 'master'
...
Don't use at() instead [] when length is checked/known
See merge request OpenMW/openmw!866
2021-05-16 11:58:14 +00:00
Frederic Chardon
38db2f8810
Merge branch 'includes_mwgui' into 'master'
...
Remove some useless includes from apps/openmw/mwgui
See merge request OpenMW/openmw!870
2021-05-16 11:46:13 +00:00
madsbuvi
5b9a2b73b0
Retain final draw callback as a member variable in ScreenshotManager, and do not call setFinalDrawCallback after init.
2021-05-16 13:04:30 +02:00
Frederic Chardon
807c7a2025
Merge branch 'useless_includes_mwmechanics' into 'master'
...
Remove some useless headers in apps/openmw/mwmechanics
See merge request OpenMW/openmw!871
2021-05-16 10:51:43 +00:00
fredzio
5b63019719
Embed actor velocity inside its class. It makes the code simpler.
2021-05-16 12:42:17 +02:00
fredzio
c55db790f3
Make the code less verbose / more readable using for range loop and
...
structured binding.
No functional changes.
2021-05-16 12:42:16 +02:00
Frederic Chardon
730f1fe2a7
Merge branch 'useless_includes_mwphysics' into 'master'
...
Remove some useless includes in apps/openmw/mwphysics
See merge request OpenMW/openmw!872
2021-05-16 10:37:33 +00:00
jvoisin
9373e4ada7
Remove some useless includes in apps/openmw/mwphysics
2021-05-15 23:13:46 +02:00
jvoisin
9522a64e7d
Remove some useless includes from apps/openmw/mwgui
2021-05-15 22:15:46 +02:00
jvoisin
1cd15613a6
Remove some useless headers in apps/openmw/mwmechanics
2021-05-15 22:14:08 +02:00
psi29a
3d61d7ec9a
Merge branch 'optimize_initial_load' into 'master'
...
Optimize engine initial loading time
See merge request OpenMW/openmw!867
2021-05-15 18:48:17 +00:00
Evil Eye
6cb6461cba
Merge branch 'const_ref_it' into 'master'
...
Use const references when possible in for loops
See merge request OpenMW/openmw!869
2021-05-15 18:47:03 +00:00
jvoisin
7deb6a6ffd
Use const references when possible in for loops
...
No need for useless copies.
2021-05-15 19:50:01 +02:00
jvoisin
c1e3869f25
Remove an unused struct
2021-05-15 19:49:15 +02:00
elsid
1e2aae8095
Use stable sort+unique to collect RefIDs for ESMStore records counting
...
The idea is to avoid std::map lookup for each CellRef. Instead generate a
sequence of added and removed RefNums into a vector then order them by RefNum
using a stable sort that preserves relative order of elements with the same
RefNum. RefIDs are stored in a different vector to avoid std::string move ctor
calls when swapping elements while sorting. Reversed iteration over added and
removed RefNums for each unique RefNum is an equivalent to what map-based
algorithm produces. The main benefit from sorting a vector is a data locality
that means less cache misses for each access. Reduces ESMStore::countRecords
perf cycles by 25%.
2021-05-15 18:45:22 +02:00
elsid
9938af2289
Use unordered_map for ref count
...
Reduces ESMStore::countRecords time by 8%.
2021-05-15 18:45:22 +02:00
elsid
6248dc72cb
Convert to lower case only when needed
2021-05-15 18:45:21 +02:00
elsid
f2188d2533
Reduce temporary allocations on ESM loading
...
By moving objects instead of copying when possible.
2021-05-15 18:45:21 +02:00
Bret Curtis
8a315b01ae
Merge pull request #3089 from xyzz/fix-journalbooks-ub
...
Fix out-of-bounds access in JournalBooks::createCyrillicJournalIndex
2021-05-15 17:25:47 +02:00
Ilya Zhuravlev
13f060623f
Fix out-of-bounds access in JournalBooks::createCyrillicJournalIndex
2021-05-15 10:45:39 -04:00
jvoisin
690d85d0e9
Don't use at() instead [] when length is checked/known
2021-05-15 15:38:17 +02:00
Andrei Kortunov
b63f53f5bb
Disable shield animation when we launch a torch one (bug #6043 )
2021-05-15 11:31:08 +04:00
AnyOldName3
5d83de189a
Merge branch 'insert_or_assign' into 'master'
...
Use insert_or_assign() instead of hand rolled version.
See merge request OpenMW/openmw!862
2021-05-14 22:57:07 +00:00
fredzio
fb344d27e0
Use insert_or_assign() instead of hand rolled version.
2021-05-14 23:38:39 +02:00
elsid
59f89d22f8
Apply min distance only for not present tiles
...
To avoid waiting when navmesh update is triggered by transformed object for
already present tiles.
2021-05-14 22:41:11 +02:00
Bret Curtis
66a527c3de
Merge pull request #3075 from akortunov/warnfix
...
Fix MSVC's C4244 and C4267 warnings
2021-05-14 21:28:56 +02:00
psi29a
3944648f0b
Merge branch 'opencs_remove_inclde' into 'master'
...
Remove some superfluous includes in the opencs
See merge request OpenMW/openmw!829
2021-05-14 13:33:06 +00:00
jvoisin
06ae26037f
Remove some superfluous includes in the opencs
2021-05-14 10:57:31 +02:00
CedricMocquillon
1d362029ce
Do not copy full dialogue as we only want ot return its id
2021-05-13 23:02:26 +02:00
CedricMocquillon
ccaa581f39
According to the comment, an interior cell must have (0,0) but as there is an exterior cell
...
with these coordinates it is not sufficient but it is necessary so I added it
2021-05-13 22:29:52 +02:00
CedricMocquillon
f81be5b463
Replace land static container from vector to flat_set
...
I use a ordered container to fix the "is there any other way to speed this up?".
The flat_set allow to have the same locality when searching an element.
I use the is_transparent C++14 feature to avoid to create a dummy Land when searching
I use a unique_ptr to avoid to manualy manage the memory
2021-05-13 20:13:53 +02:00
psi29a
6a5a9fbde4
Merge branch 'static-access' into 'master'
...
[Launcher] Replacing static method access through instances
See merge request OpenMW/openmw!834
2021-05-13 17:06:44 +00:00
psi29a
fd89582e0c
Merge branch 'navmesh_wait' into 'master'
...
Wait until navmesh is generated within given distance around player (#5500 )
Closes #5500
See merge request OpenMW/openmw!819
2021-05-13 16:56:39 +00:00
Andrei Kortunov
963e1b8b3f
Fix MSVC's C4244 warnings
2021-05-12 10:34:40 +04:00
Andrei Kortunov
f9d42ed396
Fix MSVC's C4267 warnings
2021-05-12 10:34:39 +04:00
Andrei Kortunov
49a744b65a
Make groundcover to use rendering distance in units instead of cells
2021-05-12 09:29:25 +04:00
elsid
4d7e5245a3
Support benchmarks for windows
...
Don't run the binary because gitlab can't execute it successfully due to
unknown reason.
2021-05-11 13:16:59 +02:00
psi29a
f7b8c817f8
Merge branch 'performance-faster-string-find' into 'master'
...
Fixing performance-faster-string-find issues
See merge request OpenMW/openmw!842
2021-05-11 08:42:01 +00:00
Thunderforge
339d347aea
Fixing performance-faster-string-find issues
...
This addresses the Clang Tidy check [performance-faster-string-find](https://clang.llvm.org/extra/clang-tidy/checks/performance-faster-string-find.html ).
2021-05-10 22:44:07 -05:00
Bret Curtis
08059247b8
Merge pull request #3081 from akortunov/master
...
Skip hidden nodes for ObjectPaging
2021-05-10 09:19:47 +02:00
psi29a
13fd0e11ff
Merge branch 'no_time_to_talk' into 'master'
...
Don't stop and turn to the player while sneaking or jumping
Closes #6016
See merge request OpenMW/openmw!838
2021-05-10 06:51:49 +00:00
AnyOldName3
09f39b29f0
Load defaults.bin instead of settings-default.cfg. Do not decode yet.
2021-05-09 21:14:06 +01:00
AnyOldName3
92325976e9
Update documentation to refer to defaults.bin
2021-05-09 21:13:34 +01:00
AnyOldName3
0d737a3501
Create defaults.bin at configure time
2021-05-09 21:00:49 +01:00
Evil Eye
c5aa3d4f77
Don't stop and turn to the player while sneaking or jumping
2021-05-09 19:55:27 +02:00
Evil Eye
ffd84502f9
Remove unimplemented method declaration
2021-05-09 19:07:15 +02:00
Andrei Kortunov
132fedf290
Analyze only used LOD levels in ObjectPaging
2021-05-09 15:43:13 +04:00
Andrei Kortunov
a939cb6692
Skip hidden nodes for ObjectPaging
2021-05-09 14:10:35 +04:00
Thunderforge
ead51784dc
[Launcher] Replacing static method access through instances
...
This addresses the Clang Tidy check [readability-static-accessed-through-instance](https://clang.llvm.org/extra/clang-tidy/checks/readability-static-accessed-through-instance.html ). It also simplifies the code by reducing the number of parameters we're passing around.
2021-05-08 23:28:29 -05:00
Frederic Chardon
caf382c19f
Merge branch 'barrier' into 'master'
...
Do not store callback inside Misc::Barrier
See merge request OpenMW/openmw!821
2021-05-07 22:21:44 +00:00
psi29a
08e1a8e0fb
Merge branch 'esm_opti' into 'master'
...
Teensy optimisation for esmtool
See merge request OpenMW/openmw!826
2021-05-07 14:21:37 +00:00
psi29a
9b017ef04d
Merge branch 'internal_includes_openmw' into 'master'
...
Clean up some internal includes of the openmw component
See merge request OpenMW/openmw!796
2021-05-07 10:53:25 +00:00
Andrei Kortunov
a0582caa26
Fix uninitialized variable
2021-05-07 10:41:14 +04:00
jvoisin
e97e4d07dd
Teensy optimisation for esmtool
...
- Use an unordered_set instead of a list to
keep track of skipped records.
- Reduce the number of conditions when parsing 4-letters
records by using a switch-case instead of cascading conditions.
- Add a const
2021-05-06 22:41:20 +02:00
elsid
00de80c884
Merge branch 'deadcode' into 'master'
...
GC some unused code, simplify some other
See merge request OpenMW/openmw!820
2021-05-06 11:03:14 +00:00
fredzio
e99b61d362
Simplify the code
2021-05-06 06:15:00 +02:00
elsid
626e032931
Do not store callback inside Misc::Barrier
...
The only wait method can be provided with it so pass it as a template
parameter there.
2021-05-05 23:42:47 +02:00
fredzio
00de540a31
Remove unused function.
2021-05-05 20:27:22 +02:00
elsid
7a51d0db18
Wait until navmesh is generated within given distance around player
...
Add a setting to change this distance.
To prevent situations when there is not enough navmesh generated and actors
can't find path correctly.
2021-05-05 19:44:16 +02:00
elsid
f169f8e6f0
Wait until navmesh is generated for interior cells
...
Add special loading progress bar.
It should be fast enough to not keep loading screen for noticably long but
will provide better pathfinding for actors inside interior cells.
2021-05-05 19:27:49 +02:00
psi29a
b8128d09f9
Merge branch 'enchanted-item-selected-fix' into 'master'
...
Fix for enchanted items being removed on item equip cycling when they are re-equipped
See merge request OpenMW/openmw!714
2021-05-05 07:27:00 +00:00
psi29a
9eb876cc17
Merge branch 'read_me' into 'master'
...
Allow activation of inventory items
Closes #5991
See merge request OpenMW/openmw!788
2021-05-04 22:53:45 +00:00
psi29a
6ac4dfbeb7
Merge branch '9001st_time_the_charm' into 'master'
...
Rework again scripted movements
See merge request OpenMW/openmw!799
2021-05-04 22:52:37 +00:00
psi29a
15f6932aaa
Merge branch 'openmwizzrd_include' into 'master'
...
Remove some useless includes from the wizzard
See merge request OpenMW/openmw!767
2021-05-04 22:25:26 +00:00
psi29a
6513c38875
Merge branch 'clean_navigator' into 'master'
...
Remove redundant and useless code from navigator
See merge request OpenMW/openmw!815
2021-05-04 21:57:16 +00:00
psi29a
b10a817f7e
Merge branch 'useuless_launcher' into 'master'
...
Remove some useless includes from the launcher
See merge request OpenMW/openmw!775
(cherry picked from commit a84bd643b334eb6ac715681c497184ac22212ced)
d3fff8cf Remove some useless includes from the launcher
2021-05-04 21:09:39 +00:00
elsid
ec87b3f8f7
Remove redundant ChunkyTriMesh
...
This AABB tree required when need to filter out input mesh that has not
influence navmesh tile output. This filtering is already done before. Each
recast mesh corresponds to a single navmesh tile and has appropriate bounds.
2021-05-04 13:00:06 +02:00
jvoisin
d45184a730
Sprinkle some const-ref to avoid unnecessary copies
2021-05-02 14:43:46 +02:00
Chris Djali
f0cef87cd8
Merge pull request #3069 from akortunov/msvc_warnings
...
Rework warnings settings
2021-05-01 19:03:43 +01:00
fredzio
4fa0972b2d
Tone down actor's skip simulation flag to an optional skip collision
...
detection flag.
2021-05-01 14:22:30 +02:00
Evil Eye
bd45449f9d
Allow activation of inventory items
2021-05-01 14:07:29 +02:00
jvoisin
998cc97a4f
And done!
2021-04-30 20:49:22 +02:00
jvoisin
be371ccd9f
An another pass
2021-04-30 20:27:33 +02:00
jvoisin
ee2446d5c4
Trim even more
2021-04-30 20:11:41 +02:00
jvoisin
04edb1c817
Trim down some internal includes
2021-04-30 19:39:26 +02:00
psi29a
16bb3919d1
Merge branch 'navmesh_cache_simplification' into 'master'
...
Simplify navmesh cache
See merge request OpenMW/openmw!691
2021-04-28 08:01:06 +00:00
Alexei Dobrohotov
e3bb45fd61
Merge branch 'minor_aicombat' into 'master'
...
Minor optimization in aicombat.cpp
See merge request OpenMW/openmw!737
(cherry picked from commit f1d19035cccfff2523faad0d4e4d96cd3ddae2e6)
bbbfc520 Minor optimization in aicombat.cpp
237b34a6 Fix style
a14911cb Fix indentation
2021-04-26 07:10:41 +00:00
jvoisin
4c96644f8d
Use a char instead of a string in find() where possible
...
This was done via PVS Studio ( https://pvs-studio.com ),
and should provide a super-duper-marginal performance boost \o/
2021-04-25 19:57:09 +02:00
elsid
e1d955d92b
Remove noexcept specifier from CreatureCustomData move ctor
...
C++17 doesn't allow to declare defaulted move ctor with not matching
exception specification to the calculated one:
/Users/eddie/Downloads/BUILD/openmw-master/apps/openmw/mwclass/creature.cpp:63:9: error:
exception specification of explicitly defaulted move constructor does not
match the calculated one
CreatureCustomData(CreatureCustomData&& other) noexcept = default;
^
http://wg21.link/p1286r2 makes this possible in C++20 and newer compilers
already have it working even with -std=c++17 but older onces give an error.
2021-04-24 00:32:22 +02:00
elsid
ca7add0624
Add move constructor to MWMechanics::Spells
2021-04-24 00:32:22 +02:00
elsid
46e34c500c
Use algorithms to add/remove listener to SpellList
2021-04-24 00:32:07 +02:00
Andrei Kortunov
6d351b2bdd
Fix MSVC 4706 warnings
2021-04-23 22:53:59 +04:00
Simon Meulenbeek
cd419256ad
don't forget to close the audio device after you're done with it.
2021-04-22 18:42:56 +00:00
jvoisin
fb55207328
Remove some useless includes from the wizzard
2021-04-21 19:08:06 +02:00
Andrei Kortunov
faad18b7f9
Merge pull request #3072 from akortunov/warnfix
...
Fix node masks signed/unsigned mismatch
2021-04-21 09:26:06 +04:00
Andrei Kortunov
b7b85bb713
Disable controllers for found sheath meshes (bug #5975 )
2021-04-20 16:01:01 +04:00
Andrei Kortunov
2d869ca9ff
Fix node masks signed/unsigned mismatch
2021-04-20 10:52:51 +04:00
Bret Curtis
50d6cd2a34
Merge pull request #3070 from akortunov/coverity
...
Fix an another portion of Coverity warnings
2021-04-20 07:33:03 +02:00
Andrei Kortunov
d10399e083
Cast double constant to float explicitely
2021-04-19 17:08:03 +04:00
Andrei Kortunov
7d5c5f8a24
Do not assign negative values to unsigned variables
2021-04-19 16:08:19 +04:00
Andrei Kortunov
651ad11ad8
Do not leave variables without initialization, even in execution paths where they are unused
2021-04-19 16:08:10 +04:00
Andrei Kortunov
9647b670e4
Do not declare unused variables
2021-04-19 15:43:00 +04:00
Andrei Kortunov
0cadc97fb3
Fix double -> float conversions
2021-04-19 15:36:58 +04:00
Bret Curtis
befa3f587f
Merge pull request #3068 from akortunov/master
...
Clean up MSVC warnings
2021-04-19 09:27:17 +02:00
psi29a
b645c1f4c0
Merge branch 'navmesh_ignore' into 'master'
...
Do not trigger NavMesh update when RecastMesh update should not change NavMesh (#4917 )
See merge request OpenMW/openmw!762
2021-04-18 21:53:43 +00:00
psi29a
f3354c509e
Merge branch 'stomp' into 'master'
...
Adjustable Stomp
See merge request OpenMW/openmw!575
2021-04-18 21:35:37 +00:00
elsid
3e67f5ffa5
Detect and ignore updates for oscillating objects
...
To avoid triggering NavMesh update when RecastMesh change should not change
NavMesh.
Based on the following assumption:
Given a set of transformations and a bounding shape for all these
tranformations, a new object transformation that does not change this
bounding shape also should not change navmesh if for all of this object
transformations resulting navmesh tiles are equivalent
The idea is to report back to RecastMeshManager all changes of NavMesh if there
are any assiciated with RecastMesh version. So we know the last time when
RecastMesh change resulted into the NavMesh change. When later report shows
that there was no NavMesh change for a new RecastMesh version we can assume
that any object transformation within the same bounding box should not change
NavMesh.
2021-04-18 23:00:13 +02:00
AnyOldName3
ce3ed28403
Control stomping via settings.
2021-04-18 21:44:23 +01:00
psi29a
3423d3f882
Merge branch 'various_warn' into 'master'
...
Fix various warnings found by clang
See merge request OpenMW/openmw!758
2021-04-18 20:04:20 +00:00
Alexei Dobrohotov
b29e797b27
Merge branch 'seventh_time_is_the_charm' into 'master'
...
Unbreak again NPC teleport
See merge request OpenMW/openmw!760
2021-04-18 16:36:11 +00:00
Petr Mikheev
5fe10e8e7f
Merge branch 'fix-headtracking' into 'master'
...
Fix headtracking while invisible
See merge request OpenMW/openmw!743
2021-04-18 10:54:57 +00:00
Jacob Turnbull
f49b9e3806
Fix headtracking while invisible
2021-04-18 10:54:56 +00:00
fredzio
36bb2d5f15
An actor needs not be in active cell. As such we can't use
...
PhysicsSystem::getActor() to determine that a ptr is not actor.
2021-04-18 08:45:43 +02:00
Andrei Kortunov
987b231fdd
Fix an another portion of Coverity warnings
2021-04-18 07:09:44 +04:00
psi29a
50db75bd13
Merge branch 'settingstocs_csmprefs' into 'master'
...
Dehardcode animations in OpenMW-CS (CSMPrefs method)
See merge request OpenMW/openmw!742
2021-04-17 20:00:07 +00:00
jvoisin
38316cdaf8
Fix various warnings found by clang
...
- unused alias
- inefficient use of push_back
- exceptions not inheriting from std::exception
- weird use of a comma
- value compared against itself
2021-04-17 19:06:33 +02:00
Andrei Kortunov
f308dde254
Clean up MSVC warnings
2021-04-17 12:14:50 +04:00
Andrei Kortunov
57b501ad13
Merge pull request #3067 from akortunov/master
...
Limit pointers cache size to avoid possible bad_alloc errors
2021-04-17 10:31:47 +04:00
unelsson
06fda4c5a1
QLineEdit for setting base animation files
2021-04-16 23:12:14 +03:00
unelsson
95272e0f14
String setting to CSMPrefs, part of dehardcoding animation files
2021-04-16 23:12:14 +03:00
psi29a
d0883f9a0d
Merge branch 'light_settings_tweak' into 'master'
...
Lighting patch
Closes #5957 and #5959
See merge request OpenMW/openmw!752
2021-04-16 19:47:26 +00:00
glassmancody.info
16856d45c5
Lighting Patch
...
Fixes build errors with older OSG builds and some issues with 'shared' layout.
Bring back ambient in inventory through lightmodel instead of sun ambient, mirrors scene ambient/sunlight relationship.
Forces shaders when certain lighting methods are enabled and finalize settings.
Correctly override sun for localmap.
2021-04-16 11:55:40 -07:00
fredzio
f137b7341f
Another fallout from MR 722: objects were treated like actors by
...
accident. Net effect was that calls to Move/MoveWorld didn't update
position of collision object.
2021-04-16 16:12:31 +02:00
Andrei Kortunov
5de72c94ab
Limit pointers cache size to avoid possible bad_alloc errors
2021-04-16 08:10:31 +04:00
psi29a
af8bc7d120
Merge branch 'fixagainsetposforgoodthistimeitwillnotbreakanything' into 'master'
...
Fix #5961 : Follow up MR 722: do not apply mPositionOffset twice when we teleport.
Closes #5961
See merge request OpenMW/openmw!744
2021-04-15 22:09:44 +00:00
fredzio
e31cf7e6ac
Follow up MR 722: do not apply mPositionOffset twice when we teleport.
...
Previous MR change the meaning of mPositionOffset: it is now just a log
of relative movement that were already applied to allow the physics
simulation to catch up, instead of changes that needs to be applied. As
such, after a teleport we need to reset it. Also, since mWorldPosition
is already with the offset we should not update its value in
applyPositionOffset().
2021-04-15 22:32:42 +02:00
Andrei Kortunov
33b8233887
Validate GUI scaling and place it to the launcher
2021-04-15 15:18:32 +04:00
Andrei Kortunov
db1428de18
Move container unresolving to the separate method
2021-04-14 23:03:35 +04:00
Bret Curtis
4f72fa2615
Merge pull request #3063 from akortunov/master
...
Code cleanup, part 2
2021-04-14 10:03:07 +02:00
fredzio
9d8fcec642
Remove bogus warning. It is a normal situation for projectiles to be
...
in-flight after the caster is gone.
2021-04-14 09:01:37 +02:00
Andrei Kortunov
016a1d45df
Remove outdated field - remnant from earlier implementation
2021-04-14 10:58:44 +04:00
Andrei Kortunov
388573cf60
Fix uninitialized fields in the essimporter
2021-04-14 08:07:08 +04:00
elsid
0fae6d9a0a
Add walk and swim flags when corresponding speed is positive
...
This allows to avoid finding path over area that will should have infinite
cost (area_cost = area_cost_factor / area_speed).
2021-04-13 23:27:18 +02:00
elsid
3c4a9069ae
Do not use infinite area cost
...
Division by zero causes float value to be infinite. When infinite cost is
multiplied by zero distance the result is NaN. After this pathfinding algorithm
state is broken.
2021-04-13 23:27:18 +02:00
psi29a
f1cfdafd4d
Merge branch 'why_are_the_christmas_lights_still_up' into 'master'
...
Remove 8 light limit and add configurable lighting enhancements
See merge request OpenMW/openmw!618
2021-04-13 19:15:08 +00:00
glassmancody.info
531a6e1979
Code review fixes, remove implicit GLSL casts
2021-04-13 11:09:54 -07:00
glassmancody.info
582f7b52cf
Merge remote-tracking branch 'upstream/master' into why_are_the_christmas_lights_still_up
2021-04-13 11:09:52 -07:00
glassmancody.info
9e80091aff
clear up force shaders and make it less convoluted
2021-04-13 11:09:49 -07:00
glassmancody.info
b7adb9d088
use true default settings
2021-04-13 11:09:49 -07:00
glassmancody.info
d4e7d25d14
Make life not suck for whoever wants to edit lighting shaders
2021-04-13 11:09:49 -07:00
glassmancody.info
16f80ec6f3
Update settings when using fallback
2021-04-13 11:09:49 -07:00
glassmancody.info
4ba473b684
Finalize settings, torch fix
2021-04-13 11:09:49 -07:00
glassmancody.info
71c30a31df
in-game settings, some require restart
2021-04-13 11:09:49 -07:00
glassmancody.info
3d713e8602
Fix incorrect minimum ambient
2021-04-13 11:09:49 -07:00
glassmancody.info
280fd2b162
Merge remote-tracking branch 'upstream/master' into why_are_the_christmas_lights_still_up
2021-04-13 11:09:35 -07:00
glassmancody.info
cc31e1eea1
Ambient luminance threshold setting
2021-04-13 11:09:35 -07:00
glassmancody.info
690995988b
More formatting, OpenCS cells are unbroken
2021-04-13 11:09:35 -07:00
glassmancody.info
142c6d2993
Enable groundcover lighting for non FFP
2021-04-13 11:09:35 -07:00
glassmancody.info
328ec85757
Code review cleanup, add setting documentation
2021-04-13 11:09:35 -07:00
glassmancody.info
7370acdf54
Merge remote-tracking branch 'upstream/master' into why_are_the_christmas_lights_still_up
2021-04-13 11:09:19 -07:00
glassmancody.info
43ac32921c
Rewrite, support different lighting methods
2021-04-13 11:09:19 -07:00
glassmancody.info
9d9074c244
Add shared UBO
2021-04-13 11:07:48 -07:00
glassmancody.info
c5ea966f24
Merge remote-tracking branch 'upstream/master' into why_are_the_christmas_lights_still_up
2021-04-13 11:06:16 -07:00
glassmancody.info
dda735c54a
initial commit
2021-04-13 11:06:16 -07:00
psi29a
0a6ef9c1bd
Merge branch 'swim_when_follow' into 'master'
...
Allow actors to find path over water surface (#5943 )
See merge request OpenMW/openmw!731
2021-04-13 07:19:54 +00:00
Evil Eye
56ede535b5
Don't perform a hit test outside the page's bounds
2021-04-12 08:31:45 +02:00
psi29a
0818a10df2
Merge branch 'baby_dont_throw_me_no_more' into 'master'
...
Catch exceptions in ResolutionListener
Closes #5946
See merge request OpenMW/openmw!727
2021-04-12 06:12:19 +00:00
elsid
28fc21792e
Allow water walking actors to find path over water surface
2021-04-11 21:59:28 +02:00
elsid
634556be9d
Add setting to allow following creatures to find path over water surface
2021-04-11 21:59:28 +02:00
fredzio
32981bcd88
Constify a few things
2021-04-11 14:46:51 +02:00
fredzio
efb241f1de
Use override instead of virtual
2021-04-11 14:46:51 +02:00
fredzio
fda639eb57
Remove unused forward declarations
2021-04-11 14:46:51 +02:00
Evil Eye
b91be1e803
Catch exceptions in ResolutionListener
2021-04-11 14:12:31 +02:00
psi29a
301411c5c5
Merge branch 'esm_variant' into 'master'
...
Use std::variant for ESM::Variant implementation
See merge request OpenMW/openmw!719
2021-04-10 12:53:11 +00:00
psi29a
603e4206fd
Merge branch 'teleport_here_not_there' into 'master'
...
Fix #5919 (and another bug)
Closes #5919
See merge request OpenMW/openmw!722
2021-04-10 12:51:42 +00:00
Andrei Kortunov
f984e96b34
Use conventional names for atan2 arguments
2021-04-10 12:23:03 +04:00
Andrei Kortunov
1db369f418
Do not use unchecked value in calculations
2021-04-10 11:26:54 +04:00
Andrei Kortunov
903b89a0ff
Add bound for UI scale factor, as it specified in docs
2021-04-10 11:21:53 +04:00
Andrei Kortunov
c989fac67b
Add bound for pointers cache size, as it specified in docs
2021-04-10 11:20:12 +04:00
Andrei Kortunov
124a33d8a3
Fix uninitialized variables
2021-04-10 10:58:00 +04:00
Andrei Kortunov
b96929f3fc
Avoid division by zero
2021-04-10 09:52:46 +04:00
fredzio
8874a5be22
Change (again) the way SetPos behave.
...
Instead of registering the desired change of position and rely on
physics simulation to apply it to the world, immediately change the
position in the world without reset the simulation.
2021-04-09 23:34:03 +02:00
fredzio
6e1c67a9ae
Account for waterwalking when updating position. Otherwise we might
...
trace down the actor at waterlevel at the wrong coordinate.
Triggered by multimark mod with waterwalking effect.
2021-04-09 23:33:21 +02:00
psi29a
484c46cb58
Merge branch 'hrtf-setting' into 'master'
...
Add Audio settings to openmw-launcher
See merge request OpenMW/openmw!692
2021-04-09 19:28:08 +00:00
Simon Meulenbeek
75b4871bab
Add Audio settings to openmw-launcher
2021-04-09 19:28:08 +00:00
Jonas Tobias Hopusch
799cf16f31
Attempt to fix #5942
...
Closes OpenMW/openmw#5942
This is an attempt to apply the fix suggested by @Capostrophic
2021-04-09 18:16:05 +02:00
psi29a
fe2a97ee39
Merge branch 'wizard-link' into 'master'
...
Implement #3983 - Add page to the wizard with links to buy morrowind
Closes #3983
See merge request OpenMW/openmw!693
2021-04-08 20:57:50 +00:00
tess
6f7e8d9f59
Implement #3983 - Add page to the wizard with links to buy morrowind
2021-04-08 20:57:50 +00:00
psi29a
4f86eddc96
Merge branch 'CreateBsaAddFileToBsa' into 'master'
...
Create BSA, add file to existing BSA
See merge request OpenMW/openmw!718
2021-04-08 20:00:15 +00:00
elsid
8e1c92d9af
Use std::variant for ESM::Variant implementation
2021-04-08 19:39:31 +02:00
elsid
7f577f5f08
Do not compare hash in tests
...
Different std libraries have different implementation that produce different
results for the same values.
2021-04-08 19:39:30 +02:00
psi29a
a16387df61
Merge branch 'sky-dehardcode' into 'master'
...
De-hardcode references to mesh files used by the sky.
See merge request OpenMW/openmw!704
2021-04-08 16:32:39 +00:00
Matjaž Lamut
2cb4b62b83
De-hardcode references to mesh files used by the sky.
2021-04-08 16:32:38 +00:00
CedricMocquillon
d617d66a87
Add file to BSA
2021-04-08 18:08:28 +02:00
psi29a
8cb3681c12
Merge branch 'esm_variant_tests' into 'master'
...
Add tests for ESM::Variant
See merge request OpenMW/openmw!712
2021-04-08 13:32:07 +00:00
Jacob Turnbull
d9376ee08e
Trim down comment and change flag name
2021-04-07 16:57:06 -05:00
Evil Eye
44f2cb0923
Fix targeted scripts losing their targets when rearranging your load order
2021-04-07 17:30:21 +02:00
Andrei Kortunov
59720aea9a
Restore old aiming for melee combat
2021-04-07 12:07:03 +04:00
Jacob Turnbull
bc8db8b8f5
Fix for enchanted items being removed on item equip cycling when they are re-equipped
2021-04-06 20:12:51 -05:00
psi29a
9aa5aef2c6
Merge branch 'my_other_mr_is_larger' into 'master'
...
Make AddItem's quantity overflow on negative numbers
Closes #5934
See merge request OpenMW/openmw!713
2021-04-05 11:45:31 +00:00
elsid
bd33fa76b6
Use CRTP to define CustomData clone function
2021-04-05 11:53:07 +02:00
elsid
e380470558
Add move ctor and assignment operator to RefData
2021-04-05 11:53:07 +02:00
elsid
045bb7cbd7
Store CustomData and ContainerStore as unique_ptr
2021-04-05 11:52:52 +02:00
Evil Eye
ecde3932e2
Make AddItem's quantity overflow on negative numbers
2021-04-05 09:43:37 +02:00
elsid
dae3f022ba
Add tests for ESM::Variant
2021-04-04 23:09:50 +02:00
fredzio
9cae7882dd
Fix a bug that was triggered with multi mark mod.
...
When a script calls SetPos for x,y,z in sequence on an actor, we need to make sure
that the actor will not spawn under ground at x,y coordinates.
Now that change of coordinates are cumulated and applied all at once, we
need to account for the whole offset.
To this end move the terrain height check inside of Actor class.
2021-03-31 19:34:06 +02:00
fredzio
0fac172413
Remove wrong line that slipped in yesterday.
2021-03-29 21:46:08 +02:00
Andrei Kortunov
50352daf90
Rework knockdown and knockout animations fallbacks
2021-03-29 14:45:07 +04:00
Evil Eye
582f1503c1
Merge branch 'setpos' into 'master'
...
Unbreak SetPos and the mods using it (#5919 )
See merge request OpenMW/openmw!696
2021-03-28 20:14:17 +00:00
fredzio
7a67492d81
Unbreak SetPos and the mods using it.
...
To make SetPos works with async physics, it was modified to register a
position offset that would be applied to the real position during the
simulation.
A common pattern to teleport NPC in scripts is a sequence of SetPos/Disable/Enable in the same frame.
Since Disable/Enable creates a new physics actor using last known
RefData::Position, the registered offset never get a chance to be applied.
Modify disable() to call moveObject with the offset applied, so that the newly created physics actor will have up-to-date position
2021-03-28 21:19:14 +02:00
fredzio
b58244ac26
Guard the Bullet drawing method with a read lock on the
...
btCollisionWorld. It closes a race on the collision shapes coordinates.
2021-03-26 23:49:31 +01:00
fredzio
dbd6e3bfee
Replace pointless usage of shared_ptr by unique_ptr / non-owning raw
...
pointer for btCollisionWorld.
2021-03-26 23:49:31 +01:00
fredzio
ccd3cbc69a
Use saved actor position instead of reading again RefData in unstuck. It
...
is a race condition to do so.
2021-03-26 23:49:31 +01:00
Andrei Kortunov
5fce5b12f4
Merge branch 'drop_the_bird' into 'master'
...
Disallow inserting containers, creatures, and npcs from the save game not present in content files
Closes #5884
See merge request OpenMW/openmw!683
2021-03-26 15:48:17 +00:00
Andrei Kortunov
b61337643e
Merge branch 'issue-5680' into 'master'
...
change aim calculation
See merge request OpenMW/openmw!685
2021-03-26 11:43:20 +00:00
elsid
f2ebad5115
Return cached element when set existing
2021-03-25 19:28:41 +01:00
elsid
b9a40bc5fc
Add NavMeshTilesCache benchmarks
2021-03-25 19:28:41 +01:00
Max
2cd96e56d5
create constant and use constant in other parts of the code base
2021-03-24 14:54:46 -07:00
Max
e56efdd562
change aim calculation
2021-03-24 14:54:46 -07:00
elsid
453e94ea9f
Use half extents for destination distance tolerance in AiEscort
...
For actors moving in water destination may be located at such z coordinate
that they can't reach.
2021-03-24 00:07:28 +01:00
elsid
f32e1790bc
Add half extents to AiEscord max distance
...
For actors with big bounding box given constants may not work properly like
it's not possible to get close enough to actor from a given angle to make it
move.
2021-03-23 23:49:57 +01:00
elsid
39c0ce9ddf
Build limited path for far destinations
...
When distance between start and end point is greater than max radius of area
possibly covered by navmesh there is no way to find path via navmesh. Also if
distance is greater than cell size navmesh might not exists withing mentioned
area because cell is not loaded therefore navmesh is not generated. So minumum
of these values is used to limit max path distance. Assuming that path
actually exists it's possible to build path to the edge of a circle. When
actor reaches initial edge path is built further. However it will not be
optimal.
2021-03-23 23:23:12 +01:00
Evil Eye
cf5a93d712
Also run NPC validation for modified base records
2021-03-23 21:07:57 +01:00
Evil Eye
e79036f4e0
Don't erase the player
2021-03-23 20:43:52 +01:00
psi29a
1af50b7e23
Merge branch 'sound_cleanup' into 'master'
...
Sound cleanup
See merge request OpenMW/openmw!567
2021-03-22 21:42:01 +00:00
psi29a
415591b7ed
Merge branch 'ai_reaction_deviation' into 'master'
...
Distribute AI reactions and engage combat calls over time
See merge request OpenMW/openmw!674
2021-03-22 21:37:09 +00:00
Evil Eye
5e1960a76a
Disallow inserting containers, creatures, and npcs from the save game not present in content files
2021-03-22 22:29:10 +01:00
Evil Eye
8e9bd5c0bd
Don't throw an exception when equipping a bound item fails
2021-03-22 20:44:13 +01:00
Evil Eye
580fa78034
Don't purge summon effects with invalid creature ids
2021-03-22 20:43:34 +01:00
wareya
63f01d8c5f
Prevent physics death spiral by falling back to true delta time when needed
2021-03-21 20:45:46 +00:00
psi29a
86bd173d69
Merge branch 'refactoring' into 'master'
...
"static const" -> "static constexpr" in headers
See merge request OpenMW/openmw!676
2021-03-21 15:43:47 +00:00
Petr Mikheev
7bbbe40abe
"static const" -> "static constexpr" in headers
2021-03-21 13:57:54 +01:00
wareya
e722c99e62
forgot to initialize these variables
2021-03-21 08:57:15 -04:00
wareya
40265bf118
make unstucking slightly smarter (can turn itself off, also acts like flat ground)
2021-03-20 21:14:56 -04:00
elsid
62c0ecbbd0
Separate engage combat timer for each actor
...
Use DeviatingPeriodicTimer to distribute calls over time. This reduces
stuttering and make AI more natural.
2021-03-20 14:50:56 +01:00
elsid
675c0ab72f
Apply uniform random deviation to AI reaction timer
...
This allows to distribute AI reaction calls over time.
Before this change actors appearing at the same frame will react in the same
frame over and over because AI reaction period is constant. It creates a
non-uniform CPU usage over frames. If a single frame has too many AI reactions
it may cause stuttering when there are too many actors on a scene for current
system.
Another concern is a synchronization of actions between creatures and NPC.
They start to go or hit at the same frame that is unnatural.
2021-03-20 14:47:54 +01:00
Andrei Kortunov
54daa234bd
Reset watched stats upon reload or new game start
2021-03-19 11:56:14 +04:00
wareya
1471ef003a
fix async physics interpolation
2021-03-18 13:53:00 -04:00
AnyOldName3
162b25c180
Fix sunglare on Mesa
...
The sunglare works by comparing an occlusion query with depth testing on
against one with depth testing off to determine if there's anything
closer to the camera than the maximum depth buffer value. For the depth-
tested query, the depth range is set from 1 to 1 so it's always drawn at
the maximum distance. Originally, we had the depth function set to LESS,
meaning that the query would always fail as 1 is not less than 1, but
also glPolygonOffset was used to move the query by "the smallest value
that is guaranteed to produce a resolvable offset for a given
implementation" closer to the camera. While other driver and hardware
combinations do that, Mesa seems to be clamping to the depth range, so
still failing.
Instead, it's simpler to just get rid of the polygon offset and change
the depth test to LEQUAL as 1 *is* less than or equal to 1, but not than
any other possible depth buffer value.
2021-03-17 01:46:04 +00:00
Evil Eye
d1e8c6b223
Merge branch 'magical_rat' into 'master'
...
Register copied Spells with SpellList
See merge request OpenMW/openmw!662
2021-03-16 19:50:15 +00:00
AnyOldName3
ba74fbf30e
Fix MyGUI log
...
Also actually print an error to the regular log when the MyGUI log can't
be opened so we notice if we kill it again in under five years.
2021-03-15 22:35:13 +00:00
Bret Curtis
40c989d732
allman style
2021-03-14 22:11:18 +01:00
Evil Eye
c2580d60e9
Register copied Spells with SpellList
2021-03-14 19:32:03 +01:00
Bret Curtis
9fc0649fb6
a better check to avoid the mCell assertion, so compariing nullptr to current cell will refurn false anyway
2021-03-14 18:08:52 +01:00
Bret Curtis
49545e6d29
add comments as to why we need to check that the player is grounded or not; only run once during initial cell loading
2021-03-14 18:02:48 +01:00
Bret Curtis
fff1df9ee4
revert some blank lines
2021-03-14 18:02:48 +01:00
Bret Curtis
c067782814
proper fix that traces down the player when a cell is loaded; we also only run once if the current cell being loaded is the one that the player is in.
2021-03-14 18:02:48 +01:00
Bret Curtis
1479f98793
hacky solution with debug; seems that player is added before cell so tracing down will not find anything
2021-03-14 18:02:48 +01:00
Bret Curtis
19ad7d7f0c
Resolve #5895 by setting the initial mOnGround state to false; we do this because the movement solver runs one frame behind so when we run through the loop the first time we assume we are on the ground even though we may be 400 units in the air.
2021-03-14 18:02:48 +01:00
psi29a
514a55ed4c
Merge branch 'fix_5846' into 'master'
...
Fix #5846 (headtracking)
Closes #5846
See merge request OpenMW/openmw!652
2021-03-14 01:56:07 +00:00
glassmancody.info
6255b0492b
Resolve crashes on exit with visible MyGUI widgets
2021-03-13 15:43:46 -08:00
Petr Mikheev
447c3b9489
Fix 5846
2021-03-13 21:54:49 +01:00
elsid
9275dd2dcb
Avoid virtual dispatch in SoundManager dtor
2021-03-13 18:25:56 +01:00
elsid
b0311ce9f1
Remove DEFAULT_OUTPUT macros
2021-03-13 18:25:56 +01:00
elsid
e30a59772c
Remove DEFAULT_DECODER macros
2021-03-13 18:25:48 +01:00
Evil Eye
4db2f79a3c
Merge branch 'setpos' into 'master'
...
Use relative movement inside of SetPos
See merge request OpenMW/openmw!649
2021-03-13 12:58:48 +00:00
fredzio
cb39f8fb01
Use moveObjectBy in SetPos
2021-03-13 09:53:21 +01:00
fredzio
03b86c232b
Apply the position offset even if the simulation is not performed
...
because we're too fast.
2021-03-13 09:52:05 +01:00
psi29a
311b497491
Merge branch 'bullet-heightfield-floats' into 'master'
...
Avoid heightfield conversion in newer Bullet
See merge request OpenMW/openmw!647
2021-03-13 08:32:01 +00:00
psi29a
cc6f08930b
Merge branch 'alpha-meddling' into 'master'
...
Replace deprecated alpha test in shader visitor
Closes #4899
See merge request OpenMW/openmw!473
2021-03-13 08:13:19 +00:00
AnyOldName3
0431ba4c87
Merge branch 'alpha-meddling-shader-side-mip-meddling' into alpha-meddling
2021-03-13 01:23:30 +00:00
AnyOldName3
f09b0fc1bd
Put groundcover alphafunc where shader visitor can see it
...
I'd already made this change so don't know why it disappeared instead of
being included in b8ee32e3
2021-03-12 17:21:36 +00:00
Gleb Mazovetskiy
351d11449b
Avoid heightfield conversion in newer Bullet
...
Takes advantage of the direct `float` support implemented in
https://github.com/bulletphysics/bullet3/pull/3293
2021-03-11 23:52:12 +00:00
Andrei Kortunov
39b7260ab4
Fix a crash during new game
2021-03-11 11:46:44 +04:00
AnyOldName3
64ddb4c1b0
Fix linking on MacOS
2021-03-11 01:01:55 +00:00
psi29a
9f47190411
Merge branch 'now-it-blends' into 'master'
...
Convert blending factors properly for the character preview
See merge request OpenMW/openmw!644
2021-03-10 23:27:04 +00:00
AnyOldName3
cb2cbb4181
Convert blending factors properly for the character preview
2021-03-10 22:07:14 +00:00
Chris Djali
9bfe941d4b
Merge pull request #3050 from akortunov/master
...
Double-buffer shader water stateset
2021-03-10 15:56:40 +00:00
Andrei Kortunov
38679013fe
Give meaningful name to the mEffectFade
2021-03-10 19:10:17 +04:00
Gleb Mazovetskiy
1db7d2ec4e
Restore compatibility with FFMpeg < 57.80.100
...
This should fix macOS Travis build broken by 58d33aa95b
2021-03-08 19:29:34 +00:00
AnyOldName3
deb184cdce
Merge branch 'fix-build' into 'master'
...
Fix linking with `-DOPENMW_USE_SYSTEM_OSG=ON -DOSG_STATIC=ON`
See merge request OpenMW/openmw!640
2021-03-08 19:01:02 +00:00
psi29a
611a63acc6
Merge branch 'threesacharm' into 'master'
...
Attempt to fix restocking items in old saves
Closes #5823
See merge request OpenMW/openmw!580
2021-03-08 10:45:13 +00:00
psi29a
194875dec1
Merge branch 'fix-video-arm' into 'master'
...
osg-ffmpeg-videoplayer: Fix crash on ARM
Closes #5807
See merge request OpenMW/openmw!564
2021-03-08 08:05:25 +00:00