<?xml version="1.0" encoding="UTF-8" standalone="yes" ?>
<!DOCTYPE bugzilla SYSTEM "https://bugs.webkit.org/page.cgi?id=bugzilla.dtd">

<bugzilla version="5.0.4.1"
          urlbase="https://bugs.webkit.org/"
          
          maintainer="admin@webkit.org"
>

    <bug>
          <bug_id>290671</bug_id>
          
          <creation_ts>2025-03-28 19:21:32 -0700</creation_ts>
          <short_desc>[scroll-animations] animations janky (using common demos)</short_desc>
          <delta_ts>2025-04-02 07:42:17 -0700</delta_ts>
          <reporter_accessible>1</reporter_accessible>
          <cclist_accessible>1</cclist_accessible>
          <classification_id>1</classification_id>
          <classification>Unclassified</classification>
          <product>WebKit</product>
          <component>Animations</component>
          <version>Safari Technology Preview</version>
          <rep_platform>Unspecified</rep_platform>
          <op_sys>Unspecified</op_sys>
          <bug_status>RESOLVED</bug_status>
          <resolution>DUPLICATE</resolution>
          <dup_id>250970</dup_id>
          
          <bug_file_loc></bug_file_loc>
          <status_whiteboard></status_whiteboard>
          <keywords></keywords>
          <priority>P2</priority>
          <bug_severity>Major</bug_severity>
          <target_milestone>---</target_milestone>
          <dependson>222295</dependson>
          
          <everconfirmed>1</everconfirmed>
          <reporter name="Paul DeMarco">paulmdemarco</reporter>
          <assigned_to name="Nobody">webkit-unassigned</assigned_to>
          <cc>graouts</cc>
    
    <cc>graouts</cc>
    
    <cc>luke</cc>
    
    <cc>paulmdemarco</cc>
          

      

      

      

          <comment_sort_order>oldest_to_newest</comment_sort_order>  
          <long_desc isprivate="0" >
    <commentid>2107036</commentid>
    <comment_count>0</comment_count>
    <who name="Paul DeMarco">paulmdemarco</who>
    <bug_when>2025-03-28 19:21:32 -0700</bug_when>
    <thetext>I just tried out the latest Safari Technology Preview with some of the demos at: https://scroll-driven-animations.style/

It does feel less smooth than Chrome.

For this demo: https://scroll-driven-animations.style/demos/cover-flow/css/
&quot;Add jank&quot; is not supposed to effect the animation since it shouldn&apos;t be running on main thread, yet it freezes up in Safari Tech Preview.

This one is also noticeably more janky: https://scroll-driven-animations.style/demos/3d-shoe-explorer/css/

Are these in-fact running on the compositor?</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>2107482</commentid>
    <comment_count>1</comment_count>
    <who name="Luke Deen Taylor">luke</who>
    <bug_when>2025-03-31 11:18:32 -0700</bug_when>
    <thetext>The latter example (3d-shoe-explorer) is not expected to run on the compositor; the shoes are threejs scenes (&lt;model-viewer&gt;) and not rendered by css; their rotation is “synced” with the scroll-timeline progress using a requestAnimationFrame loop, which is capped at 60hz in Safari.

However, the first example (cover-flow) seems to me like it should, in principle, be compositor-only and unaffected by blocking the main thread.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>2107790</commentid>
    <comment_count>2</comment_count>
    <who name="Antoine Quint">graouts</who>
    <bug_when>2025-04-01 07:42:01 -0700</bug_when>
    <thetext>Paul, scroll-driven animations don&apos;t have any acceleration support in Safari at the moment. This will be added as part of bug 250970. As such I will mark this bug as a duplicate.

It is indeed expected until we have threaded animation resolution implemented that https://scroll-driven-animations.style/demos/cover-flow/css/ with the &quot;Add jank&quot; option enabled will have jank. If you see performance issues in other demos, please file issues specific to each of them as it is my expectation that on macOS, Safari should match or exceed or Chrome&apos;s performance for the demos on https://scroll-driven-animations.style.

*** This bug has been marked as a duplicate of bug 250970 ***</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>2107945</commentid>
    <comment_count>3</comment_count>
    <who name="Luke Deen Taylor">luke</who>
    <bug_when>2025-04-01 15:24:39 -0700</bug_when>
    <thetext>Before “threaded animation resolution” lands, is it expected that scroll animations will run at 60hz or 120hz? Looking at https://scroll-driven-animations.style/demos/reverse-scroll/css/ on a ProMotion screen it appears that the scroll-animation-driven reverse-scrolling items are updated at half the frame rate / “smoothness” that the native-scrolling ones are.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>2108182</commentid>
    <comment_count>4</comment_count>
    <who name="Antoine Quint">graouts</who>
    <bug_when>2025-04-02 07:42:17 -0700</bug_when>
    <thetext>Scroll-driven Animations will update at the same cadence as all other page rendering updates, which is 60Hz by default on ProMotion displays. This is true not just for non-accelerated animations, but all page rendering, including requestAnimationFrame callbacks. The feature flag &quot;Prefer Page Rendering Updates near 60fps&quot; can be disabled to have that cadence set to 120Hz on a device equipped with a ProMotion display.</thetext>
  </long_desc>
      
      

    </bug>

</bugzilla>