Legal
Third-party notices
The Pinionfall engine incorporates the components below, each under its own licence. Nothing in the Pinionfall licence narrows the rights those licences grant you in the components themselves.
Runtime libraries
| Component | Licence | Used for |
|---|---|---|
| gl-matrix | MIT | vector and matrix maths |
| meshoptimizer / gltfpack | MIT | mesh simplification, glTF compression |
| manifold-3d | Apache-2.0 | mesh booleans that weld tree branches |
| HeadTTS | MIT | neural speech runtime (vendored under public/audio/voice/) |
| Kokoro-82M | Apache-2.0 | speech synthesis model (the ONNX conversion, downloaded from Hugging Face on first use) and voice packs (vendored) |
| Misaki | Apache-2.0 | pronunciation table derived from its G2P gold dictionary (public/audio/voice/modules/pronunciation-gold.mjs) |
| CMUdict 0.7b | BSD-style (Carnegie Mellon University) | English pronunciation dictionary (public/audio/voice/dictionaries/en-us.txt, notice retained in the file) |
| ONNX Runtime Web | MIT | model inference |
| transformers.js | Apache-2.0 | model loading |
| Jinja | MIT | template support bundled with Transformers.js |
| Tokenizers.js | Apache-2.0 | tokenisation bundled with Transformers.js |
| TurboTwig | MIT | procedural tree generation |
| wllama (llama.cpp compiled to WASM) | MIT | the optional on-device NPC dialogue model |
| Qwen2.5-0.5B-Instruct, GGUF quantisation by bartowski | Apache-2.0 | NPC dialogue model, downloaded from Hugging Face on first use, not redistributed |
The complete browser voice licence texts and upstream ONNX component notices are
in public/audio/voice/runtime/, together with RUNTIME-MANIFEST.json, which
records exact versions, sources and byte hashes. The upstream ONNX notice list
covers several build configurations, so some entries do not apply to the browser
binaries. It is retained in full rather than removing upstream attributions.
third-party/compiled-runtime/ retains the complete notices for gl-matrix,
meshoptimizer, Manifold and wllama, including notices for their compiled
dependencies and C/C++ runtimes. Its manifest records locked package identities,
binary hashes, source revisions and extracted source notice locations. The
normal build emits these records under dist/third-party-notices/, linked from
the game’s About window. Keep that directory with distributed browser builds.
The inventory includes conditional upstream components; not every retained
notice necessarily corresponds to code surviving optimisation into a binary.
The complete Kokoro and Qwen Apache texts, font OFL copyright and licence texts,
model attributions, and source hashes for the 26 vendored voice packs are under
third-party/asset-notices/. Normal builds include a readable copy under
dist/asset-notices/, linked from About. Keep it with distributed browser builds.
Orbitron, Share Tech Mono and Rajdhani retain SIL OFL 1.1. Their unchanged font
binaries and local stylesheet are in public/fonts/, with source revisions and
hashes in the asset notice manifest. Keep the complete font notices with those
files. Downloaded model weights and font software retain their upstream rights.
Physics
vendor/rapier3d/ is built from forks of the Dimforge physics stack
(WASM build 9ef2827b):
| Component | Upstream licence | Fork base | Fork |
|---|---|---|---|
| parry | Apache-2.0 | v0.30.2 | pinionfall/parry |
| rapier | Apache-2.0 | v0.35.3 | pinionfall/rapier |
The JavaScript bindings live in rapier/typescript/ (upstream archived rapier.js and
moved them into the rapier repository); the earlier fork’s history is preserved at
pinionfall/rapier.js.
Upstream material retains Apache-2.0 and its applicable notices. Original
Pinionfall contributions are covered by the Pinionfall licence; this does not
narrow the upstream rights. See Apache-2.0 section 4.
Each fork carries NOTICE, FORK-CHANGES.md, the complete commercial licence and
prominent notices in its changed source and configuration files.
The built package includes complete upstream, resolved Rust dependency and
standard-library notices in vendor/rapier3d/licenses/. Its
THIRD-PARTY-NOTICES.md lists components and NOTICE-MANIFEST.json records every
notice’s hash. The inventory includes build tools and procedural macros; not
every listed component necessarily survives optimisation into the binary.
The browser distribution carries the same records under public/physics-notices/,
linked from the game’s About window. Keep applicable notices with distributed
copies of the JavaScript and WebAssembly. node scripts/verify-physics-notices.mjs
checks the inventory against both binaries and the recorded build provenance.
Animation runtime
src/animation/ derives from ossos
by Sketchpunk Labs (MIT): skeletal animation, IK rigs and glTF skin parsing.
Assets
| Asset | Source | Licence |
|---|---|---|
| Creature models | Quaternius (records in assets/quaternius/SOURCES.md) | CC0 |
| Creature textures and two creatures | generated by the author with Meshy (paid tier): the crow and the generic fish from the author’s own images, the land animals’ textures by prompted retexture over the CC0 meshes (records in assets/creatures/SOURCES.md) | proprietary, included under the Pinionfall licence |
| PBR texture sources | Poly Haven | CC0 |
| Character meshes | generated by the author with Meshy (paid tier) | proprietary, included under the Pinionfall licence |
| Character animations | Independently generated Meshy Text to Motion and original local transformations recorded in the provenance ledger | generated output and original local contributions are subject to the applicable provider terms and the Pinionfall licence |
| Character rigs and skinning | Model-specific Meshy rigging and weights, plus original local Blender rigging and weight refinements | incorporated Meshy Service Assets retain their upstream rights; original local contributions are included under the Pinionfall licence |
| Armour, weapon and wing pieces | rigid pieces generated by the author with Meshy and stored in the engine’s own socket-local form with no skeleton; wings built by the author’s Blender script (scripts/blender/build-wings.py) on their own armature | proprietary, included under the Pinionfall licence |
| Terrain, building and vegetation textures | generated by the author | proprietary, included under the Pinionfall licence |
Every shipped character animation records its independent motion source,
retarget, trim and bake dependencies in assets/character/character-motion-library.json,
assets/character/character-clip-provenance.json and each clip’s extras.source.
node scripts/check-animation-provenance.mjs recursively checks every shipped
character clip and its inputs for redistribution evidence, including unused files.
Meshy model-specific rigging and skin weights accompany their generated character
meshes under Meshy’s terms, including the
section 3.1 grant for incorporated Service Assets necessary to exploit Customer
Output. Incorporated upstream elements retain their applicable rights; they are
not represented as exclusively owned Pinionfall templates. A local transformation
does not remove an input’s licence.
No Mixamo animation or rig data is included. node scripts/check-animation-provenance.mjs
refuses both in every shipped GLB: a Mixamo clip, joint name or humanoid joint layout
fails the build.
Generated assets
Settlement props under public/props/ are generated meshes. The toolchain, recorded in
each package’s preparation.json under toolchain:
| Stage | Tool | Licence | Redistributed |
|---|---|---|---|
| Generator | microsoft/TRELLIS.2-4B | MIT | no (weights) |
| Image encoder | facebook/dinov3-vitl16 | DINOv3 License (royalty-free, with use restrictions; gated) | no (weights) |
| Mesh extraction | cumesh, FlexGEMM, utils3d | MIT | no |
| Texture bake | Original Pinionfall UV rasteriser (scripts/trellis/uv_rasterize.py) and modified Microsoft o-voxel exporter (scripts/trellis/o_voxel_bake.py) | MIT; copyright and permission notices accompany the scripts | yes (scripts and baked textures) |
| Reference images | OpenAI gpt-image (API), output owned by the author under OpenAI’s Services Agreement; eight fruit and berry packages use reference images supplied by the author | not applicable | no |
Rerunning the generator needs your own Hugging Face access to the gated encoder weights. Do not install the nvdiffrast / nvdiffrec wheels distributed with some TRELLIS ports: they are licensed for non-commercial use only and the workshop does not need them.
MIT copyright and permission notices
The following notices apply to the named components, including their substantial portions incorporated in source files or browser bundles. The full MIT permission and warranty text below applies separately to each listed copyright notice.
| Component | Copyright notice |
|---|---|
| gl-matrix | Copyright (c) 2015-2021, Brandon Jones, Colin MacKenzie IV. |
| meshoptimizer | Copyright (c) 2016-2025 Arseny Kapoulkine |
| gltfpack | Copyright (c) 2016-2026 Arseny Kapoulkine |
| ossos | Copyright (c) 2021 Sketchpunk Labs |
| HeadTTS | Copyright (c) 2025 Mika Suominen |
| ONNX Runtime | Copyright (c) Microsoft Corporation |
| TurboTwig | Copyright (c) 2026 Cyril Monkewitz (3merillon) https://3merillon.com |
| wllama | Copyright (c) 2024 Xuan Son NGUYEN |
| TRELLIS.2 / o-voxel exporter | Copyright (c) Microsoft Corporation. |
| Pinionfall UV rasteriser | Copyright (c) 2026 Cyril Monkewitz |
Permission is hereby granted, free of charge, to any person obtaining a copyof this software and associated documentation files (the "Software"), to dealin the Software without restriction, including without limitation the rightsto use, copy, modify, merge, publish, distribute, sublicense, and/or sellcopies of the Software, and to permit persons to whom the Software isfurnished to do so, subject to the following conditions:
The above copyright notice and this permission notice shall be included in allcopies or substantial portions of the Software.
THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS ORIMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THEAUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHERLIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THESOFTWARE.Component-specific notices also accompany ossos-derived code in
src/animation/LICENSE-ossos.txt, the browser inference runtime in
public/audio/voice/runtime/LICENSE-onnxruntime.txt, and the texture-bake
scripts in scripts/trellis/LICENSE-o-voxel.txt and
scripts/trellis/LICENSE-uv-rasterize.txt. The existing HeadTTS, Misaki,
Transformers and CMUdict notices remain with their respective distributions.
Other licences and notices for compiled dependencies continue to apply.
This site
dev.pinionfall.com is built with Astro and Starlight (MIT) and self-hosts the Orbitron and Share Tech Mono typefaces (SIL Open Font License 1.1). Sign-in and payments, when live, are provided by Clerk and Stripe under their own terms.