Files
vertical-partition-system-p…/Source/VerticalPartition/Public/VerticalPartitionDebugComponent.h
Bonchellon 04ad6d3f25 Initial commit: Vertical Partition Streaming plugin (UE 5.7)
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>
2026-06-30 17:42:41 +03:00

32 lines
1.1 KiB
C++

// Copyright IHY. Vertical Partition Streaming plugin.
//
// World-Partition-style debug: coloured cell boxes, ids, actor counts, problem
// actor highlights, and an on-screen runtime overlay. Driven by the vp.Debug /
// vp.DebugDraw / vp.DebugOverlay console variables (and the volume's debug flags).
#pragma once
#include "CoreMinimal.h"
#include "Components/ActorComponent.h"
#include "VerticalPartitionDebugComponent.generated.h"
class UVerticalPartitionRuntimeSubsystem;
UCLASS(ClassGroup=(VerticalPartition), meta=(BlueprintSpawnableComponent))
class VERTICALPARTITION_API UVerticalPartitionDebugComponent : public UActorComponent
{
GENERATED_BODY()
public:
UVerticalPartitionDebugComponent();
virtual void TickComponent(float DeltaTime, ELevelTick TickType, FActorComponentTickFunction* ThisTickFunction) override;
/** 3D coloured cell boxes + ids + counts (the spec's DrawDebugCells). */
void DrawDebugCells(UVerticalPartitionRuntimeSubsystem* Sub) const;
/** On-screen text block of FVerticalRuntimeStats. */
void DrawOverlay(UVerticalPartitionRuntimeSubsystem* Sub) const;
private:
UVerticalPartitionRuntimeSubsystem* GetSub() const;
};