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.
I was looking into why opendigitizer was not working on android chrome. I've enabled remote debugging and the error is
WebGL: INVALID_VALUE: texImage2D: width or height out of range _glTexImage2D
so it seems that some part of the code tries to allocate texture memory too big for mobile devices. Interestingly it works with firefox on the same device.mrdoob/three.js#22873 describes the same symptoms, but we already have the meta tag suggested there.
Further investigation showed
GLctx.getParameter(GLctx.MAX_TEXTURE_SIZE)
returns 32k, on my phone it returns only 4k. This number seems to be the maximum supported texture dimension, so the height of the second one would violate that. (also that corresponds to ~270Mb ). (for comparison: the browser window is actually 432*834, so this texture fits the whole screen more than 200 times)The Solution/fix
This PR changes the oversampling to 2, which was the easiest way to significantly reduce the font-atlas size. This has the drawback of making the fonts in the flowgraph view appear a bit blurry, depending on the zoom level, which can be improved in a later change by using the biggest font there.
Testing on 2 different android devices showed that this allows chrome on android to display the wasm app again.
The font atlas with oversampling = 1 uses a 2kx2k texture, so it was even possible to stay with x2 oversampling.
Further Work
Janitorial
This PR also bumps the versions of various github pages related actions, which were causing deprecation warnings and depended on an old nodejs version which will probably at some point be removed from the runners.