Description

Crash that occurs when applying a masked material (with LandscapeLayerBlend and LandscapeVisibilityMask) to a Landscape's material slot.

This is a regression:
broken in 4.16.0 CL 3405315
worked in 4.15.1 CL 3348071

Steps to Reproduce
  1. open the editor
  2. make a new material and open it
  3. add two Constant 3Vector nodes
  4. add a LandscapeLayerBlend node, in its details panel click the + twice to add two layer inputs
  5. Connect the two 3Vectors into the LandscapeLayerBlend, and connect that to Base Color
  6. add a LandscapeVisibilityMask node, connect it to Opacity Mask
  7. change the material's Blend Mode to Masked
  8. Apply, Save, and close the material
  9. Change the Editor to the Landscape Mode
  10. Apply your new material to the Material slot

Result: Editor crashes

Callstack
Fatal error: [File:D:\Build\++UE4+Release-4.16+Compile\Sync\Engine\Source\Runtime\Engine\Private\Materials\MaterialShared.cpp] [Line: 1851] Couldn't find Shader FHitProxyVS for Material Resource landscapeVisibilityMask! 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_Masked, Spec

UE4Editor_Engine!FMaterial::GetShader() [materialshared.cpp:1838]
UE4Editor_Renderer!FHitProxyDrawingPolicy::FHitProxyDrawingPolicy() [scenehitproxyrendering.cpp:180]
UE4Editor_Renderer!FHitProxyDrawingPolicyFactory::AddStaticMesh() [scenehitproxyrendering.cpp:325]
UE4Editor_Renderer!FStaticMesh::AddToDrawLists() [scenecore.cpp:327]
UE4Editor_Renderer!FPrimitiveSceneInfo::AddStaticMeshes() [primitivesceneinfo.cpp:152]
UE4Editor_Renderer!FPrimitiveSceneInfo::AddToScene() [primitivesceneinfo.cpp:195]
UE4Editor_Renderer!FScene::AddPrimitiveSceneInfo_RenderThread() [rendererscene.cpp:511]
UE4Editor_Renderer!<lambda_0628b7e343e078d62bb69bb7a0b80e2d>::operator() [rendererscene.cpp:780]
UE4Editor_Renderer!TGraphTask<TEnqueueUniqueRenderCommandType<`FScene::AddPrimitive'::`2'::AddPrimitiveCommandName,<lambda_0628b7e343e078d62bb69bb7a0b80e2d> > >::ExecuteTask() [taskgraphinterfaces.h:883]
UE4Editor_Core!FNamedTaskThread::ProcessTasksNamedThread() [taskgraph.cpp:954]
UE4Editor_Core!FNamedTaskThread::ProcessTasksUntilQuit() [taskgraph.cpp:701]
UE4Editor_RenderCore!RenderingThreadMain() [renderingthread.cpp:327]
UE4Editor_RenderCore!FRenderingThread::Run() [renderingthread.cpp:461]
UE4Editor_Core!FRunnableThreadWin::Run() [windowsrunnablethread.cpp:76]

Have Comments or More Details?

Head over to the existing Questions & Answers thread and let us know what's up.

1
Login to Vote

Fixed
ComponentUE - LD & Modeling - Terrain - Landscape
Affects Versions4.164.17
Target Fix4.16
Fix Commit3424995
Release Commit3424995
CreatedApr 28, 2017
ResolvedMay 5, 2017
UpdatedOct 30, 2017