#17 JShelter slows down WebGL animation on Github homepage
Closed: Fixed 7 months ago by polcak. Opened 2 years ago by xsalon00.

Github homepage contains a globe animation when user is not logged in. When accessing this homepage with JShelter (JavaScript Shield ON), animation is slowed down and running on way lower FPS (frames per second). It may be caused by adjustments introduced by Time Precision wrappers or WebGL wrappers.

It seems that only functions wrapped for fingerprinting detection are called on Github:


It looks like these simple wrappers are enough to slow the page down.

A possible improvement could be to remove the FPD wrapper (but keepings JSS wrapper if it exists) once the number of calls of the wrapper reaches 1000.

Metadata Update from @polcak:
- Issue assigned to xsalon00

2 years ago

I do not agree with the statement that FPD wrappers are slowing down the animation. At least on my side, the animation is slowed down even though FPD wrappers are OFF.

After a closer inspection, I concluded that Time precision wrapper (from JSS) is the culprit. The animation is slowed down when Time precision is set to Low or High.

A possible duplicate is #107. However, there the slowness of the page can be due to extensive use of "Graphic card information" and "Locally rendered images" wrappers. Time precision wrappers are also triggred heavily on https://registry.khronos.org/webgl/sdk/tests/webgl-conformance-tests.html.

Metadata Update from @polcak:
- Issue assigned to polcak (was: xsalon00)

a year ago

I do not see a big difference in 0.16.

  • Time wrappers off and rounding to hundredths of a second. No visible difference for me.
  • Time wrappers off and rounding to tenths of a second. Maybe a small difference if I focus and know what to look for.
  • Time wrappers off and rounding+noise. A small difference. I am not sure if I would notice if I did not focus.

I am closing the issue with the plausible explanation that what I see are artefacts of the algorithm that computes the rotation of the Earth and the flying dots. As JShelter slightly modifies the time, there is an error in the computations that, for example, can stop the movements.

There might have been additional performance issues in the past that might have been solved by changes in the NSCL and performance improvements in JShelter and FPD.

Metadata Update from @polcak:
- Issue close_status updated to: Fixed
- Issue status updated to: Closed (was: Open)

7 months ago

Login to comment on this ticket.

Attachments 1
Attached 2 years ago View Comment