feat(facades): 0.1.4 — module kit, textured materials, theatre trim (#30)
Merged PR #30: 0.1.4 — facade module kit, textured materials, theatre trim Co-authored-by: Zwitschi <zwitschi82@gmail.com>
This commit was merged in pull request #30.
This commit is contained in:
1 parent
d6d3d54810
commit
5e2c5e29c0
90 files changed
+2592
-413
No files matched your search
@@ -379,7 +379,11 @@ void AGigLineCharacter::StartQASelfTest()
|
||||
// trace at a fixed Z (e.g. 160) is wrong: the street is at Z ~366
|
||||
// there, so a 160 cm probe starts inside the earth (dist 0).
|
||||
int32 Walls = 0, WallSamples = 0;
|
||||
static const float TraceYs[] = {-1400.0f, -167.0f, 1000.0f, -1382.0f, 1047.0f};
|
||||
// Sample the street envelope only: the carriageway plus the walkable
|
||||
// part of each sidewalk. Y 1000 used to be in this list and sits ~1 cm
|
||||
// from the frontage building line, so it grazed the theatre wall once
|
||||
// the kit's proud shopfronts went in - a probe artefact, not a blocker.
|
||||
static const float TraceYs[] = {-1400.0f, -167.0f, 800.0f, -1382.0f, 718.0f};
|
||||
for (float WallY : TraceYs)
|
||||
{
|
||||
for (float X0 = -19500.0f; X0 <= -3000.0f; X0 += 2500.0f)
|
||||
|
||||
@@ -1,6 +1,7 @@
|
||||
#include "GigLineShotActor.h"
|
||||
|
||||
#include "Camera/CameraActor.h"
|
||||
#include "Camera/CameraComponent.h"
|
||||
#include "Engine/World.h"
|
||||
#include "GameFramework/PlayerController.h"
|
||||
#include "UnrealClient.h"
|
||||
@@ -83,6 +84,15 @@ void AGigLineShotActor::NextShot()
|
||||
Params.ObjectFlags |= RF_Transient;
|
||||
CurrentCamera = GetWorld()->SpawnActor<ACameraActor>(
|
||||
ACameraActor::StaticClass(), ShotLocations[CurrentShot], ShotRotations[CurrentShot], Params);
|
||||
if (ShotFieldOfView.IsValidIndex(CurrentShot) && ShotFieldOfView[CurrentShot] > 0.0f)
|
||||
{
|
||||
if (UCameraComponent* Cam = CurrentCamera->GetCameraComponent())
|
||||
{
|
||||
// Long lens for elevations: fills the frame from across the street
|
||||
// without pitching the camera, so verticals stay parallel.
|
||||
Cam->SetFieldOfView(ShotFieldOfView[CurrentShot]);
|
||||
}
|
||||
}
|
||||
PlayerController->SetViewTarget(CurrentCamera);
|
||||
|
||||
SettleCountdown = SettleSeconds;
|
||||
|
||||
@@ -36,6 +36,16 @@ public:
|
||||
UPROPERTY(EditAnywhere, BlueprintReadWrite)
|
||||
TArray<FString> ShotNames;
|
||||
|
||||
/**
|
||||
* Optional per-shot field of view (degrees), same index as ShotLocations.
|
||||
* Zero or missing entries keep the engine default (90 deg). Elevation shots
|
||||
* taken from across the street need a long lens: a level camera 45 m out with
|
||||
* the default FOV leaves the building small in frame, and tilting it up to fill
|
||||
* the frame is what breaks the verticals.
|
||||
*/
|
||||
UPROPERTY(EditAnywhere, BlueprintReadWrite)
|
||||
TArray<float> ShotFieldOfView;
|
||||
|
||||
/** Seconds to let the view target settle before the capture. Resolution comes from the runner's -ResX/-ResY. */
|
||||
UPROPERTY(EditAnywhere, BlueprintReadWrite)
|
||||
float SettleSeconds = 0.35f;
|
||||
|
||||
Reference in new issue
Block a user