psi29a
bb393cb91c
Merge branch 'fix_new_game_guard_3' into 'master'
...
Fix new game guard 3 (#6126 )
Closes #6126
See merge request OpenMW/openmw!976
(cherry picked from commit 89ca56632c6bc37f07e430e7f5cd23d855610b19)
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
4 years ago
psi29a
05b5ada6bf
Merge branch 'fix_smooth_movement' into 'master'
...
Validate almost straight shortcuts by navmesh raycast (#6102 )
Closes #6102
See merge request OpenMW/openmw!947
(cherry picked from commit 9c3117d2d4a70475b021f4e4a50eec88cd7cf125)
e7d68d3d Validate almost straight shortcuts by navmesh raycast
4 years ago
elsid
39c0ce9ddf
Build limited path for far destinations
...
When distance between start and end point is greater than max radius of area
possibly covered by navmesh there is no way to find path via navmesh. Also if
distance is greater than cell size navmesh might not exists withing mentioned
area because cell is not loaded therefore navmesh is not generated. So minumum
of these values is used to limit max path distance. Assuming that path
actually exists it's possible to build path to the edge of a circle. When
actor reaches initial edge path is built further. However it will not be
optimal.
4 years ago
Petr Mikheev
9590377f22
Don't ignore Z in path finding if actor can move by Z.
4 years ago
Petr Mikheev
642ca02e35
Shorten almost straight paths only if smooth movement is enabled; reduce angle limit for the shortening.
4 years ago
elsid
b095ca6c86
Use actor speed to define area cost for pathfinding
5 years ago
elsid
d86669843e
Remove unseud pointTolerance argument
5 years ago
elsid
f7caeefddb
Fallback to straight path when navmesh and pathgrind are not available
5 years ago
elsid
81832f8e17
Reuse distance functions
5 years ago
elsid
6c46d929c2
Build path to first pathgrid node by navmesh
5 years ago
elsid
a65f60e1f1
Build path only by navmesh for wandering near spawn
6 years ago
elsid
ff67a9e233
Build straight path for wandering flying and water creatures
6 years ago
elsid
cf1e1d9f4b
Use min point tolerance to prevent face wrong direction (bug #4814 )
...
When next path point is too close to actor and it has speed 0,
it can face direction not pointing to path target.
6 years ago
elsid
eb45f99880
Remove unused code
6 years ago
elsid
03d4ce5e49
Log find path exception with level verbose, add more info to message
6 years ago
elsid
bbd82a743a
Use different tolerance for path point and destination
6 years ago
elsid
661da42bd2
Build path by navigator
6 years ago
elsid
d02beae5a8
Find path for actors according to their abilities to swim and walk
6 years ago
elsid
fafba8ea0c
Use recastnavigation to find path
6 years ago
elsid
4fe764c3a5
Update and check for complete Pathfinder path by different methods
6 years ago
elsid
b6dd2119a6
Make Pathfinder constructor inline
6 years ago
elsid
92f52287bf
Make PathFinder::ClearPath inline
6 years ago
elsid
ca3d0594b3
Do not store pointer to Pathgrid in PathFinder
6 years ago
elsid
3565d92e11
Make PathFinder::getPathCell inline
6 years ago
elsid
2ad3543088
Fix constant style
6 years ago
elsid
6d89241178
Check is path completed by osg::Vec3f position
6 years ago
elsid
6411c1955d
Fix indent
6 years ago
elsid
d3667945c5
Remove unused functions
6 years ago
elsid
31340a212a
Fix functions name style
6 years ago
elsid
9b3756f8bc
Store path points in deque
6 years ago
elsid
fbaa525c6f
Fix warning
6 years ago
elsid
4d868bec92
Use osg::Vec3f to store path nodes in Pathfinder
6 years ago
scrawl
c50b18b3bb
Move PathgridGraph out of CellStore
...
By definition this is not 'Mutable state of a cell' and does not belong in CellStore.
This change should improve startup times (graph is now loaded on demand) and edits to 'pathgrid.hpp' no longer cause the entirety of OpenMW to be rebuilt.
7 years ago
Leon Krieg
739cd5ba45
Fixed more spelling mistakes
8 years ago
mrcheko
aa441f2648
AiPackage: fix path recalc on cell change
...
AiTravel: remove unneeded code
8 years ago
mrcheko
612c7f1a2f
Revert "Revert "Merge pull request #993 from mrcheko/pathfinding""
...
This reverts commit 3732979eec
.
8 years ago
scrawl
3732979eec
Revert "Merge pull request #993 from mrcheko/pathfinding"
...
This reverts commit 5190275b37
, reversing
changes made to d7845012bf
.
9 years ago
mrcheko
59a1a6d117
checkWayIsClear: remove PATHFIND_CAUTION_DIST check
9 years ago
mrcheko
d2fe6fe857
Merge remote-tracking branch 'refs/remotes/origin/master' into pathfinding
...
# Conflicts:
# apps/openmw/mwmechanics/aiactivate.cpp
# apps/openmw/mwmechanics/aicombat.cpp
# apps/openmw/mwmechanics/aicombat.hpp
# apps/openmw/mwmechanics/aifollow.cpp
# apps/openmw/mwmechanics/aipackage.cpp
# apps/openmw/mwmechanics/aipackage.hpp
# apps/openmw/mwmechanics/aiwander.cpp
# apps/openmw/mwmechanics/aiwander.hpp
9 years ago
Allofich
b1be3596dc
Cleanup of #include statements
9 years ago
Austin Salgat
38f5a225ea
Refactor PathFinder functions to be useable by AiWander
...
This avoids having to duplicate the distanceSquared and getClosestPoint functions.
9 years ago
mrcheko
d7d5cc6689
Merge remote-tracking branch 'upstream/master' into pathfinding
...
Conflicts:
apps/openmw/mwmechanics/aicombat.cpp
apps/openmw/mwmechanics/aifollow.cpp
apps/openmw/mwmechanics/aipackage.cpp
apps/openmw/mwmechanics/aipackage.hpp
apps/openmw/mwmechanics/aiwander.cpp
apps/openmw/mwmechanics/pathfinding.hpp
Ogre::Vector3->osg::Vec3f; REACTION_INTERVAL->AI_REACTION_TIME; MakeOgreVec3->MakeOsgVec3
9 years ago
dteviot
21e249cb92
pass parameters as const &
10 years ago
dteviot
1ed6e95c07
Got rid of some radians to degrees to radians conversions.
10 years ago
dteviot
1239667cb4
AiWander uses points between PathGrid points ( Fixes #1317 )
...
When there is only on PathGrid point within a NPC's wander distance, expand possible wander destinations by using positions between PathGrid points.
10 years ago
mrcheko
c773ed9f9a
move checkWayIsClear to pathfinding; move shortcut logic to separate func (AiPackage::shortcutPath); rework AiPackage::pathTo
10 years ago
dteviot
164994f3d3
Made PathFinder::buildPath() private.
...
Now all paths are built by calling PathFinder::buildSyncedPath().
Also removed useless comment.
10 years ago
scrawl
c719b7038e
Merge branch 'master' of https://github.com/OpenMW/openmw into osg
10 years ago
scrawl
cad18969e3
Merge branch 'master' of https://github.com/OpenMW/openmw into osg
...
Conflicts:
apps/openmw/mwmechanics/aicombat.cpp
apps/openmw/mwmechanics/aitravel.cpp
10 years ago
dteviot
520fbd63c4
simplified pathfinding code.
...
remove mIsPathConstructed. Instead call !mPath.empty().
10 years ago