크래프트: 타이밍, 이징 및 레이아웃
모든 Montagent 작품에 담겨 있는 숫자들입니다. 어떤 작업이든, 어떤 모양이든, 어떤 프레임 속도든 상관없이 적용됩니다. 시간은 밀리초 단위입니다. 크기는 프레임의 짧은 쪽(와이드 프레임의 높이, 세로 프레임의 너비)을 기준으로 한 분수로, 모든 크기와 종횡비에서 일관되게 유지됩니다. 잡 스킬의 레시피에는 해당 움직임에 대한 고유한 숫자가 있습니다. 해당 레시피 내에서는 그 숫자가 우선 적용됩니다.
확인 사항
매 확인 단계마다, 해당 단계가 명명한 프레임을 아래 각 줄과 비교하고, 렌더링 전에 전체 비디오를 다시 한 번 확인하세요. 프레임 안에 있는 것을 평가하고, 의도한 대로 만들어진 것을 평가하지 마세요. 확인한 내용으로 확인할 수 없는 줄은 확인되지 않은 것으로 간주합니다. 다시 확인하세요.
- 비트에 맞춰서. 모든 컷, 시작, 섹션 변경은 해당 비트의 드로잉된 프레임에 위치하며, 최대 한 프레임 빠를 수 있습니다(비트 그리드).
query --from --to는 컷을 나열합니다. 그리드와 비교하세요. - 안전 영역 안에. 모든 단어는 타이틀 안전 영역 안에, 모든 얼굴과 제품은 액션 안전 영역 안에 위치해야 합니다(안전 영역). 텍스트의 경우,
query --at <t> --json은 각 요소의 잉크 박스를 픽셀로 제공합니다. - 충분히 크게. 읽도록 의도된 텍스트는 짧은 쪽의 3 % 미만이어서는 안 되며, 레벨 간 차이가 명확해야 합니다(타입).
- 읽을 수 있게. 배경과 대비되는 텍스트는 타입의 명도 대비비를 충족해야 하며, 텍스트가 표시되는 모든 프레임에서 그래야 합니다. 푸티지나 사진 위에서는 가장 밝고 가장 혼잡한 프레임을 확인하세요.
- 하나의 초점. 어떤 순간이든 한 가지가 주도합니다: 가장 새롭거나, 가장 크거나, 가장 밝거나, 강조된 것입니다. 다른 모든 것은 사라졌거나, 정지해 있거나, 명확히 뒤에 있습니다(절제).
- 부드럽게.
preview에서 섬광, 떨림, 혹은 복제본처럼 보이는 것이 없어야 합니다(속도 제한). - 읽을 수 있을 만큼 충분히 길게. 각 줄은 이동되기 전에 읽는 시간만큼 유지되어야 합니다(홀드).
- 끝. 마지막 프레임은 완전하고 정지되어 있으며, 최소 1초 동안 그 상태를 유지해야 합니다. 사운드는 해당 프레임에서 0에 도달합니다.
확인은 모든 줄이 콘택트 시트의 모든 타일과 명명된 각 단계의 모든 프레임에서 유지될 때 완료됩니다. 실패한 부분을 수정한 후 montagent의 확인 단계로 돌아가세요.
비트 그리드
음악이 시계를 설정합니다. 아무것도 배치하기 전에 템포와 첫 다운비트를 찾으세요.
- 템포가 명시된 경우 브리핑이나 에셋 노트에 있는 경우: 명시된 다운비트와 함께 사용하세요.
- 템포가 명시되지 않은 경우:
python3 scripts/beat_grid.py <project> <spec>실행 (--help를 사용하여 스펙 확인). 트랙을 듣고, 원하는 위치에 다운비트가 오도록 배치하고, 마지막 드로잉된 프레임에서 페이드 아웃합니다. stdout에 프로젝트를 출력하므로 새로운 파일로 리디렉션하고, stderr에 JSON 형식의 그리드를 출력합니다. 두 신뢰도를 모두 읽으세요: 1.5 미만이거나downbeat_by가first인 경우, 그리드는 추측입니다. 알고 있을 때는 스펙에bpm(및downbeat)을 제공하고, 핸드오프에 그리드가 추정되었다고 명시하세요. - 음악이 없는 경우: 500ms 비트 (120 BPM).
계산법:
- 비트는
60000 / BPMms, 마디는 4박, 프레이즈는 4마디(때로는 8마디)입니다. - 더하지 말고 첫 다운비트부터 세세요. n번째 비트는
downbeat + n × beat이며, 드로잉된 프레임으로 이동합니다:floor(round(t * fps / 1000) * 1000 / fps). 반올림된 비트를 계속 더하면 몇 마디마다 한 프레임씩 오차가 발생합니다.measure --at은 인스턴트가 드로잉되었는지 확인합니다. - 90, 100 및 120 BPM에서 비트는 30 및 60fps(또한 24fps에서 90 및 120, 25fps에서 100)에서 정수 프레임 수입니다. 다른 템포에서는 비트가 14, 14, 15… 프레임 간격으로 떨어집니다. 각 비트가 다운비트부터 계산되면 괜찮습니다.
배치 위치:
- 섹션 변경은 다운비트에, 작품의 가장 큰 전환(리빌, 브랜드)은 프레이즈의 첫 다운비트에.
- 주요 이벤트는 비트에: 컷, 단어 도착, 색상 변경. 보조 움직임은 반 또는 1/4 비트에: 안정화, 그룹 내 지연, 막대 뒤의 레이블.
- "온" 프레임: 컷, 플래시 또는 팝은 첫 프레임에서 비트에 있습니다. 반 비트보다 길고 도착이 포인트인 움직임은 대신 비트에서 끝납니다.
- 빠르게, 절대 늦지 않게: 시청자는 약 45ms(1-2프레임)부터 사운드를 따라가는 그림을 알아차립니다. 한 프레임 빠른 히트는 비트에 있는 것으로 읽히지만, 한 프레임 늦으면 늦은 것으로 읽힙니다.
지속 시간 및 이징
| 움직임 | 길이 | 30fps에서 프레임 수 |
|---|---|---|
| 히트: 플래시 프레임, 강한 충격, 하드 스왑 | 70–130ms (2프레임 미만은 결함으로 읽힘) | 2–4 |
| 작은 움직임: 팝, 넛지, 레이블 페이드 인 | 200–350ms | 6–10 |
| 표준 움직임: 카드 인, 프레임 일부 이동 | 400–600ms | 12–18 |
| 큰 움직임: 히어로 리빌, 큰 푸시 | 700–1000ms | 21–30 |
| 드리프트: 푸시 인, 느린 플로트 | 화면에 보이는 전체 시간 |
- 종료는 취소하는 시작의 60–70% 속도로 실행됩니다.
- 그룹 내 항목을 60–130ms(30fps에서 2–4프레임) 간격으로 지연시키고, 전체 지연 시간을 500ms 미만으로 유지하세요. 더 긴 그룹은 각 항목에 자체 비트를 대신 제공합니다.
- 커브. 도착하는 것은 감속하고, 떠나는 것은 가속하며, 두 장소 사이를 이동하는 것은 양쪽 방향으로 이징합니다. 전체 작품에 대해 역할당 하나의 커브를 선택하고 유지하세요: 커브는 작품의 목소리의 일부입니다.
| 역할 | 커브 | 최고 속도 (평균의 배수) |
|---|---|---|
| 긴 안정화가 있는 시작 | [0.16, 1, 0.3, 1] | 6.3 |
| 더 부드러운 시작 | [0.25, 1, 0.5, 1] | 4.0 |
| 약 10% 오버슈트가 있는 팝 | [0.34, 1.56, 0.64, 1] | 4.6 |
| 종료 | ease-in | 1.7 |
| 두 장소 사이, 와이프, 스윕 | [0.65, 0, 0.35, 1] | 2.9 |
| 회전 | [0.3, 0.3, 0.5, 1] | 1.6 |
| 드리프트, 사운드 페이드, 일정한 회전 | linear | 1.0 |
최고 속도 열은 아래 속도 확인에 사용됩니다. 움직임의 가장 빠른 순간은 평균 속도에 해당 숫자를 곱한 값입니다.
속도 제한
빠른 움직임의 경우, 움직임을 늦추는 대신 움직이는 요소에 motion_blur를 설정하세요("shutter": 180, "samples" 8–16). 기본값이 아닙니다: 빠르게 움직이는 요소에만 적용하고 모든 것에 적용하지 마세요. 그것 없이 요소는 프레임당 하나의 선명한 이미지로 그려지므로, 빠른 움직임은 별도의 복사본으로 표시되며 아래 제한이 적용됩니다. 모든 움직임의 가장 빠른 프레임을 확인하세요: distance × peak ÷ (length in frames).
- 이동: 가장 빠른 프레임에서 움직임의 스텝은 이동 방향으로 움직이는 물체 자체 크기의 절반 미만으로 유지됩니다. 전체 크기를 넘으면 눈은 두 개의 물체를 봅니다.
- 회전: 가장 빠른 프레임에서 45° 미만. 회전하면서 반복되는 것(4-스포크 모양, 12눈금 다이얼)은 프레임당 반복 각도의 절반 미만으로 유지되어야 합니다. 그렇지 않으면 뒤로 회전하는 것처럼 보입니다. 4-스포크의 경우 45° 미만, 12눈금의 경우 15° 미만.
[0.16, 1, 0.3, 1]에서 1초에 3회전은 30fps에서 프레임당 약 200°로 피크에 도달합니다. 이것은 섬광입니다. - 움직이면서 읽기: 읽는 동안 계속 움직이는 텍스트, 얼굴 또는 스크린샷(크롤, 스크린샷 패닝, 긴 드리프트)은 초당 프레임 폭의 최대 15%를 이동합니다. 이것은 7초 이내에 전체 프레임 폭을 이동하는 영화의 규칙입니다.
- 플래시: 1초 동안 최대 3개의 전체 프레임 또는 큰 밝기 플립(글리치 컷 및 섬광 포함).
홀드
- 읽는 시간: 단어당 330ms(초당 약 3단어), 더하기 줄이 도착했음을 인지하는 1비트. 한 줄에 대해 절대 1초 미만이어서는 안 되며 다음 비트로 올림합니다.
- 너무 긴 경우: 약 7초 이상 움직임이 없는 프레임은 정체된 것으로 읽힙니다. 드리프트를 주거나 넘어가세요.
- 끝: 마지막 프레임이 완전하고 정지되어 최소 1초(브랜드 또는 클릭 유도 문안: 1.5초 이상).
안전 영역
그림의 가장자리는 잘리거나, 가려지거나, 간과됩니다. 중요한 것을 이 상자 안에 유지하세요. 배경, 블리드, 배경은 가장자리까지 그리고 그 너머까지 실행됩니다.
| 프레임 | 타이틀 안전: 모든 단어 | 액션 안전: 얼굴, 제품, 액션 |
|---|---|---|
| 와이드 또는 정사각형 (16:9, 4:3, 1:1) | 각 가장자리에서 5% 안쪽 | 각 가장자리에서 3.5% 안쪽 |
| 세로 (9:16, 4:5) | 측면에서 5% 안쪽, 상하에서 12.5% 안쪽 | 각 가장자리에서 3.5% 안쪽 |
1920×1080에서 타이틀 안전은 x 96–1824, y 54–1026입니다. 1080×1920에서는 x 54–1026, y 240–1680입니다. 브리핑에 비디오가 플레이어가 그림 위에 자체 버튼과 캡션을 그리는 피드에서 재생된다고 명시된 경우, 텍스트를 하단 5분의 1 밖으로 유지하세요.
타입
크기는 짧은 쪽의 분수로서의 글꼴의 size입니다.
| 레벨 | 크기 | 1080에서 |
|---|---|---|
| 디스플레이: 후크, 하나의 큰 단어 | 7–12% | 76–130 px |
| 헤드라인 | 5–7% | 54–76 px |
| 본문, 캡션 | 5–6.7% | 54–72 px |
| 레이블, 작은 글씨 | 3.5–4.5% | 38–49 px |
| 읽을 의도가 없는 것 | 3% 미만 | 32 px |
- 단계: 한 프레임의 두 레벨은 최소 1.25배 차이가 나야 합니다. 그보다 작으면 계층 구조가 아닌 실수로 읽힙니다.
- 줄: 최대 42자, 그리고 움직이는 동안 읽히는 것은 최대 두 줄. 후크는 6단어 이하.
- 글꼴: 하나의 패밀리, 두 가지 무게(굵은 디스플레이, 보통 본문)로 멀리 떨어져 있음. 두 번째 패밀리는 명확히 대비될 때만 사용: 산세리프 옆의 세리프 또는 모노.
- 명도 대비 (두 색상의 상대 휘도에서 WCAG 비율): 본문, 캡션 및 레이블의 경우 최소 4.5:1, 디스플레이 크기에서는 최소 3:1. 푸티지나 사진 위에서는 비율이 매 프레임 변경되므로 텍스트에 자체 배경(필, 바, 그림자)을 제공하세요.
절제
- 샷당 하나의 아이디어, 주변에 공간을 둡니다. 부분적으로 읽어야 하는 프레임은 두 개의 샷입니다.
- 세 가지 색상: 배경, 잉크, 하나의 악센트. 악센트는 한 번에 하나만 표시합니다. 두 번째 사용은 첫 번째의 무게를 훔칩니다.
- 한 번에 하나의 초점 움직임, 그리고 최대 하나의 느린 주변 드리프트가 그 아래에.
- 효과는 브리핑에 따라 사용됩니다. 글로우, 글리치, 색수차, 흔들림, 플레어 및 파티클 버스트는 그것을 요구하는 트레일러에 속합니다. 광고나 설명에서는 소음으로 읽힙니다.
- 가짜 크롬 없음. 코너 레이블, 타임코드, 프레임 카운터, "REC" 마크 및 HUD 프레임은 브리핑에서 요청할 때만 들어갑니다.
- 대체물보다 실제 자료. 브리핑의 스크린샷, 푸티지 및 브랜드를 사용하세요. 손으로 다시 그린 제품 UI는 실제 제품 옆에서 잘못 보입니다.