Reduce draw time by removing redundant moveEnd event#58
Open
michaelstorm wants to merge 1 commit intocambecc:masterfrom
Open
Reduce draw time by removing redundant moveEnd event#58michaelstorm wants to merge 1 commit intocambecc:masterfrom
michaelstorm wants to merge 1 commit intocambecc:masterfrom
Conversation
…map vectors to be drawn twice
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
The
moveEndevent was being triggered manually when the user stopped dragging the mouse, even though the event was triggered automatically when the new globe orientation was saved to the configuration. This caused the hi-res borders and lakes to be drawn twice. Removing the second event reduces draw time by ~115ms on my machine.Removing the manual trigger exposed a race condition between drawing borders and interpolating the overlay, which perhaps was the original motivation for it. The fix for this is detailed in a code comment.
Great project, by the way! I'm looking into adapting it for some real-time-ish applications, so there might be some more performance-focused PRs from me.