요소마다 크기나 회전량이 조금씩 달라져 부채꼴이나 경사형 배열을 만드는 효과Elements get slightly different size or rotation values, forming a fan or gradient array.
요소 12개가 0.6초 동안 회전 0도에서 90도까지, 크기 0.7배에서 1.3배까지 인덱스에 따라 단계적으로 펼쳐진다
단계 차이가 너무 커서 규칙이 안 보이거나, 모든 요소가 동시에 같은 값으로 움직여 변화가 없다
기본값은 클립에 쓴 값Defaults are the values used in the clip
| 항목PARAM | 기본DEFAULT | 범위RANGE | 메모NOTE |
|---|---|---|---|
| 지속 | 600ms | 400~1000ms | 펼침 시간 |
| 요소 수 | 12개 | 6~20개 | 동일 도형 |
| 회전 범위 | 0~90도 | 30~180도 | 인덱스 선형 |
| 크기 범위 | 0.7~1.3배 | 0.5~1.6배 | 인덱스 선형 |
| 시간차 | 30ms | 20~60ms | 인덱스순 |
const els=gsap.utils.toArray('.item');
els.forEach((e,i)=>{const u=i/(els.length-1);
tl.to(e,{rotation:u*90,scale:.7+u*.6,duration:.6,ease:'power2.out'},t+i*.03);});
// transform-origin은 부채 중심(예: '50% 100%')그대로 붙여 넣는다Paste as is
<대상> 요소 12개를 부채꼴로 펼쳐줘. 인덱스 정규화 값 u=i/11로 회전을 0도에서 90도, 크기를 0.7배에서 1.3배로 선형 매핑하고, 각 요소는 0.6초 power2.out에 0.03초씩 늦게 출발하게 해. transform-origin은 50% 100%. 불규칙 값은 쓰지 말고 paused 타임라인으로 구동해.
Fan out the 12 elements of <target>. Using normalized u=i/11, map rotation linearly from 0 to 90 degrees and scale from 0.7x to 1.3x, with each element animating for 0.6s with power2.out and starting 0.03s later than the previous. Set transform-origin to 50% 100%. No irregular values, drive from a paused timeline.
<파일>에 graded-array-motion을 구현해. 요소 12개, 회전 0~90도, 크기 0.7~1.3배, 600ms power2.out, 시간차 30ms. 0.2초, 0.4초, 0.9초를 캡처해 단계적으로 펼쳐지는지, 마지막 프레임에서 각도가 인덱스에 선형인지, 요소가 겹쳐 가려지지 않는지 확인해.
Implement graded-array-motion in <file>: 12 elements, rotation 0-90 degrees, scale 0.7-1.3x, 600ms power2.out, stagger 30ms. Capture at 0.2s, 0.4s, and 0.9s to verify stepwise fanning, that final angles are linear in index, and that elements do not overlap and hide one another.
HyperFrames · ReelForge · Scrolline
개념 출처와 라이선스. 구현은 이 레포에서 새로 씀Concept sources and licenses. Implementations are original to this repo