Heya! I’ve been making some serious strides on my character using Hairworks, However, I have run into an issue that makes it completely impossible to use hairworks in my project for now.
To very simply explain it, in the material editor in UE4, there is a material function (standard included) called SplineThicken. this extrudes, and screen faces a very thin polystrip for use of hair, thin wire, lasers and other thin geometry.
Assuming that this is a similar, if not identical technique used to render the hairstrands in a hairworks file, it clashes, or something. causes a crash anyway if it’s on the same screen. Considering the character is part of a scene where there are alot of these more static splines rendered out, it becomes impossible to use hairworks, which was the original point.
It occurs both in Nvidia’s 4.7.5 branch and Galaxyman’s 4.9.2 branch (the latter beeing used due to the multi-light support)
Crash report:
Unknown exception - code 00000001 (first/second chance not available)
"Assertion failed: !bSrcStencilWrite || bDstStencilWrite [File:D:\Applications\Epic\Epic Games\Nvidia 4.9.2\Engine\Source\Runtime\Windows\D3D11RHI\Private\D3D11Commands
UE4Editor_Core!FDebug::AssertFailed() [d:\applications\epic\epic games
vidia 4.9.2\engine\source\runtime\core\private\misc\outputdevice.cpp:354]
UE4Editor_D3D11RHI!FD3D11DynamicRHI::ValidateExclusiveDepthStencilAccess() [d:\applications\epic\epic games
vidia 4.9.2\engine\source\runtime\windows\d3d11rhi\private\d3d11commands.cpp:678]
UE4Editor_D3D11RHI!FD3D11DynamicRHI::RHISetDepthStencilState() [d:\applications\epic\epic games
vidia 4.9.2\engine\source\runtime\windows\d3d11rhi\private\d3d11commands.cpp:688]
UE4Editor_Renderer!FTranslucencyDrawingPolicyFactory::DrawMesh() [d:\applications\epic\epic games
vidia 4.9.2\engine\source\runtime\renderer\private ranslucentrendering.cpp:474]
UE4Editor_Renderer!FTranslucentPrimSet::RenderPrimitive() [d:\applications\epic\epic games
vidia 4.9.2\engine\source\runtime\renderer\private ranslucentrendering.cpp:727]
UE4Editor_Renderer!FTranslucentPrimSet::DrawPrimitives() [d:\applications\epic\epic games
vidia 4.9.2\engine\source\runtime\renderer\private ranslucentrendering.cpp:705]
UE4Editor_Renderer!FDeferredShadingSceneRenderer::DrawAllTranslucencyPasses() [d:\applications\epic\epic games
vidia 4.9.2\engine\source\runtime\renderer\private ranslucentrendering.cpp:1107]
UE4Editor_Renderer!FDeferredShadingSceneRenderer::RenderTranslucency() [d:\applications\epic\epic games
vidia 4.9.2\engine\source\runtime\renderer\private ranslucentrendering.cpp:1216]
UE4Editor_Renderer!FDeferredShadingSceneRenderer::Render() [d:\applications\epic\epic games
vidia 4.9.2\engine\source\runtime\renderer\private\deferredshadingrenderer.cpp:1402]
UE4Editor_Renderer!RenderViewFamily_RenderThread() [d:\applications\epic\epic games
vidia 4.9.2\engine\source\runtime\renderer\private\scenerendering.cpp:1585]
UE4Editor_Renderer!TGraphTask<`FRendererModule::BeginRenderingViewFamily'::`23'::EURCMacro_FDrawSceneCommand>::ExecuteTask() [d:\applications\epic\epic games
vidia 4.9.2\engine\source\runtime\core\public\async askgraphinterfaces.h:779]
UE4Editor_Core!FTaskThread::ProcessTasks() [d:\applications\epic\epic games
vidia 4.9.2\engine\source\runtime\core\private\async askgraph.cpp:539]
UE4Editor_Core!FTaskThread::ProcessTasksUntilQuit() [d:\applications\epic\epic games
vidia 4.9.2\engine\source\runtime\core\private\async askgraph.cpp:340]
UE4Editor_RenderCore!RenderingThreadMain() [d:\applications\epic\epic games
vidia 4.9.2\engine\source\runtime\rendercore\private\renderingthread.cpp:310]
UE4Editor_RenderCore!FRenderingThread::Run() [d:\applications\epic\epic games
vidia 4.9.2\engine\source\runtime\rendercore\private\renderingthread.cpp:411]
UE4Editor_Core!FRunnableThreadWin::Run() [d:\applications\epic\epic games
vidia 4.9.2\engine\source\runtime\core\private\windows\windowsrunnablethread.cpp:74]