# ADR-0010: Procedural NPC presentation - **Status:** Accepted - **Date:** TBD ## Context Avatars are `CharacterBody3D` capsules color-coded by `NpcType`, with a few props (camera, box, hat, sign, bag), height and brightness variation from a seed, a walk bob, and a head turn toward the guard when noticed. They work as markers. At conversation distance they do not read as people: no neck, no face direction, no shoes, no hair. The player is supposed to judge from clothes, props, and behavior, not from a label. The HUD currently prints the internal type (`Violent Threat`, `Trespasser`) next to the name. Putting that name on the body would make the judgment for them. A full Mixamo / GLB pipeline would also add animation imports, licenses, and a skeleton the rest of the sim does not need yet. AI textures in `assets/textures/ai/` are not sized or wired for clothing. ## Decision Keep the procedural capsule rig for this pass. Do not add skinned meshes or Mixamo. Make the body read as a person at conversation distance: - Neck between torso and head. - Shoes. - Hair cap whose color comes from the visual seed. - Two dark eye spheres so the head has a front. - Named `Head` node (`Rig/Head`) as the attach point for the focus circle (ADR-0008) and the focus cone. - Collision capsule scaled to the visible height so the cone hits the body the player sees. Keep archetype props, height / brightness variation, walk bob, and the notice head-turn. Do **not** put the internal type name on the body or as a world nametag. A focused `display_name` under the ring is allowed. The debug overlay (`F`) may still print type, intent, and FSM state. The HUD target line can keep the type during the prototype; removing it from the HUD is a later readability pass, not this one. AI clothing textures stay out unless a map is already the right size and is wired on purpose. ## Consequences ### Positive - People have a face direction the ring and the "noticed the guard" cue can use. - No new asset toolchain, licenses, or animation retargeting. - Head is a stable node other systems can find. - The player is not told `Violent Threat` by a floating label. ### Negative - Capsule people still look like a prototype at cinematic camera distance. - Hair and eyes are spheres; they will not survive a close-up trailer. - A later skinned-mesh pass will replace this rig and must keep the `Head` contract. ## Alternatives considered - **Skinned Mixamo / GLB characters now:** Rejected. Cost and pipeline exceed this pass; the sim only needs a readable body and a head node. - **Billboard sprites:** Rejected; first-person movement walks around people, and sprites fail at profile views. - **Keep colored capsules as-is:** Rejected; the focus circle and cone need a real head, and capsules do not read as people at two metres. - **World labels with archetype names:** Rejected because they leak sim truth and skip observation.