페이지 한쪽이나 모서리가 접히고 말려 올라가 뒷면과 그림자를 드러내며 다음 화면으로 넘어간다A page corner curls up, exposing the back and a soft shadow, and turns to the next screen.
오른쪽 모서리가 말려 올라가며 0.9초 동안 뒷면이 보이고, 말림 반경은 화면 폭의 16%, 그림자 opacity 0.25가 말림을 따라간다
말림이 너무 작아 잘 안 보이거나, 뒷면과 그림자 없이 앞면만 접혀 평면 회전으로 보인다
기본값은 클립에 쓴 값Defaults are the values used in the clip
| 항목PARAM | 기본DEFAULT | 범위RANGE | 메모NOTE |
|---|---|---|---|
| 지속 | 900ms | 700~1200ms | power2.inOut |
| 말림 반경 | 화면 폭 16% | 10~20% | 클수록 종이가 두꺼워 보임 |
| 그림자 opacity | 0.25 | 0.15~0.35 | 말림 뒤쪽에 드리움 |
| 방향 | 오른쪽에서 왼쪽 | 좌우 또는 상하 | 읽는 방향과 맞춘다 |
| 뒷면 밝기 | 0.9 | 0.8~1.0 | 뒷면은 약간 어둡게 |
// 2D 근사: 앞면 클립을 접는 각도로 진행
const t = { p: 0 };
tl.to(t, { p: 1, duration: 0.9, ease: 'power2.inOut',
onUpdate: () => drawCurl(t.p) }, 0); // 반경 0.16*1920, 그림자 0.25
tl.set('.prev', { autoAlpha: 0 }, 0.9);그대로 붙여 넣는다Paste as is
<대상> 장면 끝에 페이지 턴 전환을 넣어줘. 오른쪽에서 왼쪽으로 900ms, power2.inOut으로 진행하고 말림 반경은 화면 폭의 16%, 말림 뒤에 opacity 0.25 그림자를 깔아줘. 뒷면은 앞면보다 10% 어둡게. 진행률 p 하나로 그리는 함수로 만들어 paused 타임라인에서 seek해도 같은 프레임이 나오게 해.
Add a Page Turn transition at the end of <target>. Run it right to left over 900ms with power2.inOut, curl radius 16% of frame width, and a 0.25 opacity shadow behind the curl. Make the back side 10% darker. Drive it with one progress value p and a drawCurl(p) function so seeking a paused timeline yields identical frames.
<파일>에 페이지 턴 전환을 구현해. p를 0에서 1로 0.9초 power2.inOut, drawCurl(p)에서 반경 0.16*1920px, 그림자 0.25. 0.3초, 0.45초, 0.6초, 0.9초 시점을 캡처해 말림이 점점 커지는지, 뒷면이 보이는지, 0.9초에 이전 페이지가 완전히 사라졌는지 확인해. 난수와 setTimeout은 쓰지 마.
Implement Page Turn in <file>. Tween p from 0 to 1 over 0.9s with power2.inOut; drawCurl(p) uses radius 0.16*1920px and shadow 0.25. Capture at 0.3s, 0.45s, 0.6s, and 0.9s to confirm the curl grows, the back side shows, and the previous page is fully gone at 0.9s. No randomness or setTimeout.
HyperFrames · ReelForge · Scrolline
개념 출처와 라이선스. 구현은 이 레포에서 새로 씀Concept sources and licenses. Implementations are original to this repo