# サードパーティ製アセット

`js/assets/` の中身はこのリポジトリの著作物ではありません。すべて商用利用が
可能なライセンスですが、いずれも**表示（attribution）が条件**です。デモを
再配布・公開する場合は、このファイルの内容もあわせて配布してください。

## 3Dフレーム — `frames3d/`

3つのフレームはすべて [Creative Commons Attribution 4.0
International](https://creativecommons.org/licenses/by/4.0/) （CC BY 4.0）です。
CC BY 4.0 は商用利用・改変・再配布を許可し、その代わりに作者名・出典・
ライセンスの表示と、改変した旨の記載を求めます。

| ファイル | 元タイトル | 作者 | 出典 | ライセンス |
| --- | --- | --- | --- | --- |
| `acetate-square.glb` | Black Glasses | [nazarchi091](https://sketchfab.com/nazarchi091) | [Sketchfab](https://sketchfab.com/3d-models/black-glasses-8425ebedb9334fc3a1e6d7a72f5612b4) | CC BY 4.0 |
| `round-metal.glb` | Glasses | [CG](https://sketchfab.com/CGFT) | [Sketchfab](https://sketchfab.com/3d-models/glasses-ea9725ad867c42a684bc58d21039e8bd) | CC BY 4.0 |
| `aviator.glb` | Aviator sunglasses | [Kimppo](https://sketchfab.com/Kimppo) | [Sketchfab](https://sketchfab.com/3d-models/aviator-sunglasses-00d1cb5aa82745228a3b764c97f867de) | CC BY 4.0 |

**改変の内容**（CC BY 4.0 が記載を求める項目）: 3ファイルすべてについて、
[glTF-Transform](https://gltf-transform.dev/) 4.4.2 で以下を適用しました。

- `simplify` でポリゴンを削減（120,640→30,160 / 11,556→10,396 / 55,168→30,462 三角形）
- `weld`・`dedup`・`prune` で重複頂点・未使用プロパティを除去
- テクスチャを最大1024pxのWebPに再圧縮
- `KHR_mesh_quantization` で頂点属性を量子化

元ファイルは [Objaverse](https://objaverse.allenai.org/) 経由で取得しました。
再取得と再変換の手順は [`../README.md`](../README.md) の「3Dフレーム」にあります。

なお実行時には、各マテリアルの色・粗さ・金属度はカラーウェイの値で上書きされ
ます（[`../src/frames3d.js`](../src/frames3d.js)）。使っているのは形状と、
どのマテリアルがレンズ・リム・テンプルなのかという区別だけです。

## 顔モデル — `canonical_face_model.obj`

MediaPipe の canonical face model です。468頂点・898三角形で、FaceMesh の
ランドマーク番号がそのまま頂点番号になっています。頭部姿勢を解くときの基準形状
として、また顔の奥行きオクルーダーとして使っています。

- 出典: [google-ai-edge/mediapipe](https://github.com/google-ai-edge/mediapipe/blob/master/mediapipe/modules/face_geometry/data/canonical_face_model.obj)
- ライセンス: Apache License 2.0
- 改変: なし（バイト単位で上流と同一）

## three.js

`setup.sh` が取得するため、このディレクトリには入っていません（`js/three/`）。
[three.js](https://threejs.org/) は MIT ライセンスです。
