Move pen point difference calculation from shader code to JS #667
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.
Resolves
Resolves #642
Proposed Changes
This changes the pen line code so that the difference between pen points is calculated in JS instead of in the shader code.
I also stopped passing
u_penPoints
into the fragment shader (it hasn't needed that since last time I fixed this; I just forgot to remove it then), and clarified some of the comments.Reason for Changes
If the pen points' coordinates are both somewhat large, calculating the difference between them will be inaccurate if done using the lower floating-point precision on GPUs. This messes up vertex shader calculations further down the line.
I'm pleasantly surprised by how simple the fix was here--it shouldn't decrease performance at all.
Test Coverage
Tested manually on an iPad Mini 5 (A2133) that was previously exhibiting the issue.