Description

This Jira was created from CrashReports submitted by the public due to the high number of occurrences. Descriptions from users are provided below.

Error message:

Assertion failed: IsValidRef(GBufferResourcesUniformBuffer) [Link Removed] [Line: 406]

Source Context:

  393       
  394       	/** Get the current translucent ambient lighting volume texture. Can vary depending on whether volume filtering is enabled */
  395       	IPooledRenderTarget* GetTranslucencyVolumeAmbient(ETranslucencyVolumeCascade Cascade) { return TranslucencyLightingVolumeAmbient[SelectTranslucencyVolumeTarget(Cascade)].GetReference(); }
  396       
  397       	/** Get the current translucent directional lighting volume texture. Can vary depending on whether volume filtering is enabled */
  398       	IPooledRenderTarget* GetTranslucencyVolumeDirectional(ETranslucencyVolumeCascade Cascade) { return TranslucencyLightingVolumeDirectional[SelectTranslucencyVolumeTarget(Cascade)].GetReference(); }
  399       
  400       	// ---
  401       	/** Get the uniform buffer containing GBuffer resources. */
  402       	FUniformBufferRHIParamRef GetGBufferResourcesUniformBuffer() const 
  403       	{ 
  404       		// if this triggers you need to make sure the GBuffer is not getting released before (using AdjustGBufferRefCount(1) and AdjustGBufferRefCount(-1))
  405       		check(IsValidRef(GBufferResourcesUniformBuffer));
  406       
  407 ***** 		return GBufferResourcesUniformBuffer; 
  408       	}
  409       	/** */
  410       	FIntPoint GetBufferSizeXY() const { return BufferSize; }
  411       	/** */
  412       	uint32 GetSmallColorDepthDownsampleFactor() const { return SmallColorDepthDownsampleFactor; }
  413       	/** Returns an index in the range [0, NumCubeShadowDepthSurfaces) given an input resolution. */
  414       	int32 GetCubeShadowDepthZIndex(int32 ShadowResolution) const;
  415       	/** Returns the appropriate resolution for a given cube shadow index. */
  416       	int32 GetCubeShadowDepthZResolution(int32 ShadowIndex) const;
  417       	/** Returns the size of the shadow depth buffer, taking into account platform limitations and game specific resolution limits. */
  418       	FIntPoint GetShadowDepthTextureResolution() const;
  419       	// @return >= 1x1 <= GMaxShadowDepthBufferSizeX x GMaxShadowDepthBufferSizeY
  420       	FIntPoint GetPreShadowCacheTextureResolution() const;
  421       	FIntPoint GetTranslucentShadowDepthTextureResolution() const;
  422       	int32 GetTranslucentShadowDownsampleFactor() const { return 2; }

Most recent user affected CL: 2818068

Logs: [Link Removed]
[Link Removed]
[Link Removed]

CrashReporter User Descriptions:

  • Baking Light and Textures
  • I tried to build lighting on empty level with only one cube that has material set to BasicColor.
    When I do the same with some other material, everthing works OK and UE Editor doesn't crash.
  • I tried to rebuild lighting on empty level with one cube and two directional light
  • Crashing every time after trying to rebuild lighting
  • Building the light
Steps to Reproduce
  1. Open UE4 Editor
  2. Create new Material
  3. With final inputs node selected, set Material Domain to Post Process
  4. Add Texture Coordinate and Scene Texture nodes
  5. With Scene Texture node selected, set Scene Texture Id to PostProcessInput0
  6. Add custom node with the following settings
    • 2 Input elements (UV & Scene Texture)
    • Output Type of CMOT Float4
    • Code section as follows:
      int TexIndex = 2;
      return SceneTextureLookup(UV, TexIndex, true);
      
  7. Wire Texture Coordinate node into UV and Scene Texture node into Scene Texture
  8. Add HueShift node
  9. Wire Custom node into Texture (V3) input of HueShift
  10. Add single constant node set to 50
  11. Wire constant node into Hue Shift Percentage input
  12. Wire Hue Shift result into Emissive Color of final inputs node
  13. Apply and Save material
  14. Add post process volume to the level
  15. With the post process volume selected search for Blendables in the details panel
  16. Add an element to the array and choose Assign Reference
  17. Set the reference to the created material
  18. PIE

Result:
When the character enters the post process volume, the editor crashes

Callstack
UE4Editor_Renderer!FSceneRenderTargets::GetGBufferResourcesUniformBuffer() [scenerendertargets.h:408]
UE4Editor_Renderer!FDeferredPixelShaderParameters::Set<FRHIPixelShader * __ptr64>() [scenerendertargets.cpp:2382]
UE4Editor_Renderer!FMaterialShader::SetParameters<FRHIPixelShader * __ptr64>() [shaderbaseclasses.cpp:254]
UE4Editor_Renderer!TBasePassPixelShaderBaseType<FNoLightMapPolicy>::SetParameters() [basepassrendering.h:392]
UE4Editor_Renderer!TBasePassDrawingPolicy<FNoLightMapPolicy>::SetSharedState() [basepassrendering.h:617]
UE4Editor_Renderer!FDrawBasePassDynamicMeshAction::Process<FNoLightMapPolicy>() [basepassrendering.cpp:383]
UE4Editor_Renderer!ProcessBasePassMesh<FDrawBasePassDynamicMeshAction>() [basepassrendering.h:985]
UE4Editor_Renderer!FBasePassOpaqueDrawingPolicyFactory::DrawDynamicMesh() [basepassrendering.cpp:444]
UE4Editor_Renderer!FRendererModule::DrawTileMesh() [renderer.cpp:80]
UE4Editor_Engine!FTileRenderer::DrawTile() [tilerendering.cpp:178]
UE4Editor_Engine!`FCanvasTileRendererItem::Render_GameThread'::`2'::EURCMacro_DrawTileCommand::DoTask() [tilerendering.cpp:326]
UE4Editor_Engine!TGraphTask<`FCanvasTileRendererItem::Render_GameThread'::`2'::EURCMacro_DrawTileCommand>::ExecuteTask() [taskgraphinterfaces.h:779]
UE4Editor_Core!FTaskThread::ProcessTasks() [taskgraph.cpp:539]
UE4Editor_Core!FTaskThread::ProcessTasksUntilQuit() [taskgraph.cpp:340]
UE4Editor_RenderCore!RenderingThreadMain() [renderingthread.cpp:310]
UE4Editor_RenderCore!FRenderingThread::Run() [renderingthread.cpp:411]
UE4Editor_Core!FRunnableThreadWin::Run() [windowsrunnablethread.cpp:74]

Have Comments or More Details?

There's no existing public thread on this issue, so head over to Questions & Answers just mention UE-25623 in the post.

0
Login to Vote

Fixed
ComponentUE - Graphics Features
Affects Versions4.10
Target Fix4.14
Fix Commit3123503
Main Commit3154728
CreatedJan 18, 2016
ResolvedSep 13, 2016
UpdatedMay 2, 2018