Bounded vertical route partition / streaming for handcrafted spiral climb maps (Only Up / Only Climb). Not World Partition, not Level Instances as core arch. - Z-cell segmentation + optional XY subcells, editor builder + commandlet - NonDestructive visibility backend + streaming-level backend - Offline HLOD proxies: MergedMesh / SimplifiedProxy (ProxyLOD) - Universal Level Instance + Packed Level Actor + HISM support (flatten+merge) - Vertical-aware runtime streamer (full/preload/HLOD/unload, hysteresis, velocity prediction, fall-risk), WP-style debug viz + vp.* console - Safe-by-default: only static decor streams; sky/lights/gameplay stay persistent Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>
37 lines
1.3 KiB
C++
37 lines
1.3 KiB
C++
// Copyright IHY. Vertical Partition Streaming plugin.
|
|
//
|
|
// Project-level defaults + global debug toggles. Appears under
|
|
// Project Settings -> Plugins -> Vertical Partition. Per-volume overrides live on
|
|
// AVerticalPartitionVolume; this provides the defaults a freshly placed volume gets.
|
|
#pragma once
|
|
|
|
#include "CoreMinimal.h"
|
|
#include "Engine/DeveloperSettings.h"
|
|
#include "VerticalPartitionTypes.h"
|
|
#include "VerticalPartitionSettings.generated.h"
|
|
|
|
UCLASS(Config=Game, DefaultConfig, meta=(DisplayName="Vertical Partition"))
|
|
class VERTICALPARTITION_API UVerticalPartitionDeveloperSettings : public UDeveloperSettings
|
|
{
|
|
GENERATED_BODY()
|
|
|
|
public:
|
|
UVerticalPartitionDeveloperSettings();
|
|
|
|
virtual FName GetCategoryName() const override { return FName(TEXT("Plugins")); }
|
|
|
|
/** Defaults applied to a newly placed AVerticalPartitionVolume. */
|
|
UPROPERTY(Config, EditAnywhere, Category="Defaults")
|
|
FVerticalPartitionSettings DefaultSettings;
|
|
|
|
/** Master debug switch mirrored by the vp.Debug console variable. */
|
|
UPROPERTY(Config, EditAnywhere, Category="Debug")
|
|
bool bDebugEnabledByDefault = false;
|
|
|
|
/** Frame time (ms) above which a streaming update is logged as a hitch. */
|
|
UPROPERTY(Config, EditAnywhere, Category="Debug", meta=(ClampMin="1.0", Units="ms"))
|
|
float HitchThresholdMS = 8.0f;
|
|
|
|
static const UVerticalPartitionDeveloperSettings* Get();
|
|
};
|