* Reorder unlock and notify_all calls to avoid notifying when not all worker
threads are waiting.
* Make sure main thread does not attempt to exclusively lock mSimulationMutex
while not all workers are done with previous frame.
* Replace mNewFrame flag by counter to avoid modification from multiple
threads.
- 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.
Make sure PathFinder::getClosestPoint is not called with failing precondition (#6294)
Closes#6294
See merge request OpenMW/openmw!1236
(cherry picked from commit baa33799de)
d36595e0 Make sure PathFinder::getClosestPoint is not called with failing precondition
Ignore time to destination when giving way (#6296)
See merge request OpenMW/openmw!1234
(cherry picked from commit 14516b9fd6)
5893b884 Ignore time to destination when giving way (#6296)
Use pathgrid path when destination is closer to different graph component node
See merge request OpenMW/openmw!1155
(cherry picked from commit 4bf22f3ca0)
9112c65a Use pathgrid path when destination is closer to different graph component node
Make it possible to opt out of composing variables
Closes#6186
See merge request OpenMW/openmw!1076
(cherry picked from commit 15d278de55)
4727ae4b Make it possible to opt out of composing variables
04e9b6d2 Abort on duplicate content file
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.
Don't put player in the air after going out of tcl
See merge request OpenMW/openmw!1009
(cherry picked from commit 6d08a1d731)
6ad2cf8e Skip simulation result after calling Actor::updatePosition(). Otherwise
Fix black objects in object paging debug view
See merge request OpenMW/openmw!1011
(cherry picked from commit 5287c9627c)
389b8300 fix black objects with OP batch debug due to unitialized uniform
LOD issue with object paging
See merge request OpenMW/openmw!1007
(cherry picked from commit 5688b7b4d8)
269cd310 Use same world coordinates to compute distances
Fix navmesh update on opening/closing door
See merge request OpenMW/openmw!995
(cherry picked from commit 9123db3a59)
c7c0d11c Trigger navmesh update when any navigator object has been updated
Fix new game guard 3 (#6126)
Closes#6126
See merge request OpenMW/openmw!976
(cherry picked from commit 89ca56632c)
a3942a1e Remove redundant check for y coordinate in inRange function
cc08a45c Move include where it is needed
7e1630a7 Remove redundant getPolyHeight wrapper
793c30ab Check dtNavMeshQuery::getPolyHeight status
a54c4bc2 Check dtNavMeshQuery::findStraightPath status
94e460ba Use proper check for distance
5624fe19 Consider path not found when there is navmesh query error
Detach objects from the active grid when attempting to get their animation
Closes#6105
See merge request OpenMW/openmw!951
(cherry picked from commit 7d8949ec3f)
692615fd Detach objects from the active grid when attempting to get their animation
Validate almost straight shortcuts by navmesh raycast (#6102)
Closes#6102
See merge request OpenMW/openmw!947
(cherry picked from commit 9c3117d2d4)
e7d68d3d Validate almost straight shortcuts by navmesh raycast
Reapply new game guard fix
See merge request OpenMW/openmw!944
(cherry picked from commit eca0a95a5a)
56e63053 Revert "Merge branch 'fix_new_game_guard' into 'master'"
e5e04b85 Consider time to destination when try to avoid collision
Adding Object Paging Min Size combo box to Advanced -> Visuals
See merge request OpenMW/openmw!917
(cherry picked from commit f66196588c)
9f2f5174 Adding Object Paging Min Size combo box to Advanced -> Visuals
89950e55 Preventing type conversion of double to float for objectPagingMinSize