Assertion failed: !RasterizerPass.ClusterComputeShader.IsNull() [File:D:\build\++UE5\Sync\Engine\Source\Runtime\Renderer\Private\Nanite\NaniteCullRaster.cpp] [Line: 3915]

ive got a crashing issue in 5.4.3 . I am hoping someone can help me with this. Near the bottom of this post is the actual text from the crash.

for me it crashes the first 2 times i launch it… then finally works on the third launch. Did this on 4 different computers.

The problems began when i started messing with DefaultEngine.ini

Originally i thought my problems had to do with one of hte following… but seems like i was wrong… Tessellation never gave me issues until i started changing things up so i dont think it has anything to do with tessellation.

;r.Lumen.SampleFog=0
;r.VolumetricFog.Emissive=0
;r.OptimizedWPO=1
;r.OptimizedWPO.AffectNonNaniteShaderSelection=1
;r.Nanite.RasterIndirectionMultiplier=1.1

here are my settings for the actual file…

r.ReflectionMethod=1
r.GenerateMeshDistanceFields=True
r.DynamicGlobalIlluminationMethod=1
r.Mobile.EnableNoPrecomputedLightingCSMShader=1
r.DefaultFeature.AutoExposure.ExtendDefaultLuminanceRange=True
r.DefaultFeature.AutoExposure.ExtendDefaultLuminanceRange=True

r.Shadow.Virtual.Enable=1

r.DefaultFeature.LocalExposure.HighlightContrastScale=0.8
r.DefaultFeature.LocalExposure.ShadowContrastScale=0.8

r.SkinCache.CompileShaders=True

r.RayTracing=True

r.VirtualTextures=True
r.VirtualTexturedLightmaps=False
r.VT.AnisotropicFiltering=True
bEnableVirtualTextureOpacityMask=False
;(Default 16) A higher feedback factor increases the rate at which the system gathers this feedback, potentially improving texture streaming responsiveness at the cost of higher processing demands.
r.vt.FeedbackFactor=16

r.EarlyZPass=3

r.Lumen.HardwareRayTracing=False
r.Lumen.HardwareRayTracing.LightingMode=0
r.Lumen.Reflections.HardwareRayTracing.Translucent.Refraction.EnableForProject=False
r.Lumen.TraceMeshSDFs=0
;Leave this off for performance… setting this to 1 may make GI look better but at a cost.
r.Lumen.TraceMeshSDFs=0

r.DefaultFeature.AutoExposure=True

r.DefaultFeature.AmbientOcclusionStaticFraction=False

r.Nanite.AllowSplineMeshes=1
r.MeshStreaming=True

r.AllowStaticLighting=False

r.Nanite.AllowTessellation=1

r.Nanite.Tessellation=1

r.SeparateTranslucencyScreenPercentage=66

r.Shadow.CSMCaching=True
r.MinScreenRadiusForCSMDepth=0.03

r.Mobile.EnableStaticAndCSMShadowReceivers=False

r.DefaultFeature.AutoExposure.ExtendDefaultLuminanceRange=True

r.GPUSkin.Support16BitBoneIndex=True
;False is default for r.GPUSkin.UnlimitedBoneInfluences… makes limit of bone influence per vertex 4… which should be enough.
r.GPUSkin.UnlimitedBoneInfluences=False

SkeletalMesh.UseExperimentalChunking=1

;r.Lumen.SampleFog=0
;default is 1… i dont see a difference honestly… supposedly its so emissive materials effect volumetric fog
;r.VolumetricFog.Emissive=0
;not sure if this command even works anymore… but i did also find r.OptimizedWPO.AffectNonNaniteShaderSelection which may be worth while for non nanite meshes.
r.OptimizedWPO=1
r.OptimizedWPO.AffectNonNaniteShaderSelection=1

r.Nanite.RasterIndirectionMultiplier=1.1

r.SupportStationarySkylight=False

r.Shadow.Virtual.UseFarShadowCulling

"

Assertion failed: !RasterizerPass.ClusterComputeShader.IsNull() [File:D:\build++UE5\Sync\Engine\Source\Runtime\Renderer\Private\Nanite\NaniteCullRaster.cpp] [Line: 3915]

0x00007ffc7e287611 UnrealEditor-Renderer.dll!UnknownFunction
0x00007ffc7e28cac0 UnrealEditor-Renderer.dll!UnknownFunction
0x00007ffc7e288ac2 UnrealEditor-Renderer.dll!UnknownFunction
0x00007ffc7e2d9679 UnrealEditor-Renderer.dll!UnknownFunction
0x00007ffc7db2ae3e UnrealEditor-Renderer.dll!UnknownFunction
0x00007ffc7dae4804 UnrealEditor-Renderer.dll!UnknownFunction
0x00007ffc9cfb24c5 UnrealEditor-Core.dll!UnknownFunction
0x00007ffc9cfb21ff UnrealEditor-Core.dll!UnknownFunction
0x00007ffc9cfda155 UnrealEditor-Core.dll!UnknownFunction
0x00007ffc9cfa23d0 UnrealEditor-Core.dll!UnknownFunction
0x00007ffc9d1a7c93 UnrealEditor-Core.dll!UnknownFunction
0x00007ffc9d60c93d UnrealEditor-Core.dll!UnknownFunction
0x00007ffc9d6002b7 UnrealEditor-Core.dll!UnknownFunction
0x00007ffd8372257d KERNEL32.DLL!UnknownFunction

Crash in runnable thread Background Worker #5
Crash in runnable thread Foreground Worker #0
"

This issue is fixed in 5.5.

I think it’s due to some uninitialized memory. Ultimately, the post here fixes the issue.

If you need to fix it before 5.5 and feel comfortable digging around in the code, the issue is in NaniteCullRaster.cpp

Search for “const auto FillFixedMaterialShaders”. It should be around line 3893 but that will depend on your specific version and whether you’ve been editing things already. In the last 1/3 of that block of code, there’s the following:

PermutationVectorCS_Cluster.Set<FMicropolyRasterizeCS::FTwoSidedDim>(RasterizerPass.RasterPipeline.bIsTwoSided);
PermutationVectorCS_Cluster.Set<FMicropolyRasterizeCS::FVertexProgrammableDim>(RasterizerPass.bVertexProgrammable);
PermutationVectorCS_Cluster.Set<FMicropolyRasterizeCS::FPixelProgrammableDim>(RasterizerPass.bPixelProgrammable);
PermutationVectorCS_Cluster.Set<FMicropolyRasterizeCS::FSplineDeformDim>(RasterizerPass.bSplineMesh);
RasterizerPass.ClusterComputeShader = FixedMaterialShaderMap->GetShader<FMicropolyRasterizeCS>(PermutationVectorCS_Cluster);
check(!RasterizerPass.ClusterComputeShader.IsNull());

Add the following line above that block:

PermutationVectorCS_Cluster.Set<FMicropolyRasterizeCS::FTessellationDim>(false);

This should prevent any further crashes.

1 Like