1
0
Fork 0
mirror of https://github.com/OpenMW/openmw.git synced 2025-01-16 21:29:56 +00:00
Commit graph

17937 commits

Author SHA1 Message Date
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
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