Description

When assigning a static mesh to the "Sample Static Mesh" module, the engine will crash as soon as you select a mesh and click "Fix Now". If the mesh already has CPU access enabled it will crash as soon as you select the mesh.

 

Found in 4.20 Preview 4 CL# 4154964 and 4.21 CL# 4166777

Steps to Reproduce
  1. Open the editor
  2. Create a new Niagara Emitter and open it
  3. Add a "Sample Static Mesh" module under particle update
  4. Assign a static mesh to it

Results:
The engine will crash after clicking "Fix Now" for the CPU access error, or immediately after assigning the mesh if that is already enabled

Expected:
The static mesh would be assigned

Callstack
Access violation - code c0000005 (first/second chance not available)

UE4Editor_Niagara!UNiagaraDataInterfaceStaticMesh::GetTriCoordColor<FRegisterHandler<int>,FRegisterHandler<float>,FRegisterHandler<float>,FRegisterHandler<float> >() [d:\build\++shared\sync\engine\plugins\fx\niagara\source\niagara\private\niagaradatainterfacestaticmesh.cpp:1304]
UE4Editor_VectorVM!<lambda_04f9fa4ed710f7d2ac33b1535e8e87cf>::operator()() [d:\build\++shared\sync\engine\source\runtime\vectorvm\private\vectorvm.cpp:1706]
UE4Editor_VectorVM!ParallelFor() [d:\build\++shared\sync\engine\source\runtime\core\public\async\parallelfor.h:174]
UE4Editor_VectorVM!VectorVM::Exec() [d:\build\++shared\sync\engine\source\runtime\vectorvm\private\vectorvm.cpp:1736]
UE4Editor_Niagara!FNiagaraScriptExecutionContext::Execute() [d:\build\++shared\sync\engine\plugins\fx\niagara\source\niagara\private\niagarascriptexecutioncontext.cpp:188]
UE4Editor_Niagara!<lambda_6dca6340aa237da9108592d7a4686cd6>::operator()() [d:\build\++shared\sync\engine\plugins\fx\niagara\source\niagara\private\niagaraemitterinstance.cpp:1122]
UE4Editor_Niagara!FNiagaraEmitterInstance::Tick() [d:\build\++shared\sync\engine\plugins\fx\niagara\source\niagara\private\niagaraemitterinstance.cpp:1134]
UE4Editor_Niagara!FNiagaraSystemInstance::PostSimulateTick() [d:\build\++shared\sync\engine\plugins\fx\niagara\source\niagara\private\niagarasysteminstance.cpp:1172]
UE4Editor_Niagara!ParallelFor() [d:\build\++shared\sync\engine\source\runtime\core\public\async\parallelfor.h:174]
UE4Editor_Niagara!FNiagaraSystemSimulation::Tick() [d:\build\++shared\sync\engine\plugins\fx\niagara\source\niagara\private\niagarasystemsimulation.cpp:609]
UE4Editor_Niagara!FNiagaraSystemInstance::ComponentTick() [d:\build\++shared\sync\engine\plugins\fx\niagara\source\niagara\private\niagarasysteminstance.cpp:1106]
UE4Editor_Niagara!UNiagaraComponent::TickComponent() [d:\build\++shared\sync\engine\plugins\fx\niagara\source\niagara\private\niagaracomponent.cpp:401]
UE4Editor_Engine!FActorComponentTickFunction::ExecuteTickHelper<<lambda_e8384def656dc646af48282ce274db64> >() [d:\build\++shared\sync\engine\source\runtime\engine\classes\gameframework\actor.h:3095]
UE4Editor_Engine!FActorComponentTickFunction::ExecuteTick() [d:\build\++shared\sync\engine\source\runtime\engine\private\components\actorcomponent.cpp:797]
UE4Editor_Engine!TGraphTask<FTickFunctionTask>::ExecuteTask() [d:\build\++shared\sync\engine\source\runtime\core\public\async\taskgraphinterfaces.h:829]
UE4Editor_Core!FNamedTaskThread::ProcessTasksNamedThread() [d:\build\++shared\sync\engine\source\runtime\core\private\async\taskgraph.cpp:665]
UE4Editor_Core!FNamedTaskThread::ProcessTasksUntilIdle() [d:\build\++shared\sync\engine\source\runtime\core\private\async\taskgraph.cpp:585]
UE4Editor_Engine!FTickTaskSequencer::ReleaseTickGroup() [d:\build\++shared\sync\engine\source\runtime\engine\private\ticktaskmanager.cpp:558]
UE4Editor_Engine!FTickTaskManager::RunTickGroup() [d:\build\++shared\sync\engine\source\runtime\engine\private\ticktaskmanager.cpp:1455]
UE4Editor_Engine!UWorld::RunTickGroup() [d:\build\++shared\sync\engine\source\runtime\engine\private\leveltick.cpp:780]
UE4Editor_Engine!UWorld::Tick() [d:\build\++shared\sync\engine\source\runtime\engine\private\leveltick.cpp:1466]
UE4Editor_NiagaraEditor!FNiagaraSystemViewportClient::Tick() [d:\build\++shared\sync\engine\plugins\fx\niagara\source\niagaraeditor\private\widgets\sniagarasystemviewport.cpp:85]
UE4Editor_UnrealEd!UEditorEngine::Tick() [d:\build\++shared\sync\engine\source\editor\unrealed\private\editorengine.cpp:1765]
UE4Editor_UnrealEd!UUnrealEdEngine::Tick() [d:\build\++shared\sync\engine\source\editor\unrealed\private\unrealedengine.cpp:403]
UE4Editor!FEngineLoop::Tick() [d:\build\++shared\sync\engine\source\runtime\launch\private\launchengineloop.cpp:3489]
UE4Editor!GuardedMain() [d:\build\++shared\sync\engine\source\runtime\launch\private\launch.cpp:166]
UE4Editor!GuardedMainWrapper() [d:\build\++shared\sync\engine\source\runtime\launch\private\windows\launchwindows.cpp:144]
UE4Editor!WinMain() [d:\build\++shared\sync\engine\source\runtime\launch\private\windows\launchwindows.cpp:223]
UE4Editor!__scrt_common_main_seh() [f:\dd\vctools\crt\vcstartup\src\startup\exe_common.inl:283]
kernel32
ntdll

Have Comments or More Details?

There's no existing public thread on this issue, so head over toAnswerHub just mention UE-61247 in the post.

2
Login to Vote

Fixed
ComponentTools - Niagara
Affects Versions4.204.21
Target Fix4.20
Fix Commit4182743
Main Commit4202609
Release Commit4182743
CreatedJun 28, 2018
ResolvedJul 3, 2018
UpdatedJul 12, 2018