feat(walk): a -walk harness flag, and the honest reason the stride shot is not in
Screenshots 6 and 7 are approved, so the remaining 0.2.0 work is the traversal release check. This adds the piece of harness it needs - `-walk` holds forward input from the first frame, so the pawn actually crosses the sidewalk while the third-person rig follows it - and records what that check still lacks. A stride shot was attempted three times and removed: a fixed review camera cannot catch a pawn moving at 4.5 m/s. Each attempt framed it at a different distance and the last two missed it entirely, so shipping it would have been a broken shot with a green verification. The TODO item now says the blocker is the capture harness (a camera that tracks the pawn), not the game, and names where the shot goes back in. The flag stays because it is what the traversal check will drive.
This commit is contained in:
1 parent
0e0aed02d6
commit
f84093adba
39 files changed
+67
-43
No files matched your search
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
@@ -251,6 +251,19 @@ void AGigLineCharacter::BeginPlay()
|
||||
{
|
||||
StartQASelfTest();
|
||||
}
|
||||
|
||||
// `-walk` holds forward input from the first frame. The screenshot run uses it
|
||||
// with `-thirdperson` so a capture can show the walk clip mid-stride: an idle
|
||||
// shot cannot prove the animation set, and a still cannot show a stride.
|
||||
bWalkForever = FParse::Param(FCommandLine::Get(), TEXT("walk"));
|
||||
}
|
||||
|
||||
void AGigLineCharacter::WalkForever()
|
||||
{
|
||||
if (bWalkForever && GetCharacterMovement() && GetCharacterMovement()->IsMovingOnGround())
|
||||
{
|
||||
AddMovementInput(GetActorForwardVector(), 1.0f);
|
||||
}
|
||||
}
|
||||
|
||||
void AGigLineCharacter::StartQASelfTest()
|
||||
@@ -726,6 +739,7 @@ void AGigLineCharacter::Tick(float DeltaSeconds)
|
||||
Super::Tick(DeltaSeconds);
|
||||
// Speed-driven animation state: correct whether the player walked, was pushed,
|
||||
// or fell, and independent of which input produced the movement.
|
||||
WalkForever();
|
||||
UpdateBodyAnimation();
|
||||
|
||||
}
|
||||
|
||||
@@ -158,6 +158,12 @@ protected:
|
||||
UPROPERTY()
|
||||
TObjectPtr<UAnimSequence> PlayingAnimation;
|
||||
|
||||
/** True while `-walk` holds forward input for the screenshot run. */
|
||||
bool bWalkForever = false;
|
||||
|
||||
/** Applies the `-walk` forward input when the flag is set and the pawn is grounded. */
|
||||
void WalkForever();
|
||||
|
||||
/** Toggle-camera action (V). */
|
||||
UPROPERTY(EditDefaultsOnly, BlueprintReadOnly, Category = "Input")
|
||||
TObjectPtr<UInputAction> ToggleCameraAction;
|
||||
|
||||
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
@@ -32,7 +32,7 @@ Actionable task list for this project. This file is the single, central place fo
|
||||
|
||||
### Release checks
|
||||
|
||||
- [ ] Third-person traversal works end-to-end in the demo area.
|
||||
- [ ] Third-person traversal works end-to-end in the demo area. **Blocked on a capture harness, not on the game:** walking works (`-walk` holds forward input; the pawn crosses the sidewalk while the third-person rig follows), but a fixed review camera cannot catch a pawn moving at 4.5 m/s — three attempts framed it at a different distance each run and the last two missed it entirely. The stride shot was removed rather than shipped broken. Needs a camera that tracks the pawn (attach the shot camera to the pawn, or drive the capture from a recorded path), then re-add `demo-third-person-walk`.
|
||||
- [ ] No blocking animation or rig defects.
|
||||
- [ ] Performance target still met at 1440p.
|
||||
- [ ] Tag `v0.2.0` and write `CHANGELOG.md` entry; then remove this section.
|
||||
|
||||
@@ -323,6 +323,7 @@ try:
|
||||
# back, so a pose defect there is invisible. The pawn spawns facing +Y
|
||||
# (yaw 90), so the camera stands on the road side and looks back north.
|
||||
("demo-third-person-front", unreal.Vector(-13336, -520, 700), unreal.Vector(-13336, -1150, 540), 55.0),
|
||||
|
||||
]
|
||||
seq = spawn(unreal.GigLineShotActor, unreal.Vector(0, 0, 300), "ShotSequencer")
|
||||
if seq:
|
||||
|
||||
Reference in new issue
Block a user