forked from mirror/openmw-tes3mp
checkWayIsClear: remove PATHFIND_CAUTION_DIST check
This commit is contained in:
parent
b4e94e2aae
commit
59a1a6d117
2 changed files with 8 additions and 16 deletions
|
@ -106,22 +106,16 @@ namespace MWMechanics
|
|||
|
||||
bool checkWayIsClear(const osg::Vec3f& from, const osg::Vec3f& to, float offsetXY)
|
||||
{
|
||||
if((to - from).length() >= PATHFIND_CAUTION_DIST || std::abs(from.z() - to.z()) <= PATHFIND_Z_REACH)
|
||||
{
|
||||
osg::Vec3f dir = to - from;
|
||||
dir.z() = 0;
|
||||
dir.normalize();
|
||||
float verticalOffset = 200; // instead of '200' here we want the height of the actor
|
||||
osg::Vec3f _from = from + dir*offsetXY + osg::Z_AXIS * verticalOffset;
|
||||
osg::Vec3f dir = to - from;
|
||||
dir.z() = 0;
|
||||
dir.normalize();
|
||||
float verticalOffset = 200; // instead of '200' here we want the height of the actor
|
||||
osg::Vec3f _from = from + dir*offsetXY + osg::Z_AXIS * verticalOffset;
|
||||
|
||||
// cast up-down ray and find height in world space of hit
|
||||
float h = _from.z() - MWBase::Environment::get().getWorld()->getDistToNearestRayHit(_from, -osg::Z_AXIS, verticalOffset + PATHFIND_Z_REACH + 1);
|
||||
// cast up-down ray and find height of hit in world space
|
||||
float h = _from.z() - MWBase::Environment::get().getWorld()->getDistToNearestRayHit(_from, -osg::Z_AXIS, verticalOffset + PATHFIND_Z_REACH + 1);
|
||||
|
||||
if(std::abs(from.z() - h) <= PATHFIND_Z_REACH)
|
||||
return true;
|
||||
}
|
||||
|
||||
return false;
|
||||
return (std::abs(from.z() - h) <= PATHFIND_Z_REACH);
|
||||
}
|
||||
|
||||
PathFinder::PathFinder()
|
||||
|
|
|
@ -23,8 +23,6 @@ namespace MWMechanics
|
|||
|
||||
const float PATHFIND_Z_REACH = 50.0f;
|
||||
//static const float sMaxSlope = 49.0f; // duplicate as in physicssystem
|
||||
// distance at which actor pays more attention to decide whether to shortcut or stick to pathgrid
|
||||
const float PATHFIND_CAUTION_DIST = 500.0f;
|
||||
// distance after which actor (failed previously to shortcut) will try again
|
||||
const float PATHFIND_SHORTCUT_RETRY_DIST = 300.0f;
|
||||
|
||||
|
|
Loading…
Reference in a new issue