voxelwaterpulse.Verbose
voxelwaterpulse.Verbose belongs to the VoxelWaterPulse runtime module.
Exercitation lorem ipsum commodo veniam sed nulla ex esse ea et sed consequat minim aliquip. Magna esse exercitation in occaecat nisi quis excepteur sit dolor consectetur. Eiusmod amet velit aliqua lorem nostrud lorem magna veniam labore.
Declaration
1// Query the subsystem for nearby actors with filtering
2TArray<AActor*> Results;
3FMyQueryParams Params;
4Params.Origin = GetActorLocation();
5Params.Radius = 1000.0f;
6Params.MaxResults = 10;
7Params.bIncludeHidden = false;
8Params.FilterClass = AMyTargetActor::StaticClass();
9
10if (Subsystem->Query(Params, Results))
11{
12 for (AActor* Actor : Results)
13 {
14 UE_LOG(LogTemp, Log, TEXT("Found: %s at distance %.1f"),
15 *Actor->GetName(),
16 FVector::Dist(Params.Origin, Actor->GetActorLocation()));
17 }
18}
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// Unit test example
2IMPLEMENT_SIMPLE_AUTOMATION_TEST(
3 FVoxelWaterPulseBasicTest,
4 "VoxelWaterPulse.Core.BasicFunctionality",
5 EAutomationTestFlags::ApplicationContextMask | EAutomationTestFlags::ProductFilter
6)
7
8bool FVoxelWaterPulseBasicTest::RunTest(const FString& Parameters)
9{
10 UVoxelWaterPulseSubsystem* Subsystem = NewObject<UVoxelWaterPulseSubsystem>();
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}
Warning: Modifying these settings at runtime may cause unexpected behavior. Always set configuration before calling Initialize().