voxelcamera.Stats

v2.0
View as Markdown

voxelcamera.Stats belongs to the VoxelCamera runtime module.

Minim eiusmod lorem commodo consectetur nulla aute nostrud esse consectetur sit ad consectetur. Elit elit elit voluptate occaecat nostrud sit duis labore reprehenderit dolor. Sint dolor cillum aute commodo do reprehenderit aliqua cillum pariatur incididunt dolore dolore sit. Ipsum tempor ut in ea dolore tempor adipiscing ad incididunt reprehenderit aute consequat.

Declaration

 1// Unit test example
 2IMPLEMENT_SIMPLE_AUTOMATION_TEST(
 3    FVoxelCameraBasicTest,
 4    "VoxelCamera.Core.BasicFunctionality",
 5    EAutomationTestFlags::ApplicationContextMask | EAutomationTestFlags::ProductFilter
 6)
 7
 8bool FVoxelCameraBasicTest::RunTest(const FString& Parameters)
 9{
10    UVoxelCameraSubsystem* Subsystem = NewObject<UVoxelCameraSubsystem>();
11    TestNotNull(TEXT("Subsystem should be created"), Subsystem);
12
13    Subsystem->Initialize();
14    TestTrue(TEXT("Subsystem should be initialized"), Subsystem->IsInitialized());
15
16    FMyQueryParams Params;
17    Params.Radius = 500.0f;
18    TestTrue(TEXT("Query params should be valid"), Params.IsValid());
19
20    return true;
21}

Members

Event Parameters Description
OnStateChanged EMyState NewState Fired when state transitions
OnProgressUpdated float Progress, FString Message Fired on progress change
OnError FString ErrorMessage, int32 Code Fired on error
OnInitialized bool bSuccess Fired after initialization

Example

 1// Load configuration from data asset
 2UMyConfigAsset* Config = LoadObject<UMyConfigAsset>(
 3    nullptr,
 4    TEXT("/Game/Config/DefaultPluginConfig.DefaultPluginConfig")
 5);
 6
 7if (Config)
 8{
 9    Settings.MaxPoolSize = Config->MaxPoolSize;
10    Settings.TickRate = Config->TickRate;
11    Settings.bEnableDebugDraw = Config->bEnableDebugDraw;
12    Settings.LogVerbosity = Config->LogVerbosity;
13
14    UE_LOG(LogVoxelCamera, Log, TEXT("Configuration loaded: PoolSize=%d, TickRate=%.2f"),
15        Settings.MaxPoolSize, Settings.TickRate);
16}

Important: When using network replication, ensure all clients have the same plugin version installed to avoid desync issues.