History

don't fade after physics kick in

SamGondelman committed 10 years ago

Commit ccca6d91 parent 4c663b95 files · +26 −10Browse files

Showing the changes to libraries/render-utils/src/MeshPartPayload.cpp (1 of 5 files). Show all

Unified · Split

libraries/render-utils/src/MeshPartPayload.cpp+16−8
@@ -15,6 +15,7 @@ · 14 unmodified lines
1515
1616 #include "DeferredLightingEffect.h"
1717 #include "Model.h"
18+#include "EntityItem.h"
1819
1920 using namespace render;
2021
@@ -517,10 +518,16 @@ void ModelMeshPartPayload::bindTransform(gpu::Batch& batch, const ShapePipeline: · 496 unmodified lines
517518 }
518519
519520 void ModelMeshPartPayload::startFade() {
520− _fadeStartTime = usecTimestampNow();
521− _hasStartedFade = true;
522− _prevHasStartedFade = false;
523− _hasFinishedFade = false;
521+ bool shouldFade = EntityItem::getEntitiesShouldFadeFunction()();
522+ if (shouldFade) {
523+ _fadeStartTime = usecTimestampNow();
524+ _hasStartedFade = true;
525+ _hasFinishedFade = false;
526+ } else {
527+ _isFading = true;
528+ _hasStartedFade = true;
529+ _hasFinishedFade = true;
530+ }
524531 }
525532
526533 void ModelMeshPartPayload::render(RenderArgs* args) const {
@@ -533,10 +540,11 @@ void ModelMeshPartPayload::render(RenderArgs* args) const { · 6 unmodified lines
533540 // When an individual mesh parts like this finishes its fade, we will mark the Model as
534541 // having render items that need updating
535542 bool nextIsFading = _isFading ? isStillFading() : false;
536− if (_isFading != nextIsFading || _prevHasStartedFade != _hasStartedFade) {
537− _isFading = nextIsFading || _prevHasStartedFade != _hasStartedFade;
538− _hasFinishedFade = _prevHasStartedFade == _hasStartedFade && !_isFading;
539− _prevHasStartedFade = _hasStartedFade;
543+ bool startFading = !_isFading && !_hasFinishedFade && _hasStartedFade;
544+ bool endFading = _isFading && !nextIsFading;
545+ if (startFading || endFading) {
546+ _isFading = startFading;
547+ _hasFinishedFade = endFading;
540548 _model->setRenderItemsNeedUpdate();
541549 }
542550