diff options
author | Dave SIMmONs <simon@lindenlab.com> | 2010-10-12 13:50:17 -0700 |
---|---|---|
committer | Dave SIMmONs <simon@lindenlab.com> | 2010-10-12 13:50:17 -0700 |
commit | 58f0e78cb491833440d85e105593bccc2d2aa4ab (patch) | |
tree | d599675efbc6cd5fe13e172119786c4c95ae5746 /indra/newview/llworld.cpp | |
parent | d3a9d6a6cef6630995c652b4cc04c8807dbe6d4e (diff) |
Initial work on viewer motion interpolation. Changes include:
* InterpolationTime and InterpolationPhaseOut values in settings.xml to control new object interpolation code. Use zero to revert to old logic
* Viewer motion interpolation lasts InterpolationTime and will start to phase out after InterpolationPhaseOut seconds
* Changed LLWorld::getMinAllowedZ() to take a world-position as a parameter
* Added LLVOAvatarSelf::resetRegionCrossingTimer()
* Actually reset LLVOAvatarSelf::mRegionCrossingTimer so we get sensible timing data for region crossings
* LLVOAvatarSelf::updateRegion() will update position value due to region changes
Code reviewed by Ambroff
*
Diffstat (limited to 'indra/newview/llworld.cpp')
-rw-r--r-- | indra/newview/llworld.cpp | 5 |
1 files changed, 3 insertions, 2 deletions
diff --git a/indra/newview/llworld.cpp b/indra/newview/llworld.cpp index 5760d04a08..2793a33401 100644 --- a/indra/newview/llworld.cpp +++ b/indra/newview/llworld.cpp @@ -423,14 +423,15 @@ BOOL LLWorld::positionRegionValidGlobal(const LLVector3d &pos_global) // Allow objects to go up to their radius underground. -F32 LLWorld::getMinAllowedZ(LLViewerObject* object) +F32 LLWorld::getMinAllowedZ(LLViewerObject* object, const LLVector3d &global_pos) { - F32 land_height = resolveLandHeightGlobal(object->getPositionGlobal()); + F32 land_height = resolveLandHeightGlobal(global_pos); F32 radius = 0.5f * object->getScale().length(); return land_height - radius; } + LLViewerRegion* LLWorld::resolveRegionGlobal(LLVector3 &pos_region, const LLVector3d &pos_global) { LLViewerRegion *regionp = getRegionFromPosGlobal(pos_global); |