Files
LuckyWorld/Source/LuckyWorldV2/Private/Episode/EpisodeSubSystem.cpp
Jb win 440d079225 FT - EpisodeSubSystem
+ Integrate DataTransfer plugin into project
+ Raw architecture of EpisodeSubSystem
2025-05-02 23:23:25 +07:00

52 lines
1.3 KiB
C++

#include "Episode/EpisodeSubSystem.h"
UEpisodeSubSystem::UEpisodeSubSystem()
{
}
void UEpisodeSubSystem::Initialize(FSubsystemCollectionBase& Collection)
{
Super::Initialize(Collection);
}
void UEpisodeSubSystem::Deinitialize()
{
Super::Deinitialize();
}
void UEpisodeSubSystem::Tick(float DeltaTime)
{
// if capture has started
if (!bIsCapturing) return;
// Flow that we need to figure out
// ProceduralSceneController - is object spawned? -> If not spawn it
// if object spawned && !robot.hasTarget -> Robot -> SetTarget
// if object.IsSpawned && robot.hasTarget -> Capture and send data
// ProceduralSceneController -> is object collected?
// How to reset the episode?
}
void UEpisodeSubSystem::StartNewEpisode()
{
// Noah
// Configure the DataTransfer -> Use CurrentRobot->Cameras
// Start the Capture
// Make specs for JB to add API on the robot data
// JB
// Find the current Robot in Scene
// Store as CurrentRobot
// Order the robot to go fetch an object
// Both of us once we finished our own tasks and synced
// - Spawn the shape at random locations -> might need another controller like ProceduralSceneSubSystem?
// - Add the timestamp debug component on the scene to check if the rendered frame and the data are in sync
// TODO Which Tick is responsible of the scene capture?
bIsCapturing = true;
}