Files
gig-line/Game/GigLine/Source/GigLine/GigLineNPCPerson.h
T
zwitschi 985dfcbac7 npc: AGigLineNPCPerson prefab + stable-named screenshots
- New C++ AGigLineNPCPerson: reusable NPC/pedestrian prefab built on the MPFB
  human. ACharacter capsule half-height 83 cm (total 1.66 m, head top ~1.66 m
  so a 1.60 m camera doesn't clip), the character skeletal mesh on the built-in
  mesh as the visible body (feet on Z 0), AutoPossessAI for 0.5.0 pedestrians.
  Staged at Z 0 in the review scene; captured as review-npc-prefab.png.
- AGigLineShotActor now names screenshots by stable camera name (no list-index
  prefix): inserting or reordering cameras no longer renumbers files or orphans
  the old ones. Re-rendered all review/demo shots with stable names.
- ue_build_review_map.py: chmod the target .umap before save_map (git marks maps
  444 on checkout, silently making save_map return False and dropping stages).
- Screenshots/README.md, ROADMAP, TODO updated for the prefab + stable names.
- DemoMap.umap rebuilt by the render pipeline (north buildings + demo cameras).
2026-11-07 15:28:42 +01:00

32 lines
1.1 KiB
C++

#pragma once
#include "CoreMinimal.h"
#include "GameFramework/Character.h"
#include "GigLineNPCPerson.generated.h"
/**
* Reusable NPC/pedestrian prefab built on the MPFB human asset.
*
* Deliberately NOT the 0.1.0 player (which is AGigLineCharacter, a capsule +
* camera). This is the visible-body template for future NPCs/pedestrians
* (0.5.0): ACharacter's collision capsule sized to the ~1.66 m MPFB human,
* with the character skeletal mesh on the built-in mesh component as the
* visible body, feet at Z 0.
*
* Head-height guarantee: capsule half-height 83 cm (total 1.66 m), so the head
* top sits at ~1.66 m; a camera/view at 1.60 m sits just below eye level and
* does not clip the head or neck. Set HeadHeightCm after observing the posed
* mesh if the eye socket lands elsewhere.
*/
UCLASS()
class GIGLINE_API AGigLineNPCPerson : public ACharacter
{
GENERATED_BODY()
public:
AGigLineNPCPerson();
/** Observed head height (cm above Z 0), used to verify camera clearance. */
UPROPERTY(EditAnywhere, BlueprintReadWrite, Category = "NPC")
float HeadHeightCm = 155.f;
};