Description

Crash on switching to landscape/paint tab when using a landscape material that has a material function hooked onto the WorldPositionOffset.

Working as expected in 4.21 CL# 4753647

Found in 4.22 CL# 5035897 and 4.22

This is a regression

Steps to Reproduce
  1. Open the Editor
  2. Create a Landscape Material that uses a Material Function for World Position Offset
  3. Create a landscape using that material
  4. Select the Landscape Paint tool

Steps with attached project:

  1. Open attached project
  2. Create a landscape with Mat_Landscape as the material
  3. Select the paint tool

Results:
Crash regardless of the material function used

Expected:
Paint tool to be selected

Callstack
Assertion failed: [File:D:\JeremyMain\Engine\Source\Runtime\Engine\Private\Materials\MaterialShared.cpp] [Line: 1899] Couldn't find Shader FVelocityVS for Material Resource NewMaterial! RenderMeshShaderMap 1, RenderThreadShaderMap 1 GameMeshShaderMap 1, GameThreadShaderMap 1, bShaderWasFoundInGameShaderMap 0 With VF=FLocalVertexFactory, Platform=PCD3D_SM5 ShouldCache: Mat=0, VF=1, Shader=1 MaterialUsageDesc: LightingModel=MSM_DefaultLit, BlendMode=BLEND_Opaque, SpecialEngine=0, TwoSided=0, TSNormal=1, Masked=0, Distorted=0, WritesEveryPixel=1, ModifiesMeshPosition=1, Usage={}

UE4Editor_Engine!FMaterial::GetShader() [d:\jeremymain\engine\source\runtime\engine\private\materials\materialshared.cpp:1886]
UE4Editor_Renderer!GetVelocityPassShaders() [d:\jeremymain\engine\source\runtime\renderer\private\velocityrendering.cpp:654]
UE4Editor_Renderer!FVelocityMeshProcessor::AddMeshBatch() [d:\jeremymain\engine\source\runtime\renderer\private\velocityrendering.cpp:616]
UE4Editor_Renderer!FPrimitiveSceneInfo::CacheMeshDrawCommands() [d:\jeremymain\engine\source\runtime\renderer\private\primitivesceneinfo.cpp:246]
UE4Editor_Renderer!FPrimitiveSceneInfo::AddStaticMeshes() [d:\jeremymain\engine\source\runtime\renderer\private\primitivesceneinfo.cpp:372]
UE4Editor_Renderer!FPrimitiveSceneInfo::AddToScene() [d:\jeremymain\engine\source\runtime\renderer\private\primitivesceneinfo.cpp:498]
UE4Editor_Renderer!FScene::AddPrimitiveSceneInfo_RenderThread() [d:\jeremymain\engine\source\runtime\renderer\private\rendererscene.cpp:786]
UE4Editor_Renderer!<lambda_d6e536c5395cba221ed4ff167313c746>::operator()() [d:\jeremymain\engine\source\runtime\renderer\private\rendererscene.cpp:1164]
UE4Editor_Renderer!TGraphTask<TEnqueueUniqueRenderCommandType<`FScene::AddPrimitive'::`2'::AddPrimitiveCommandName,<lambda_d6e536c5395cba221ed4ff167313c746> > >::ExecuteTask() [d:\jeremymain\engine\source\runtime\core\public\async\taskgraphinterfaces.h:847]
UE4Editor_Core!FNamedTaskThread::ProcessTasksNamedThread() [d:\jeremymain\engine\source\runtime\core\private\async\taskgraph.cpp:685]
UE4Editor_Core!FNamedTaskThread::ProcessTasksUntilQuit() [d:\jeremymain\engine\source\runtime\core\private\async\taskgraph.cpp:582]
UE4Editor_RenderCore!RenderingThreadMain() [d:\jeremymain\engine\source\runtime\rendercore\private\renderingthread.cpp:339]
UE4Editor_RenderCore!FRenderingThread::Run() [d:\jeremymain\engine\source\runtime\rendercore\private\renderingthread.cpp:470]
UE4Editor_Core!FRunnableThreadWin::Run() [d:\jeremymain\engine\source\runtime\core\private\windows\windowsrunnablethread.cpp:96]

Have Comments or More Details?

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

1
Login to Vote

Fixed
ComponentUE - Graphics Features
Affects Versions4.224.23
Target Fix4.22
Fix Commit5185266
Main Commit5207073
Release Commit5185266
CreatedFeb 25, 2019
ResolvedFeb 25, 2019
UpdatedMar 23, 2019