# Third-party assets

Everything below is CC0 (public domain). Kept at 1k resolution for download size.

## Textures (Poly Haven)
- grass: "leafy_grass" https://polyhaven.com/a/leafy_grass
- forest: "forrest_ground_01" https://polyhaven.com/a/forrest_ground_01
- dirt: "brown_mud_leaves_01" https://polyhaven.com/a/brown_mud_leaves_01
- rock: "rock_face_03" https://polyhaven.com/a/rock_face_03
- sand: "aerial_beach_01" https://polyhaven.com/a/aerial_beach_01
- bark: "bark_brown_02" https://polyhaven.com/a/bark_brown_02
- planks: "wooden_planks" https://polyhaven.com/a/wooden_planks
- brick: "brick_wall_04" https://polyhaven.com/a/brick_wall_04
- metal: "metal_plate_02" https://polyhaven.com/a/metal_plate_02
- rooftile: "roof_tiles_14" https://polyhaven.com/a/roof_tiles_14
- corrugated: "corrugated_iron_02" https://polyhaven.com/a/corrugated_iron_02
- gravel: "gravel_concrete_03" https://polyhaven.com/a/gravel_concrete_03

The terrain set is also kept at 2K under textures/2k/ (WebP), fetched by tools/textures/fetch-polyhaven.mjs.

## Trees and bushes
- Built with EZ-Tree by Daniel Greenheck (MIT licence, https://github.com/dgreenheck/ez-tree) by
  tools/trees/build-trees.mjs: the models, the impostor atlas and trees.json under models/trees/ are generated
  from its presets. The palms are generated by our own code in tools/trees/generate.html.
- Bark textures under textures/trees/, as shipped with EZ-Tree: oak "bark_brown_02" (Poly Haven, CC0,
  https://polyhaven.com/a/bark_brown_02), pine https://www.texturecan.com/details/588/ and birch
  https://www.texturecan.com/details/221/ (TextureCan, CC0).
- Leaf textures leaf_ash, leaf_aspen, leaf_oak and leaf_pine come with EZ-Tree (MIT). leaf_palm is drawn by
  tools/trees/generate.html and is original to this project.

EZ-Tree licence:

    MIT License

    Copyright (c) 2024 Daniel Greenheck

    Permission is hereby granted, free of charge, to any person obtaining a copy of this software and associated
    documentation files (the "Software"), to deal in the Software without restriction, including without limitation
    the rights to use, copy, modify, merge, publish, distribute, sublicense, and/or sell copies of the Software, and
    to permit persons to whom the Software is furnished to do so, subject to the following conditions:

    The above copyright notice and this permission notice shall be included in all copies or substantial portions of
    the Software.

    THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO
    THE WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
    AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, 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 THE SOFTWARE.

## Player characters
- Built with MakeHuman / MPFB (https://static.makehumancommunity.org): bodies are MakeHuman output (CC0). Skins,
  hair, eyebrows, eyes and clothes come from the MakeHuman community asset packs, all CC0: makehuman_system_assets,
  skins01, skins02, pants01, shirts01, shoes01, hair01, suits01. Assets used, by author: Joel Palmius and the
  MakeHuman team (system skins, hair, eyes, eyebrows, suits), Margaret Toigo (toigo_*), cortu (cortu_*), culturalibre
  (culturalibre_*), Elvaerwyn and joepal (crude t-shirts), namuhekam (polo shirt). Generated into
  models/characters/ by tools/characters/build-characters.mjs.

## Furniture, street props and scanned guns
- Poly Haven models (CC0), https://polyhaven.com: ArmChair_01, Barrel_01, ClassicNightstand_01, SchoolChair_01, Shelf_01, Sofa_01, Television_01, WoodenTable_01, barrel_03, cardboard_box_01, concrete_road_barrier_02, dining_table, hand_truck, old_military_crate, painted_wooden_bench, painted_wooden_table, plastic_crate_02, portable_generator, street_lamp_01, vintage_day_bed, wooden_bookshelf_worn, wooden_crate_01, wooden_crate_02, wooden_picnic_table. Reduced and compressed into models/props/ by
  tools/props/build-props.mjs.
- The sniper rifle is Poly Haven's bolt_action_rifle_7_62 and the pistol its service_pistol (both CC0), turned and
  scaled into models/guns/ by tools/blender/build-guns.mjs.

## Road and building textures (Poly Haven, CC0), under textures/2k/
- asphalt_02, gravel_road (roads); brick_wall_04, wooden_planks, metal_plate_02, roof_tiles_14, corrugated_iron_02
  (walls and roofs, now at 2K); wood_floor_worn, white_plaster_02, concrete_floor_02 (floors and ceilings).

## Built with Blender, original to this project
- The assault rifle, SMG, shotgun and rocket launcher (tools/blender/guns.py), and the pickup truck, kart, boat,
  plane and helicopter (tools/blender/vehicles_real.py).

## Rocks
- Poly Haven scanned models (CC0), https://polyhaven.com: rock_07, rock_09, stone_01, rock_face_01, rock_face_02,
  namaqualand_boulder_02, namaqualand_boulder_04, namaqualand_boulder_05, rock_moss_set_01, rock_moss_set_02.
  Decimated and compressed into models/rocks/ by tools/rocks/build-rocks.mjs.

## Models
- Kenney Nature Kit 2.1 (CC0) https://kenney.nl/assets/nature-kit, files under assets/models/kenney/ (rocks, cacti,
  crops, fences, camps and lilies; the kit's trees and bushes are now only a fallback)

## Built with Blender
- Models under assets/models/built/ are generated by the scripts in tools/blender/ and are original to this project.
