# Model attribution

Ferrari and BMW models are licensed under [Creative Commons Attribution 4.0](https://creativecommons.org/licenses/by/4.0/). The Boeing 747-400 asset is GPL-2.0 licensed, as detailed below.

## Ferrari 458 Italia

Author: **vicent091036**.

- [Original model](https://sketchfab.com/models/57bf6cc56931426e87494f554df1dab6)
- [Three.js demo with author attribution](https://threejs.org/examples/webgl_materials_car)
- [Source asset](https://github.com/mrdoob/three.js/blob/r160/examples/models/gltf/ferrari.glb)

## BMW M4 Competition M Package

Author: **𝙎𝙍𝙏 𝙋𝙚𝙧𝙛𝙤𝙢𝙖𝙣𝙘𝙚™ (TheRealSRT)**.

- [Original model](https://sketchfab.com/3d-models/bmw-m4-competition-m-package-5c0a2dafb1ad408d9fc9eeef9aee531b)
- [Asset mirror and attribution](https://github.com/lukaizj/car-mod-saas/blob/main/public/models/ATTRIBUTION.md)
- Source file: `public/models/bmw-m4.optimized.glb` in the above repository.

## Boeing 747-400

Author: **Gijs de Rooy and the FlightGear 747-400 contributors**, with subsequent Lincoln Works improvements. [Full author list](assets/747-source/AUTHORS).

- [Source repository](https://github.com/LincolnWorks-FlightGear/747-400)
- [GPL-2.0 license](assets/747-source/COPYING)
- Corresponding AC3D geometry, original textures and assembly XML: `assets/747-source/`.
- Conversion and modifications: `scripts/import-747.cjs`, `scripts/pack-747.cjs`. The converted `assets/real-aircraft.js` and `assets/747-texture-*.webp` remain GPL-2.0 assets.

Changes: AC3D surfaces triangulated and grouped by material and damage region; cockpit and four engines assembled using source offsets; coordinates converted; positions/normals quantized; textures resized to local WebP; aircraft-specific soft-body nodes and detachable nose, engine and wing regions added. These changes do not imply endorsement by FlightGear or Boeing.

## Changes and software

For Crash Lab, geometry was decoded, simplified, scaled, reoriented and quantized; wheel groups and damage panels were separated, materials adjusted, textures resized, and GPU deformation bindings added. BMW interior geometry was retained. Vehicle geometry is bundled in `assets/vehicle-model.js`, `assets/real-bmw.js` and `assets/real-aircraft.js`; corresponding BMW / aircraft textures are local WebP files. These are modified assets, not official manufacturer models.

Road environments and supplemental chassis / suspension details are generated locally.

[Three.js r160](https://github.com/mrdoob/three.js/blob/r160/LICENSE) is MIT licensed. Build-time decoders: Draco3D (Apache 2.0) and meshoptimizer (MIT). Neither decoder is required at runtime.

## Airbus A380

Authors: **Ampere K, Innis Cunningham, Fahim Dalvi, S. Hamilton and contributors**.

- [Original FlightGear master branch](https://github.com/scotth1/A380/tree/master), independent from A380-omega.
- [FlightGear asset and GPLv2+ license information](https://wiki.flightgear.org/Airbus_A380). [License text](assets/a380-source/COPYING).
- Corresponding AC3D surfaces, original PNG atlases and assembly XML: `assets/a380-source/`. Runtime model and textures retain GPL-2.0-or-later.
- Modifications: source assembly offsets applied to wings, tail, nacelles and cockpit; hidden light volumes omitted; turbine discs and blades added; UVs and normals packed; deformable surface bindings and damage regions added.

## Antonov AN-225 Mrija

Author: **Herbert Wagner and contributors**.

- [Original FlightGear repository](https://github.com/HerbyW/AN-225-Mrija). [GPL-2.0 license](assets/an225-source/COPYING).
- Corresponding exterior AC3D model and original PNG atlas: `assets/an225-source/`. Runtime model and textures retain GPL-2.0. The reference view configuration carries its own GPLv3-or-later header.
- Modifications: six engines, double tail, original gear and fuselage retained; coordinates converted and quantized; geometry grouped by damage regions; wing nodes and deforming surface collisions added.

A380 and AN-225 conversion scripts: `scripts/import-heavy-aircraft.cjs` and `scripts/pack-heavy-aircraft.cjs`; local texture bundle: `scripts/pack-textures.cjs`. No manufacturer endorsement is implied.
