As i guessed , it seems the same case
// Use the API version stored in the profile
ApiVersion = GetVulkanApiVersionForFeatureLevel(GMaxRHIFeatureLevel, false);
#if VULKAN_RHI_RAYTRACING
// Run a profile check to see if this device can support our raytacing requirements since it might change the required API version of the instance
if (FVulkanPlatform::SupportsProfileChecks() && GVulkanRayTracingCVar.GetValueOnAnyThread())
{
static IConsoleVariable* RequireSM6CVar = IConsoleManager::Get().FindConsoleVariable(TEXT("r.RayTracing.RequireSM6"));
const bool bRequireSM6 = RequireSM6CVar && RequireSM6CVar->GetBool();
const bool bRayTracingAllowedOnCurrentShaderPlatform = (bRequireSM6 == false) || (GMaxRHIShaderPlatform == SP_VULKAN_SM6 || IsVulkanMobileSM5Platform(GMaxRHIShaderPlatform));
if (CheckVulkanProfile(GMaxRHIFeatureLevel, true) && bRayTracingAllowedOnCurrentShaderPlatform)
{
// Raytracing is supported, update the required API version
ApiVersion = GetVulkanApiVersionForFeatureLevel(GMaxRHIFeatureLevel, true);
}
else
{
// Raytracing is not supported, disable it completely instead of only loading parts of it
GVulkanRayTracingCVar->Set(0, ECVF_SetByCode);
if (!bRayTracingAllowedOnCurrentShaderPlatform)
{
UE_LOG(LogVulkanRHI, Display, TEXT("Vulkan RayTracing disabled because SM6 shader platform is required (r.RayTracing.RequireSM6=1)."));
}
else
{
UE_LOG(LogVulkanRHI, Display, TEXT("Vulkan RayTracing disabled because of failed profile check."));
}
}
}
#endif // VULKAN_RHI_RAYTRACING
https://github.com/EpicGames/UnrealEngine/blob/release/Engine/Source/Runtime/VulkanRHI/Private/VulkanRHI.cpp
https://github.com/NvRTX/UnrealEngine/blob/nvrtx-5.4/Engine/Source/Runtime/VulkanRHI/Private/VulkanRHI.cpp
by commenting out the whole check and setting the second line to true , raytracing debug appeared in the menu but still raytracing isn’t working
Development > Rendering Development > Platform & Builds question unreal-engine