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