dteviot
39c2ba8efe
Pathfinding bugfix.
...
Observed at Ebonheart (coe 1, -13). Especially at the western tower. Guards try to walk though tower door.
Cause: buildPath() adds destination (even when unreachable) when only using single node from pathgrid.
2015-08-30 16:12:51 +12:00
dteviot
5dd0ad6841
Fixed rest of travis errors.
2015-08-21 22:41:31 +12:00
dteviot
85bc41dedb
replaced FLT_MAX with numeric_limits.
2015-08-21 19:34:28 +12:00
dteviot
3b231b85bb
removed incorrect optimization.
...
Now it fixes #2871
2015-08-21 06:55:54 +12:00
dteviot
c0d3804b4f
Correctly handle disjoint pathgrid ( Fixes #2871 )
...
Bugfix:
When
1. Cell has multiple subgrids (i.e. path grid is disjoint)
2. Distance between destination and pathgrid point 0 is less than distance to points of subgrid closest to start point
Then getClosestReachablePoint() returns pathgrid point 0 as the end point.
This is invalid, this end point cannot be reached from the start point.
2015-08-20 21:50:58 +12:00
scrawl
dca08b0b42
Remove a firing assert ( Fixes #2871 )
2015-08-18 14:51:32 +02:00
dteviot
4d9d8a060d
Pathing bugfix.
...
When path contains one one point from path grid, point is no longer being discarded.
2015-08-16 18:56:28 +12:00
dteviot
942a987d52
centralize the world/cell coordinate conversion logic.
2015-08-16 18:55:02 +12:00
dteviot
5049c9ab6a
removed unnecessary tests.
2015-08-16 17:41:33 +12:00
dteviot
e42a2478dc
Removed tests that are not necessary.
2015-08-09 17:58:40 +12:00
dteviot
21e249cb92
pass parameters as const &
2015-08-04 18:14:36 +12:00
dteviot
1ed6e95c07
Got rid of some radians to degrees to radians conversions.
2015-07-19 18:01:25 +12:00
scrawl
c719b7038e
Merge branch 'master' of https://github.com/OpenMW/openmw into osg
2015-06-18 15:00:21 +02:00
scrawl
cad18969e3
Merge branch 'master' of https://github.com/OpenMW/openmw into osg
...
Conflicts:
apps/openmw/mwmechanics/aicombat.cpp
apps/openmw/mwmechanics/aitravel.cpp
2015-06-14 16:32:13 +02:00
dteviot
520fbd63c4
simplified pathfinding code.
...
remove mIsPathConstructed. Instead call !mPath.empty().
2015-06-14 15:14:02 +12:00
dteviot
cb8ca2f03a
Moved logic for building a Sync'ed path from AiCombat to PathFinding.
...
Is now used by AiFollow, which should fix "running in circles" bug caused when recalc a path and closest way point is the one NPC has just passed.
2015-06-11 18:31:35 +12:00
scrawl
4bb3cbf0fb
Remove last remains of Ogre
2015-06-03 23:04:35 +02:00
scrawl
7bacb9418d
Various math code ported to osg
2015-06-03 19:41:19 +02:00
dteviot
eb1090a1b6
Waypoint check only considers X & Y distance ( Fixes #2423 )
...
When pathfinder checks if actor has reached a waypoint, ignore actor's altitude.
2015-03-23 20:09:46 +13:00
dteviot
ca8c8c6aa4
fixing MSVC 2013 warning C4244: & C4305
...
conversion from 'const float' to 'int', possible loss of data
conversion from 'double' to 'int', possible loss of data
conversion from 'float' to 'int', possible loss of data
2015-03-08 17:42:07 +13:00
scrawl
a17252eab3
Remove unused checkWaypoint function
...
It was an almost exact copy of the checkPathCompleted function anyway.
2015-01-07 02:34:28 +01:00
scrawl
4d9100091d
Reduce default pathing arrival tolerance to 32 units ( Fixes #1605 )
2015-01-07 02:34:28 +01:00
terrorfisch
c4badcea6e
removed warning
2014-10-10 23:51:29 +02:00
terrorfisch
bbca942601
-improved trigonometric precision
...
-cleanup
2014-10-10 23:31:01 +02:00
scrawl
7252cb63a6
Fix cppcheck issues
2014-09-26 17:48:14 +02:00
scrawl
8d8015ce18
Remove a squareroot in pathfinding
2014-06-15 14:18:16 +02:00
Thomas
2c74ea381e
Moved pathfinding code to aiPackage, implemented it's use with aiFollow and aiPursue
2014-05-12 21:05:32 -04:00
mrcheko
6a3dddfb9a
merge master
2014-04-27 13:49:31 +04:00
mrcheko
f811abb752
pathgrid shortcutting extended
2014-04-20 20:35:07 +04:00
cc9cii
c652cb1568
More cleaning up.
2014-04-18 15:19:22 +10:00
cc9cii
2447f0f4aa
Cleaned up logging statements.
2014-04-18 14:41:44 +10:00
cc9cii
aad13d315c
Fixed issue where allowed nodes were being erased. PathFinder was returning an empty path if the closest pathgrid point to the start was also the closest pathgrid point to the goal. Still need to clean up and remove logging statements.
2014-04-18 14:41:44 +10:00
cc9cii
f59226265a
Remove redundant parameter from aStarSearch. Also update some comments.
2014-04-04 18:10:06 +11:00
cc9cii
040d4f8fc4
Move PathgridGraph into separate files.
2014-04-04 06:13:47 +11:00
cc9cii
a8b2eb1fe9
Make Travis happy.
2014-04-03 22:49:22 +11:00
cc9cii
325d0616bb
Cleanup debug statements.
2014-04-03 22:17:45 +11:00
cc9cii
98f77714ce
Per-cell pathgrid data and calculation moved off PathFinder. Now the edge cost calculations and strongly connected component searches are done only once per cell. Per-actor data and methods still remain with PathFinder.
...
This version still has debugging statements and needs cleaning up.
2014-04-03 21:43:44 +11:00
Marc Zinnschlag
c7b969821f
silenced a warning
2014-03-29 11:11:43 +01:00
cc9cii
07fd801d94
My previous analysis of the pathfinding issue was incorrect. It was in fact caused due to some of the pathgrid points being unreachable. Instead of returning an empty path in such a scenario, incorrect path + requested destination were being returned. There was also a defect where past cost was being used for selecting open points.
...
There is still an unresolved issue where mGraph and mSCComp are being rebuilt unnecessarily. The check mCell != cell in buildPath() is being triggered frequently. Not sure why.
2014-03-29 19:35:52 +11:00
cc9cii
267855c44e
Prevent NPC suicides off silt the strider platform in Seyda Neen. Added some comments as well. There may be opportunities for some optimization but left that out for now.
2014-03-29 19:35:52 +11:00
scrawl
c8c0e5de38
Fixed code issues found with unity build. Missing include guards, duplicated functions, ...
2014-03-16 23:49:06 +01:00
Marc Zinnschlag
f9d2fde783
Merge branch 'openmw-29'
...
Conflicts:
apps/openmw/mwmechanics/aicombat.cpp
2014-03-04 09:34:38 +01:00
cc9cii
5b48ca114f
aicombat pathfinding fix - check the correct list
2014-02-25 08:31:14 +01:00
Marc Zinnschlag
367919200f
moved CellRefList into a separate file
2014-02-23 20:11:05 +01:00
cc9cii
1bd2664cb0
aicombat pathfinding workaround
2014-02-23 11:47:25 +01:00
Marc Zinnschlag
7693f712bc
started making CellStore into a proper class; encapsulated mCell member
2014-02-21 11:35:46 +01:00
scrawl
7907181c0c
Fix uninitialized member
2014-02-05 05:18:11 +01:00
mrcheko
3a5da7e6e8
merged with master
2014-01-29 00:03:00 +02:00
Marc Zinnschlag
a473c3f619
some cleanup
2014-01-28 12:36:10 +01:00
mrcheko
fe0268062d
merge with master
2014-01-27 22:38:01 +02:00