긴 물체가 구부러진 경로를 따라 미끄러지면서 경로에 맞춰 함께 휜다A long object slides along a bent path while bending to match it.
경로 길이 6단위를 1.5단위/s로 4초 동안 linear로 이동한다. 단면 12점이 경로의 접선에 맞춰 휜다
경로와 무관하게 직선으로 이동하며 회전만 하거나, 곡률이 급한 곳에서 단면이 접혀 찢어진다
기본값은 클립에 쓴 값Defaults are the values used in the clip
| 항목PARAM | 기본DEFAULT | 범위RANGE | 메모NOTE |
|---|---|---|---|
| 경로 길이 | 6단위 | 4~8 | 곡선 전체 |
| 속도 | 1.5단위/s | 1~2단위/s | linear |
| 단면 점 | 12 | 8~24 | 휘어짐 해상도 |
| 길이 | 4s | 3~5s |
const u = { s: 0 };
tl.to(u, { s: 6, duration: 4, ease: 'none', onUpdate: () => mat.uniforms.uOffset.value = u.s }, 0);
// vertex: float d = position.x + uOffset; vec3 P = curve.pointAt(d/6.); vec3 T = curve.tangentAt(d/6.); pos = P + frame(T) * position.yz;그대로 붙여 넣는다Paste as is
<대상> 리본이 곡선 경로를 따라 미끄러지며 휘게 해줘. 경로 길이 6단위를 1.5단위/s, linear로 4초 동안 이동하고 단면 12점을 경로 접선 프레임에 맞춰 정점 셰이더에서 변형해. uOffset은 타임라인 tween으로만 올려.
Make the ribbon in <target> slide and bend along a curved path. Move 6 units of path length at 1.5 units/s with linear timing over 4 seconds, deforming 12 cross-section points to the path tangent frame in the vertex shader. Drive uOffset only from a timeline tween.
<파일>에 curve guided deformation을 구현해. uOffset 0→6 / 4s / ease none, 단면 12점, 경로 접선 프레임으로 정점 변형. 0초, 2초, 4초를 캡처해 리본이 경로 곡률에 맞춰 휘는지, 곡률이 큰 곳에서 단면이 접히지 않는지 확인해.
Implement curve guided deformation in <file>: uOffset 0 to 6 / 4s / ease none, 12 cross-section points, vertex deformation on the path tangent frame. Capture at 0s, 2s and 4s and verify the ribbon follows the path curvature and the cross-section does not fold at high curvature.
HyperFrames · ReelForge · Scrolline
개념 출처와 라이선스. 구현은 이 레포에서 새로 씀Concept sources and licenses. Implementations are original to this repo