SpiecsEngine
 
Loading...
Searching...
No Matches

◆ UpdateTopLevelAS()

void Spices::RayTracingRenderer::UpdateTopLevelAS ( FrameInfo & frameInfo,
std::shared_ptr< VulkanRayTracing > rayTracingInstance,
bool update = true )
private

Update TopLevelAS.

Parameters
[in]frameInfoFrameInfo.
[in]rayTracingInstanceVulkanRayTracingInstance.
[in]updatedefault true.
Todo
Event Queue.

Definition at line 169 of file RayTracingRenderer.cpp.

170 {
172
173 if(!(frameInfo.m_World->GetMarker() & World::NeedUpdateTLAS)) return;
174 frameInfo.m_World->ClearMarkerWithBits(World::NeedUpdateTLAS);
175
176 auto view = GetEntityWithComponent<MeshComponent>(frameInfo.m_World.get());
177 CreateTopLevelAS(frameInfo, view, rayTracingInstance, update);
178 }
#define SPICES_PROFILE_ZONE
void CreateTopLevelAS(FrameInfo &frameInfo, std::shared_ptr< std::vector< uint32_t > > view, std::shared_ptr< VulkanRayTracing > rayTracingInstance, bool update=false)
Create TopLevelAS.
@ NeedUpdateTLAS
Definition World.h:49

References Spices::World::NeedUpdateTLAS.