자유롭게 진행하던 화면이 가까운 장면 경계에 부드럽게 정렬된다.Scrolling settles smoothly at the nearest chapter boundary.
두 번째 장 시작점에서 화면이 정렬되어 제목을 읽을 수 있다
짧은 스크롤마다 강제로 다음 장으로 이동한다
기본값은 클립에 쓴 값Defaults are the values used in the clip
| 항목PARAM | 기본DEFAULT | 범위RANGE | 메모NOTE |
|---|---|---|---|
| 기본 지속 | 0.45s | 0.27~0.675s | 1920x1080 시연 기준의 한 동작 시간 |
| 장면 간격 | 1080px | 720~1080px | 대상 크기와 정보 밀도에 맞춰 조절한다 |
| 이징 | power2.out | none | power2.out | power2.inOut | 진행값은 none, 정착은 power2.out을 쓴다 |
const state = {p:.42};
const stops = [0,.5,1];
const nearest = stops.reduce((a,b)=>Math.abs(b-state.p)<Math.abs(a-state.p)?b:a);
tl.to(state, {p:nearest,duration:.45,ease:'power2.out',onUpdate:()=>gsap.set('.track',{y:-state.p*2160})}, 0);그대로 붙여 넣는다Paste as is
<대상>에 스크롤 스냅을 적용해. 자유롭게 진행하던 화면이 가까운 장면 경계에 부드럽게 정렬된다. 기본 지속 0.45초, 장면 간격 1080px, 이징 power2.out를 사용하고 <파일>에 결정론적 paused 타임라인으로 구현해. 위 핵심 코드의 선택자를 대상 구조에 맞추고 완료 상태를 유지해.
Apply Scroll Snap to <target> in <file>. Scrolling settles smoothly at the nearest chapter boundary. Use a 0.45-second duration, 1080px chapter spacing, and power2.out easing. Implement the core snippet with selectors matching the target, using a deterministic paused timeline, and retain the final state.
<파일>의 시연 장면에서 <대상>에 스크롤 스냅을 적용해. 기본 지속 0.45초, 장면 간격 1080px, 이징 power2.out를 사용해. 0초, 0.225초, 0.85초를 캡처해 초기 상태, 중간 변화, 완료 상태를 확인하고 같은 시점 seek 결과가 일치하는지 검증해.
Apply Scroll Snap to <target> in the demonstration scene in <file>. Use a 0.45-second duration, 1080px chapter spacing, and power2.out easing. Capture at 0, 0.225, and 0.85 seconds to verify the initial, intermediate, and final states. Seek to the same times again and confirm identical results.
HyperFrames · ReelForge · Scrolline
개념 출처와 라이선스. 구현은 이 레포에서 새로 씀Concept sources and licenses. Implementations are original to this repo