# Khronos sunglasses — website test asset

Model, textures and `preview.jpg` source screenshot by **Eric Chadwick**, © 2024 **Darmstadt Graphics Group GmbH**.
Licensed under [Creative Commons Attribution 4.0 International](https://creativecommons.org/licenses/by/4.0/legalcode).

[Original model, reference photos and authoring notes](https://github.com/KhronosGroup/glTF-Sample-Assets/tree/main/Models/SunglassesKhronos)
· [Original GLB download](https://raw.githubusercontent.com/KhronosGroup/glTF-Sample-Assets/main/Models/SunglassesKhronos/glTF-Binary/SunglassesKhronos.glb).

The Khronos and 3D Commerce logos remain on the original earhook texture.
Their separate [logo terms](LOGO-LICENSE.txt) apply; the model license does not
grant permission to use those marks outside this model. No endorsement is implied.

## Changes made for Reflektit

`sunglasses.glb` is an adaptation, not the original download. We flattened the
authored transforms and converted metres to millimetres by exactly 1000; separated
the existing left/right lens triangles; grouped the front and each temple; and
added the loader's rigid-part contract. We retained all 13,396 triangles, normals,
UVs, materials and the embedded logo texture. Volume thickness and attenuation
distance use the same unit conversion. No fit-to-face scaling or baked lighting
was introduced. Prepared file: 452,604 bytes.

Source SHA-256: `25d72dd0869c99f94a3c0d6dfe0707714eca056e531f6ff77e7545719c86ab8c`.
From the repository root, reproduce using the downloaded original:

```sh
node tools/prepare-khronos-sunglasses.mjs /path/to/SunglassesKhronos.glb public/frames/khronos/sunglasses.glb
npm run assets:validate -- src/widget/landing/khronos-catalogue.json
```

## What this sample can demonstrate

This is a model inspired by physical sunglasses, **not an exact retail SKU**.
The author intentionally altered its design, and describes a roughly 150 mm model
versus a 145 mm physical reference. We preserve the model's authored size.
The prepared front measures 149.844 mm; overall width is 150.501 mm.

Catalogue dimensions are mesh-derived: lens width/height and bridge gap use lens
bounds, rim stock is approximate, and the 150 mm temple length is a rounded
centreline estimate (hinge plus centres of 10 mm depth bins). They are **not
independent physical measurements**. Dimensional QA here catches conversion and
missing-part errors; its numerical pass does not establish physical accuracy.
`totalHeightMm` is intentionally undeclared. Anchors likewise come from the mesh:
original hinge pivots, lens bounds centre, centre bridge lower edge, and approximate
earhook contact points. They have not been fitted to measured wearers.

The authored iridescent exterior lenses use IOR 1.0; this sample is not evidence
of prescription-lens refraction. Metal and lenses use runtime PBR lighting.
This test download keeps its small PNG and uncompressed geometry, with no low LOD;
production Meshopt/KTX2 authoring and reference-device performance remain pending.

Open `/try-on.html` and choose **Open my mirror**, then the camera start control.
The sample is selected first. Wire and acetate GLB samples are also available in the website selector.
`/test/e2e/khronos/` renders the actual GLB on a synthetic head at −60°, 0°, +60°,
plus a debug view, without requesting a camera. No realism or phase gate is closed
by those synthetic checks.
