# Palm Court asset credits

## Human characters and animation
Microsoft Rocketbox Avatar Library — Microsoft Corporation, MIT license.
https://github.com/microsoft/Microsoft-Rocketbox
Full license included in ROCKETBOX-LICENSE.md.

Characters: Male_Adult_01, Female_Adult_01, Male_Adult_03.
Animations: m_idle_neutral_01, m_walk_neutral, m_dancing_neutral, m_sit_chair_idle_neutral_01, m_drink_drinking.
Adaptations: FBX converted to glTF, textures resized to 1024px, materials converted to PBR, rotation animation channels mapped to matching bones. Source meshes remain intact.

## Environment assets
Poly Haven — CC0 public domain. https://polyhaven.com/license

- Potted Plant 01: https://polyhaven.com/a/potted_plant_01
- Outdoor Table Chair Set 01: https://polyhaven.com/a/outdoor_table_chair_set_01
- Painted Wooden Bench: https://polyhaven.com/a/painted_wooden_bench
- Concrete Pavement: https://polyhaven.com/a/concrete_pavement
- Cobblestone Floor 08: https://polyhaven.com/a/cobblestone_floor_08
- Aerial Asphalt 01: https://polyhaven.com/a/aerial_asphalt_01
- Sunflowers (Pure Sky): https://polyhaven.com/a/sunflowers_puresky

1K source textures and HDRI are used to keep the browser download manageable.

Café PBR additions (CC0): [Stone Tiles](https://polyhaven.com/a/stone_tiles), Christopher Melani; [Wood Table Large](https://polyhaven.com/a/wood_table_large), Dimitrios Savva. Diffuse, OpenGL normal and roughness maps at 1K.

Palm tree v2 by Yughues / Nobiax, CC0: https://opengameart.org/content/palm-tree-v2 . Converted OBJ to glTF; TGA diffuse/normal maps converted to PNG. Source geometry 1,032 triangles, 1K textures. Original readme included in palm-tree.

## Common Ground screening
Big Buck Bunny trailer © 2008 Blender Foundation / www.bigbuckbunny.org. Creative Commons Attribution 3.0. https://peach.blender.org/about/ . Video transcoded to stereo H.264 for browser compatibility from https://media.w3.org/2010/05/bunny/trailer.mp4 .

## Detailed parked car
[FREE] Datsun 280Z by Martin Trafas / TinoD2, CC BY 4.0.
Source: https://sketchfab.com/3d-models/free-datsun-280z-0789ab2ece9442de94b3c41595e0ecbd
License: https://creativecommons.org/licenses/by/4.0/
Changes: embedded images resized to at most 1024 pixels; original mesh geometry retained, scaled to 4.4m length and positioned in the street. Full attribution in datsun-280z/ATTRIBUTION.md.

## Promenade bench and coastal frontage
Original Palm NETWORK procedural geometry, created for this project. Bench uses existing Poly Haven Wood Table Large CC0 surface maps. The approved AI-generated bench concept is an art-direction reference, not the runtime asset.

Coastal sky upgrade: Kloofendal 48d Partly Cloudy (Pure Sky), Greg Zaal / Jarod Guest, Poly Haven CC0. 4K HDR unmodified. https://polyhaven.com/a/kloofendal_48d_partly_cloudy_puresky

PALM SPRING fountain geometry, procedural surface shaders and paving course layout are original Palm NETWORK work. The approved generated fountain image in docs/concepts is a design reference, not an external 3D asset or screenshot. New paving reuses the credited CC0 concrete_pavement photograph for surface grain.

### Refined paving and fountain stone (September 2026)
- Granite Tile — Charlotte Baglioni / Poly Haven, CC0: https://polyhaven.com/a/granite_tile . Unmodified 2K diffuse, OpenGL normal, and roughness JPEG maps in `granite-tile/`. Color grading for pale granite, dark bands and green inlay is applied at runtime.
- Marble 01 — Rob Tuytel / Poly Haven, CC0: https://polyhaven.com/a/marble_01 . Unmodified 2K diffuse, OpenGL normal, and roughness JPEG maps in `marble-01/`, mapped to individual basin coping blocks. This is a marble material substitution, not a scanned travertine claim.
- License: https://polyhaven.com/license

### Beach Promenade A
- Aerial Beach 01 — Rob Tuytel / Poly Haven, CC0: https://polyhaven.com/a/aerial_beach_01 . Original 2K diffuse, OpenGL normal and roughness maps in `beach-sand/`; runtime wet-sand grading and texture scale adjusted for gameplay.
- `beach-shrub/` is a derived, simplified version of Poly Haven Potted Plant 01 (CC0; credited above). Only stem and leaf meshes retained. Meshoptimizer simplification preserves texture coordinates and normals; existing source textures are reused. 999 stem + 9,953 leaf triangles; no pots or pebbles.
- `home-garden-shrub/` is a further CC0 derivative of Poly Haven Potted Plant 01: [source](https://polyhaven.com/a/potted_plant_01), [license](https://polyhaven.com/license). It retains only the stem and leaf meshes and the original local textures, reduced with meshoptimizer to 433 stem + 2,692 leaf triangles. Rebuild it with `node tools/home-studio-v1/garden-lod.mjs`.
- Beach paths, planted walls, railings, lifeguard hut, canvas umbrellas/loungers and procedural ocean/foam are original Palm NETWORK geometry/shaders. Stone, timber, palms and sky reuse the credited assets above. Concept A is an AI-generated art-direction image, not a screenshot of the running game.

### After Hours rooftop B
Original Palm NETWORK exterior, rooftop furnishings, railing and straight-stair geometry. Reuses the credited Poly Haven marble, wood and simplified Potted Plant 01 meshes/textures. The three generated rooftop concept images are design references, not rendered game assets.


### Coastal character derivative (local draft)
`characters/coastal-v1`: derived from the existing Microsoft Rocketbox male avatar under MIT; original copyright/license retained in `characters/coastal-v1/LICENSE.md`. Original base rig, body, animation and UV layout retained. Palm NETWORK / Astra authored the new swept hair geometry/strand atlas, minor face adjustments, eye material separation and generated skin/clothing repaints. This is an experimental derivative, not a newly scanned person or finished AAA asset. See `docs/CHARACTER-UPGRADE.md`.

## City modular wardrobe derivative (September 2026)
Microsoft Rocketbox Female_Party_01 and Female_Party_02, Microsoft Corporation, MIT.
https://github.com/microsoft/Microsoft-Rocketbox/tree/master/Assets/Avatars/Adults
License: characters/city-v3/LICENSE.md.
Adaptations: f010 camisole/shorts and f022 skirt/legs/sandals retargeted to the existing City f001 skeleton, fitted neck/leg joins, bounded body morphs and skin-safe clothing colors. Original City outfit retained. Source skin and garment atlases used at 2048px; no generated replacement skin textures.

Potted-plant optimization: `potted-plant-optimized` is an attribute-preserving meshoptimizer derivative of the CC0 Poly Haven Potted Plant 01 listed above. Original photographed textures/materials and the original asset remain available. Generation script: `docs/verification/build-potted-plant-lod.mjs`; geometry report: `docs/verification/potted-plant-optimization.json`.

### Full-resolution GPU-compressed environment maps (September 2026)
UASTC KTX2 derivatives of the credited CC0 Granite Tile, Marble 01, Aerial Beach 01, Wood Table Large and Stone Tiles JPEG maps. Original JPEGs remain available. Dimensions and RGB normal channels are retained; lower-left row storage matches the existing WebGL image upload. Authored mipmaps and lossy UASTC encoding use Khronos KTX-Software 4.4.2 (Apache 2.0), quality 3 with lossless Zstd level 18. Reproduction and numerical validation: `scripts/compress-world-textures.py` and `scripts/verify-world-textures.py`.

Basis Universal transcoder JS/WASM in `basis/` are distributed with Three.js 0.185.1 and licensed under Apache 2.0; full license and upstream README accompany the files. Source: https://github.com/BinomialLLC/basis_universal . Loader/decoder versions are kept together.

### Beach café collection 01 (September 2026)
`beach-cafe-v1/`: original Palm Network chair, table and umbrella geometry, UVs, baked wood/canvas base-color and tangent-space normal maps, and actual model renders, authored in Blender 4.5.13 LTS. No external mesh or texture source and no Higgsfield/Meshy generation was used. Editable source and reproduction scripts: `asset-sources/beach-cafe-v1/`. Art direction follows the owner's selected Beach Promenade A concept; the concept is separate from the exported models and their runtime review.

## Coastal cottage material pass — 2026-09-19
- `materials/coastal_roof_*`: [Clay Roof Tiles 02](https://polyhaven.com/a/clay_roof_tiles_02), Amal Kumar / Poly Haven, CC0-1.0. Native 2.5 m repeat; source OpenGL normal and ARM maps retained in `work/neighborhood-surfaces`.
- `materials/coastal_plaster_*`: [White Plaster 02](https://polyhaven.com/a/white_plaster_02), Rob Tuytel / Poly Haven, CC0-1.0. Relief/roughness only; owner-selected wall paint is preserved.
- `materials/coastal_soil_*`: [Farm Soil](https://polyhaven.com/a/farm_soil), Amal Kumar / Poly Haven, CC0-1.0. 2 m repeat; replaces tinted sand in home beds.
- `assets/coastal-agapanthus/model.glb`: original Palm Blender-authored flowering plant, authored with `tools/neighborhood/flower.py`; editable source `work/coastal-agapanthus/coastal-agapanthus.blend`. 4,654 triangles, three materials, no external textures. No AI-generated 3D provider or paid asset used.
- Poly Haven asset license: https://polyhaven.com/license . Selected source URLs and SHA-256 hashes: `tools/neighborhood/sources.json`. KTX2 versions preserve source dimensions; uncompressed fallbacks remain available.

### Porch climber — 2026-09-20
- `assets/coastal-climber/model.glb`: original Palm bougainvillea geometry authored in Blender 4.5.13 LTS by Astra with `tools/neighborhood/climber.py`; editable source `work/coastal-climber/coastal-climber.blend`. Three material batches, 12,702 triangles, no external textures or paid generation. Compact 0.38 m silhouette, 2.12 m tall, ground origin. Only full-detail optional porches mount this asset.

Painted plaster update (2026-09-20): the same White Plaster 02 CC0 diffuse scan now contributes neutral luminance/trowel variation. `package-surfaces.py` removes the raw scan colour and calibrates it to a light painted finish; runtime multiplies by the unchanged player paint value. Normal relief is retained. Source hash recorded in `tools/neighborhood/sources.json`.

### Gaming chair — 2026-09-22 (draft)
- `home-studio-v1/gaming-chair.glb`: original Palm gaming chair authored in Blender 4.5.13 LTS by Astra with `tools/home-studio-v1/gaming-chair.py` (shared `build.py` pipeline, same generated linen maps); editable source `work/home-studio-v1/gaming-chair.blend`. Four materials, 23,824 triangles, no external mesh/texture, no provider generation or paid credits. Draft pending the owner's visual acceptance.

### Surfboard and A-frame rack — 2026-09-22 (draft)
- `beach-surf-v1/surfboard.glb` and `beach-surf-v1/surfboard-rack.glb`: original Palm 7'0" funboard and wooden beach rack authored in Blender 4.5.13 LTS by Astra with `tools/beach-surf-v1/surfboard.py` (same GLB export settings as the home-studio collection; renders via `tools/beach-surf-v1/render.py`). Flat-colour materials only: 4,374 triangles per board, 14,202 for the rack with three colourway boards. No external mesh/texture, no provider generation or paid credits. Draft pending the owner's visual acceptance.
- `beach-sports-v1/football.glb`, `volleyball.glb`, `court.glb`, `scoreboard.glb` and `rack.glb`: original Palm Coastal Classic (owner-selected A) beach sports assets authored in code with Blender 4.5.13 LTS via `tools/beach-sports-v1/build.py`; the football's pebbled leather is a baked procedural texture made in the same script. No external mesh/texture, no provider generation or paid credits. Draft pending the owner's in-game visual acceptance (see docs/ASSET-AUDIT.md).
- `home-studio-v1/porch-swing.glb` and `home-studio-v1/firepit-table.glb`: original Palm Live & Play pieces 06 and 07 authored in Blender 4.5.14 LTS with `tools/home-studio-v1/outdoor-liveplay.py` (shared `build.py` pipeline); editable source `work/home-studio-v1/*.blend` (untracked). Swing: 19,808 triangles, five materials (existing generated linen and timber maps). Firepit: 7,948 triangles, three materials with original generated FFT-noise concrete and lava-rock maps. No external mesh/texture, no provider generation or paid credits. Draft pending the owner's visual acceptance.


## Everyday motion library (draft, 2026-09-28)
`motions/everyday.glb` (jog, sit-down, jump, type, clap): CMU Graphics Lab Motion Capture Database (mocap.cs.cmu.edu), trials 35_17, 143_18, 16_01, 79_85, 80_43 (calibration 143_06), BVH conversion by Bruce Hahne, mirrored at https://github.com/una-dinosauria/cmu-mocap (commit 09a07f54f3bbb58797325f009282d0b2048a2871). License: "This data is free for use in research and commercial projects worldwide"; no additional restrictions on the BVH conversion. The data used in this project was obtained from mocap.cs.cmu.edu. The database was created with funding from NSF EIA-0196217. Retargeted to the Rocketbox Bip01 rig by scripts/retarget-everyday.py; per-clip frames in docs/verification/motion-library-2026-09-28/README.md.

## House-front roofs (draft, 2026-10-05)
- `public/materials/roof_shingle_*`: ambientCG "Roofing Tiles 003" (2K PNG), CC0 1.0 public domain, https://ambientcg.com/view?id=RoofingTiles003 . Albedo turned into a neutral de-lit luminance map, normal (GL) kept, ORM built from the set's displacement and roughness by `tools/house-fronts/make-roof-materials.py`; KTX2 by `tools/encode_ktx2.mjs`. Tinted at runtime (charcoal, weathered wood, slate).
- `public/materials/roof_metal_*`: Poly Haven "Box Profile Metal Sheet" (1K PNG), CC0, https://polyhaven.com/a/box_profile_metal_sheet . Albedo as a neutral luminance map (painted grey at runtime), normal (GL), AO and roughness kept (same script).

Facial blendshapes (2026-10-06): `characters/coastal-v1`, `city-v3` and `classic-v1` carry 15 face morph targets transferred from Microsoft Rocketbox `Male_Adult_01_facial.fbx`, `Female_Adult_01_facial.fbx` and `Male_Adult_03_facial.fbx` (commit 0943055db6ec570bcef9f2c8b41c9e5467c808f9), Microsoft Corporation, MIT. No openVRlab/Headbox material is included (that repo has no licence). See `docs/ROCKETBOX-FACE.md`.
