svg-techo은(는) 무엇을 하나요?
assets/lib/에 있는 재사용 가능한 JavaScript 모듈을 사용합니다. 생성기 매개변수를 변경하여 외형을 변경합니다. 작업에 새로운 동작이 필요할 때 적절한 모듈을 확장한 다음, 정상 진입점을 확인합니다.
진입점
assets/lib/index.mjs는materialKinds,svgKinds,referencePresets,renderSvg(kind, options)및createLightRenderer(canvas, options)를 내보냅니다.assets/lib/index.d.mts는 TypeScript 선언을 제공합니다.scripts/render-svg.mjs는 Node CLI입니다.scripts/self-test.mjs는 기하학, 입력 범위, 결정론, 루프 및 RGBA 입력을 확인합니다.scripts/browser-check.html은 SVG 디코딩, WebGL, 알파, 위상 및 폐기를 확인합니다.
이러한 경로는 이 SKILL.md를 기준으로 해석합니다. 가져오기 전에 assets/lib/ 디렉토리 전체를 대상 프로젝트의 버전 관리된 소스에 복사하고 내부 모듈 가져오기를 유지합니다.
워크플로우
- 에셋의 목적, 치수, 팔레트, 애니메이션 및 투명도 요구 사항을 파악합니다. 색상을 선택하기 전에 프로젝트의 기존 디자인 토큰을 읽습니다.
- API 참조를 읽습니다.
referencePresets[kind]를 복사하고 생성기의 중첩된options[kind]구성을 편집합니다. 반지름, 간격, 개수 및 선 두께의 의미를 확인합니다. - 웹사이트 또는 마케팅 비디오의 경우 통합 가이드의 관련 섹션을 읽습니다. 나중에 버전에서 에셋을 재현할 수 있도록 매개변수와 시드를 프로젝트에 보관합니다.
- 코드를 실행하고 실제 출력을 검사합니다. SVG 치수, 투명도 및 클리핑을 확인합니다. WebGL 컴파일, 렌더링 및 정리를 확인합니다. 대상 워크플로우에서 비디오 프레임 수, 루프 전환 및 알파를 확인합니다.
- 요청된 코드, 호출 예제, 구성 및 출력 파일을 제공합니다. 사용된 실제 매개변수를 문서화합니다.
모듈
| 모듈 | 책임 |
|---|---|
geometry.mjs | geometry-a, geometry-b 및 dot-matrix로 디스패치 |
dot-matrix.mjs | 도트 치수, 가장자리 간격, 모양 및 레이아웃 |
fields.mjs | contours, halftone, ASCII 및 pixel code에 대한 fields-audited로 디스패치 |
light.mjs | 명시적 위상이 있는 WebGL 스트릭 및 불꽃 렌더링 |
common.mjs | 공유 유효성 검사, 시드 기반 난수, 위상 정규화, XML 이스케이프 |
확장 규칙
- SVG 생성기는 순수하고 결정론적으로 유지합니다. 호출자가 특정 매개변수를 변경하지 않는 한 정적 생성기는 정적으로 유지합니다. WebGL 및 모션이 활성화된 contours는 위상을 허용합니다.
- 비디오 프레임 전체에서 시드를 고정합니다. 애니메이션 매개변수를 프레임 번호에서 파생합니다.
- 종류나 매개변수를 추가할 때 내보내기, 선언, 매개변수 문서 및 관련 검사를 업데이트합니다.
- React, Three.js 또는 Remotion에 적용할 때 라이브러리를 재사용합니다.
- 도트 매트릭스는
dotMatrix.dotSize,spacing,layout및range를 사용합니다. 기본 지름은 8이고 가장자리 간격은 24입니다. 밀도는 간격 또는 행/열을 따릅니다. - 투명 그래픽을 의도한 배경에서 검사합니다. 대상 편집기에서 디코딩된 비디오 알파를 검증합니다.
- 기계 판독 가능한 바코드에는 비즈니스 데이터와 표준 인코더를 사용합니다.
예제 작업
- 브랜드 색상의 contour SVG를 생성하고 해당 매개변수를 유지합니다.
- Remotion 프레임 번호에서
hudLines.rotation을 애니메이션합니다. - 제품 이미지 RGBA를 하프톤 알파 마스크 또는 ASCII 입력으로 사용합니다.
- 루핑 오버레이를 위해 라이트 렌더러의 방향 및 에너지 매개변수를 조정합니다.