@hatiolab/figure-model 0.1.9 → 0.1.11

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
@@ -69,6 +69,8 @@ const { errors, violations } = validate(source)
69
69
  | 코드 | 언제 |
70
70
  | -------------------- | -------------------------------------------------------- |
71
71
  | `missing-shape-path` | `polygon` 인데 `shape.path` 가 없거나 점이 3 개 미만이다 |
72
+ | `hollow-too-thick` | 벽이나 바닥이 치수를 다 먹는다 — 팔 안쪽이 남지 않는다 |
73
+ | `hollow-not-convex` | 오목한 `polygon` 은 아직 못 판다 — 안쪽 테가 제 몸을 가로지른다 |
72
74
  | `bad-shape-point` | `shape.path` 의 점이 `{ x, y }` 가 아니다 |
73
75
 
74
76
  ### 재질
@@ -84,12 +86,18 @@ const { errors, violations } = validate(source)
84
86
  | ---------------- | -------------------------------------------- |
85
87
  | `missing-repeat` | `sizing` 이 `'repeat'` 인데 `repeat` 가 없다 |
86
88
 
87
- ### 애니메이션
89
+ ### 움직임
88
90
 
89
- | 코드 | 언제 | 왜 |
90
- | --------------- | ------------------------ | ---------------------------------------------------------------------------------------------- |
91
- | `missing-axis` | 회전인데 `axis` 가 없다 | 어느 축으로 회전하는지 모른다 |
92
- | `missing-pivot` | 회전인데 `pivot` 이 없다 | 없으면 회전축이 부품 **자기 중심**이 된다. 교반 축이 몸체 가운데를 돌아야 하면 결과가 완전히 달라진다 |
91
+ | 코드 | 언제 | 왜 |
92
+ | ------------------------ | --------------------------------------------- | ---------------------------------------------------------------- |
93
+ | `missing-channels` | clip 에 `channels` 가 없거나 비었다 | 무엇을 움직이는지 모른다 |
94
+ | `unknown-channel-target` | `channels[].target` 이 없는 부품을 가리킨다 | 조용히 아무것도 안 움직인다 |
95
+ | `too-few-keys` | `keys` 가 둘 미만이다 | 하나짜리는 움직임이 아니라 자세 하나다. `transform` 이 그 자리다 |
96
+ | `keys-out-of-order` | 키의 시각이 앞의 것보다 크지 않다 | 표본추출이 뜻을 잃는다. 화면에서는 「이상하게 움직인다」로만 보인다 |
97
+
98
+ clip 의 이름은 부품과 같은 코드를 쓴다 — 없으면 `missing-name`, 겹치면 `duplicate-name`.
99
+ 경로 · `drive` · `interpolation` 이 목록 밖이면 `not-allowed`, 키의 시각이 음수면
100
+ `not-positive` 다.
93
101
 
94
102
  ### 예외 표면
95
103
 
@@ -118,6 +126,9 @@ const { errors, violations } = validate(source)
118
126
  | `segments-off-preset` | `segments` 가 프리셋(8 · 12 · 16 · 24 · 32 · 48) 밖이다. 값은 쓰이지만 geometry 키가 그만큼 늘어난다 |
119
127
  | `segments-ignored` | 곡면이 없는 프리미티브에 `segments` 를 주었다 |
120
128
  | `repeat-ignored` | `sizing` 이 `'repeat'` 가 아닌데 `repeat` 를 주었다 |
129
+ | `anchor-ignored` | `sizing` 이 `'scale'` 인데 `anchor` 를 주었다 — 상자와 함께 커지는 부품은 붙잡을 면이 없다 |
130
+ | `hollow-ignored` | 밀어 만드는 것이 아닌 프리미티브에 `shape.hollow` 를 주었다 |
131
+ | `pivot-ignored` | `rotation` 이 아닌 채널에 `pivot` 을 주었다 — 아무 일도 안 일어난다 |
121
132
 
122
133
  ### 예산
123
134
 
@@ -125,7 +136,7 @@ const { errors, violations } = validate(source)
125
136
  | --------------------------- | -------------------------------------------- | --------------------------------------------------------------------------------------------- |
126
137
  | `detail-level-missing` | — | 등급이 없으면 부품 수 예산을 잡을 수 없다 |
127
138
  | `too-many-parts` | `PART_LIMIT[detailLevel]` (S 3 · M 8 · L 20) | |
128
- | `too-many-animation-points` | `LIMITS.animationPoints` (2) | 포인트마다 묶음이 하나 늘고, 프레임마다 갱신이 는다 |
139
+ | `too-many-animated-parts` | `LIMITS.animatedParts` (2) | 움직이는 부품마다 묶음이 하나 늘고, 프레임마다 갱신이 는다 |
129
140
  | `too-many-material-groups` | `LIMITS.materialGroups` (3) | **자산당 draw call 이 는다.** 세는 단위는 `groupKeyOf` — 컴파일러가 합치는 단위와 같은 식이다 |
130
141
  | `too-many-transparent` | `LIMITS.transparentMaterials` (1) | 투명 재질은 별도 정렬 경로를 탄다 |
131
142
  | `too-many-always-labels` | 1 | `'always'` 라벨은 대량 배치에서 DOM·텍스처를 늘린다 |
@@ -143,7 +154,7 @@ draw call = 합쳐진 묶음 하나당 1
143
154
 
144
155
  | 무엇 | 왜 |
145
156
  | --- | --- |
146
- | 애니메이션이 걸린 부품 | 합치면 그 부품만 따로 움직일 수 없다 |
157
+ | clip 이 움직이는 부품 | 합치면 그 부품만 따로 움직일 수 없다 |
147
158
  | `sizing` 이 `scale` 이 아닌 부품 | 합친 geometry 는 변환을 하나만 받는다 |
148
159
  | `repeat` 부품 | 한 부품이 여러 mesh 다 |
149
160
 
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@hatiolab/figure-model",
3
- "version": "0.1.9",
3
+ "version": "0.1.11",
4
4
  "description": "Figure 저작 결과의 정본 형식과 검증 — 재질별로 병합되고 이름이 붙은 부품 그래프. 3D 로 저작한 형상 하나가 씬 컴포넌트로 서는 데 필요한 것을 담는다.",
5
5
  "keywords": [
6
6
  "figure",