diff --git a/Gems/Atom/Feature/Common/Code/Source/DiffuseGlobalIllumination/DiffuseProbeGridFeatureProcessor.cpp b/Gems/Atom/Feature/Common/Code/Source/DiffuseGlobalIllumination/DiffuseProbeGridFeatureProcessor.cpp index 84c066604a..5e85c3b247 100644 --- a/Gems/Atom/Feature/Common/Code/Source/DiffuseGlobalIllumination/DiffuseProbeGridFeatureProcessor.cpp +++ b/Gems/Atom/Feature/Common/Code/Source/DiffuseGlobalIllumination/DiffuseProbeGridFeatureProcessor.cpp @@ -92,21 +92,24 @@ namespace AZ AZ_Error("DiffuseProbeGridFeatureProcessor", m_probeGridRenderData.m_srgLayout != nullptr, "Failed to find ObjectSrg layout"); } - // initialize the buffer pools for the DiffuseProbeGrid visualization - m_visualizationBufferPools = RHI::RayTracingBufferPools::CreateRHIRayTracingBufferPools(); - m_visualizationBufferPools->Init(device); + if (device->GetFeatures().m_rayTracing) + { + // initialize the buffer pools for the DiffuseProbeGrid visualization + m_visualizationBufferPools = RHI::RayTracingBufferPools::CreateRHIRayTracingBufferPools(); + m_visualizationBufferPools->Init(device); - // load probe visualization model, the BLAS will be created in OnAssetReady() - m_visualizationModelAsset = AZ::RPI::AssetUtils::GetAssetByProductPath( - "Models/DiffuseProbeSphere.azmodel", - AZ::RPI::AssetUtils::TraceLevel::Assert); + // load probe visualization model, the BLAS will be created in OnAssetReady() + m_visualizationModelAsset = AZ::RPI::AssetUtils::GetAssetByProductPath( + "Models/DiffuseProbeSphere.azmodel", + AZ::RPI::AssetUtils::TraceLevel::Assert); - if (!m_visualizationModelAsset.IsReady()) - { - m_visualizationModelAsset.QueueLoad(); - } + if (!m_visualizationModelAsset.IsReady()) + { + m_visualizationModelAsset.QueueLoad(); + } - Data::AssetBus::MultiHandler::BusConnect(m_visualizationModelAsset.GetId()); + Data::AssetBus::MultiHandler::BusConnect(m_visualizationModelAsset.GetId()); + } EnableSceneNotification(); }