mirror of
https://gitlab.com/OpenMW/openmw.git
synced 2025-04-18 14:42:27 +00:00
Add clarifying comments to detournavigator coordinates conversion functions
This commit is contained in:
parent
afd6f0739c
commit
b0b6c48a88
@ -47,6 +47,7 @@ namespace DetourNavigator
|
|||||||
return position;
|
return position;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
// Returns value in NavMesh coordinates
|
||||||
inline float getTileSize(const RecastSettings& settings)
|
inline float getTileSize(const RecastSettings& settings)
|
||||||
{
|
{
|
||||||
return static_cast<float>(settings.mTileSize) * settings.mCellSize;
|
return static_cast<float>(settings.mTileSize) * settings.mCellSize;
|
||||||
@ -62,16 +63,19 @@ namespace DetourNavigator
|
|||||||
return static_cast<int>(v);
|
return static_cast<int>(v);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
// Returns integer tile position for position in navmesh coordinates
|
||||||
inline TilePosition getTilePosition(const RecastSettings& settings, const osg::Vec2f& position)
|
inline TilePosition getTilePosition(const RecastSettings& settings, const osg::Vec2f& position)
|
||||||
{
|
{
|
||||||
return TilePosition(getTilePosition(settings, position.x()), getTilePosition(settings, position.y()));
|
return TilePosition(getTilePosition(settings, position.x()), getTilePosition(settings, position.y()));
|
||||||
}
|
}
|
||||||
|
|
||||||
|
// Returns integer tile position for position in navmesh coordinates
|
||||||
inline TilePosition getTilePosition(const RecastSettings& settings, const osg::Vec3f& position)
|
inline TilePosition getTilePosition(const RecastSettings& settings, const osg::Vec3f& position)
|
||||||
{
|
{
|
||||||
return getTilePosition(settings, osg::Vec2f(position.x(), position.z()));
|
return getTilePosition(settings, osg::Vec2f(position.x(), position.z()));
|
||||||
}
|
}
|
||||||
|
|
||||||
|
// Returns tile bounds in navmesh coordinates
|
||||||
inline TileBounds makeTileBounds(const RecastSettings& settings, const TilePosition& tilePosition)
|
inline TileBounds makeTileBounds(const RecastSettings& settings, const TilePosition& tilePosition)
|
||||||
{
|
{
|
||||||
return TileBounds{
|
return TileBounds{
|
||||||
@ -80,6 +84,7 @@ namespace DetourNavigator
|
|||||||
};
|
};
|
||||||
}
|
}
|
||||||
|
|
||||||
|
// Returns border size relative to cell size
|
||||||
inline float getBorderSize(const RecastSettings& settings)
|
inline float getBorderSize(const RecastSettings& settings)
|
||||||
{
|
{
|
||||||
return static_cast<float>(settings.mBorderSize) * settings.mCellSize;
|
return static_cast<float>(settings.mBorderSize) * settings.mCellSize;
|
||||||
@ -95,6 +100,7 @@ namespace DetourNavigator
|
|||||||
return std::floor(std::sqrt(settings.mMaxTilesNumber / osg::PI)) - 1;
|
return std::floor(std::sqrt(settings.mMaxTilesNumber / osg::PI)) - 1;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
// Returns tile bounds in real coordinates
|
||||||
inline TileBounds makeRealTileBoundsWithBorder(const RecastSettings& settings, const TilePosition& tilePosition)
|
inline TileBounds makeRealTileBoundsWithBorder(const RecastSettings& settings, const TilePosition& tilePosition)
|
||||||
{
|
{
|
||||||
TileBounds result = makeTileBounds(settings, tilePosition);
|
TileBounds result = makeTileBounds(settings, tilePosition);
|
||||||
|
Loading…
x
Reference in New Issue
Block a user