diff options
author | Jacek Antonelli | 2008-08-15 23:44:58 -0500 |
---|---|---|
committer | Jacek Antonelli | 2008-08-15 23:44:58 -0500 |
commit | 089fc07d207c71ce1401e72f09c31ad8c45872e2 (patch) | |
tree | 0028955add042c6f45b47a7b774adeeac9c592cb /linden/indra/newview/llflexibleobject.cpp | |
parent | Second Life viewer sources 1.16.0.5 (diff) | |
download | meta-impy-089fc07d207c71ce1401e72f09c31ad8c45872e2.zip meta-impy-089fc07d207c71ce1401e72f09c31ad8c45872e2.tar.gz meta-impy-089fc07d207c71ce1401e72f09c31ad8c45872e2.tar.bz2 meta-impy-089fc07d207c71ce1401e72f09c31ad8c45872e2.tar.xz |
Second Life viewer sources 1.17.0.12
Diffstat (limited to 'linden/indra/newview/llflexibleobject.cpp')
-rw-r--r-- | linden/indra/newview/llflexibleobject.cpp | 12 |
1 files changed, 9 insertions, 3 deletions
diff --git a/linden/indra/newview/llflexibleobject.cpp b/linden/indra/newview/llflexibleobject.cpp index d4080c5..0dce348 100644 --- a/linden/indra/newview/llflexibleobject.cpp +++ b/linden/indra/newview/llflexibleobject.cpp | |||
@@ -62,6 +62,7 @@ LLVolumeImplFlexible::LLVolumeImplFlexible(LLViewerObject* vo, LLFlexibleObjectD | |||
62 | mInitializedRes = -1; | 62 | mInitializedRes = -1; |
63 | mSimulateRes = 0; | 63 | mSimulateRes = 0; |
64 | mFrameNum = 0; | 64 | mFrameNum = 0; |
65 | mRenderRes = 1; | ||
65 | }//----------------------------------------------- | 66 | }//----------------------------------------------- |
66 | 67 | ||
67 | LLVector3 LLVolumeImplFlexible::getFramePosition() const | 68 | LLVector3 LLVolumeImplFlexible::getFramePosition() const |
@@ -253,7 +254,7 @@ BOOL LLVolumeImplFlexible::doIdleUpdate(LLAgent &agent, LLWorld &world, const F6 | |||
253 | { | 254 | { |
254 | if (!gPipeline.hasRenderDebugFeatureMask(LLPipeline::RENDER_DEBUG_FEATURE_FLEXIBLE)) | 255 | if (!gPipeline.hasRenderDebugFeatureMask(LLPipeline::RENDER_DEBUG_FEATURE_FLEXIBLE)) |
255 | { | 256 | { |
256 | return TRUE; | 257 | return FALSE; // (we are not initialized or updated) |
257 | } | 258 | } |
258 | 259 | ||
259 | LLFastTimer ftm(LLFastTimer::FTM_FLEXIBLE_UPDATE); | 260 | LLFastTimer ftm(LLFastTimer::FTM_FLEXIBLE_UPDATE); |
@@ -261,7 +262,7 @@ BOOL LLVolumeImplFlexible::doIdleUpdate(LLAgent &agent, LLWorld &world, const F6 | |||
261 | if (mVO->mDrawable.isNull()) | 262 | if (mVO->mDrawable.isNull()) |
262 | { | 263 | { |
263 | // Don't do anything until we have a drawable | 264 | // Don't do anything until we have a drawable |
264 | return TRUE; | 265 | return FALSE; // (we are not initialized or updated) |
265 | } | 266 | } |
266 | 267 | ||
267 | //flexible objects never go static | 268 | //flexible objects never go static |
@@ -346,8 +347,13 @@ void LLVolumeImplFlexible::doFlexibleUpdate() | |||
346 | if (mSimulateRes == 0) | 347 | if (mSimulateRes == 0) |
347 | { | 348 | { |
348 | mVO->markForUpdate(TRUE); | 349 | mVO->markForUpdate(TRUE); |
349 | doIdleUpdate(gAgent, *gWorldp, 0.0); | 350 | if (!doIdleUpdate(gAgent, *gWorldp, 0.0)) |
351 | { | ||
352 | return; // we did not get updated or initialized, proceeding without can be dangerous | ||
353 | } | ||
350 | } | 354 | } |
355 | |||
356 | llassert_always(mInitialized); | ||
351 | 357 | ||
352 | S32 num_sections = 1 << mSimulateRes; | 358 | S32 num_sections = 1 << mSimulateRes; |
353 | 359 | ||