[core] Don't upload the FrameHistory texture in frames where it's not changing
This commit is contained in:
@@ -39,15 +39,15 @@ void FrameHistory::record(const TimePoint& now, float zoom, const Duration& dura
|
||||
for (int16_t z = 0; z <= 255; z++) {
|
||||
std::chrono::duration<float> timeDiff = now - changeTimes[z];
|
||||
int32_t opacityChange = (duration == Milliseconds(0) ? 1 : (timeDiff / duration)) * 255;
|
||||
if (z <= zoomIndex) {
|
||||
opacities.data[z] = util::min(255, changeOpacities[z] + opacityChange);
|
||||
} else {
|
||||
opacities.data[z] = util::max(0, changeOpacities[z] - opacityChange);
|
||||
uint8_t opacity = z <= zoomIndex
|
||||
? util::min(255, changeOpacities[z] + opacityChange)
|
||||
: util::max(0, changeOpacities[z] - opacityChange);
|
||||
if (opacities.data[z] != opacity) {
|
||||
opacities.data[z] = opacity;
|
||||
dirty = true;
|
||||
}
|
||||
}
|
||||
|
||||
dirty = true;
|
||||
|
||||
if (zoomIndex != previousZoomIndex) {
|
||||
previousZoomIndex = zoomIndex;
|
||||
previousTime = now;
|
||||
|
||||
Reference in New Issue
Block a user