NVIDIA GameWorks Integration

Im not offended, I’d be really happy if makes it work.

Im ***ssoooooo ***happy VXGI works on 4.7 now

Thanks :smiley:

A huge double thanks to , may the force be with you :slight_smile:

So… one still Bugging me. I tried changing bVxgiStoreEmittanceInFP16=true to false and no luck. Any ideas?

&d=1426741469

Hey guys, quick question about VXGI. So right now without the second bounce Specular Tracing works, but not with quality viable for a project. However, setting surface materials to have an emissive value of 0.01 multiplied by the diffuse image approximates extra lighting quite nicely, but of course voxelizes all materials on screen. My question is if is okay to do. My computer can only get about 18 fps with specular tracing by default, and that doesn’t change with the emissive adjustment. Does the voxel geometry change when affected by direct light because it has to, or is it for performance reasons?

Yes. I followed your instructions. I’ve Just tried to download and build everything a second time to make sure and that error still happens.

I had that too, I thought Im beeing dumb and gave up :wink: Figured I have to tear down the clone and fetch it again, but then there was another branch so…

The Merged branch workes fine.

I’m gonna try the merged branch, thanks :smiley:

edit: I downloaded the Merged branch and used its NVIDIA folder to replace the VXGI one after running the setup.bat and now it builds all right. It looks like the VXGI git branch is coming with the folder generated by the setup.bat already…

But now when I try to start the editor, I get the same error that folks up above are getting:

&stc=1

Has anyone an idea on how to set up a bunch of materials for VXGI? When I try to have more than 10 materials set to be used with VXGI at the same time (through the property matrix), the engine just crashes. Should I be aware of any hardware or engine limitations in regard? (I looked at my RAM usage, but not even half of it were in use when I compile the materials) :confused:

Greetings,

Does it really crash or does it just halt rendering and responding? If its the latter you could just wait. A long time. It will complete eventually…

Compiling shaders with VXGI on is like… extra-superduper slow.

Nope, it’s actually crashing. The thing is it happens irregularly. Sometimes it happens with 7 materials, sometimes with 12. Compiling the materials one by one is no problem.
I added the crash-log now (forgot to do that in the first post, sorry):



Unknown exception - code 00000001 (first/second  not available)



Fatal error: [File:C:\"Path_to_my_Engine"\Engine\Source\Runtime\Engine\Private\Materials\MaterialShared.cpp] [Line: 1519] 
Couldn't find Shader TVXGIVoxelizationVSFVXGIVoxelizationNoLightMapPolicy for Mate


KERNELBASE + 44461 bytes
UE4Editor_Core!FOutputDeviceWindowsError::Serialize() + 285 bytes [C:\"Path_to_my_Engine"\engine\source\runtime\core\private\windows\windowsplatformoutputdevices.cpp:95]
UE4Editor_Core!FMsg::Logf__VA() + 463 bytes [C:\"Path_to_my_Engine"\engine\source\runtime\core\private\misc\outputdevice.cpp:526]
UE4Editor_Engine!FMaterial::GetShader() + 518 bytes [C:\"Path_to_my_Engine"\engine\source\runtime\engine\private\materials\materialshared.cpp:1519]
UE4Editor_Renderer!TVXGIVoxelizationDrawingPolicy<FVXGIVoxelizationNoLightMapPolicy>::TVXGIVoxelizationDrawingPolicy<FVXGIVoxelizationNoLightMapPolicy>() + 109 bytes [C:\"Path_to_my_Engine"\engine\source\runtime\renderer\private\deferredshadingrenderer.h:996]
UE4Editor_Renderer!ProcessVxgiVoxelizationMeshForForwardShading<FDrawVXGIVoxelizationStaticMeshAction>() + 585 bytes [C:\"Path_to_my_Engine"\engine\source\runtime\renderer\private\deferredshadingrenderer.cpp:2445]
UE4Editor_Renderer!TVXGIVoxelizationDrawingPolicyFactory::AddStaticMesh() + 304 bytes [C:\"Path_to_my_Engine"\engine\source\runtime\renderer\private\deferredshadingrenderer.cpp:2521]
UE4Editor_Renderer!FStaticMesh::AddToDrawLists() + 92 bytes [C:\"Path_to_my_Engine"\engine\source\runtime\renderer\private\scenecore.cpp:298]
UE4Editor_Renderer!FPrimitiveSceneInfo::AddStaticMeshes() + 420 bytes [C:\"Path_to_my_Engine"\engine\source\runtime\renderer\private\primitivesceneinfo.cpp:139]
UE4Editor_Renderer!FPrimitiveSceneInfo::AddToScene() + 263 bytes [C:\"Path_to_my_Engine"\engine\source\runtime\renderer\private\primitivesceneinfo.cpp:181]
UE4Editor_Renderer!FScene::AddPrimitiveSceneInfo_RenderThread() + 990 bytes [C:\"Path_to_my_Engine"\engine\source\runtime\renderer\private\rendererscene.cpp:287]
UE4Editor_Renderer!`FScene::AddPrimitive'::`28'::EURCMacro_FAddPrimitiveCommand::DoTask() + 369 bytes [C:\"Path_to_my_Engine"\engine\source\runtime\renderer\private\rendererscene.cpp:484]
UE4Editor_Renderer!TGraphTask<`FScene::AddPrimitive'::`28'::EURCMacro_FAddPrimitiveCommand>::ExecuteTask() + 456 bytes [C:\"Path_to_my_Engine"\engine\source\runtime\core\public\async	askgraphinterfaces.h:669]
UE4Editor_Core!FTaskThread::ProcessTasks() + 3125 bytes [C:\"Path_to_my_Engine"\engine\source\runtime\core\private\async	askgraph.cpp:428]
UE4Editor_Core!FTaskThread::ProcessTasksUntilQuit() + 77 bytes [C:\"Path_to_my_Engine"\engine\source\runtime\core\private\async	askgraph.cpp:271]
UE4Editor_RenderCore!RenderingThreadMain() + 189 bytes [C:\"Path_to_my_Engine"\engine\source\runtime\rendercore\private\renderingthread.cpp:282]
UE4Editor_RenderCore!FRenderingThread::Run() + 63 bytes [C:\"Path_to_my_Engine"\engine\source\runtime\rendercore\private\renderingthread.cpp:385]
UE4Editor_Core!FRunnableThreadWin::Run() + 102 bytes [C:\"Path_to_my_Engine"\engine\source\runtime\core\private\windows\windowsrunnablethread.cpp:73]
UE4Editor_Core!FRunnableThreadWin::GuardedRun() + 93 bytes [C:\"Path_to_my_Engine"\engine\source\runtime\core\private\windows\windowsrunnablethread.cpp:26]
 + 88525 bytes
ntdll + 175441 bytes


“Path_to_my_Engine” is from changing the folder name via copy&paste to not make it public right? :wink: Otherwise I can’t be of help on one.

Yep, it’s not relevant to know the twenty (not really) different folders my engine is in :o We will see, maybe or someone else has an idea ^^

"Has anyone an idea on how to set up a bunch of materials for VXGI? When I try to have more than 10 materials set to be used with VXGI at the same time (through the property matrix), the engine just crashes. Should I be aware of any hardware or engine limitations in regard? (I looked at my RAM usage, but not even half of it were in use when I compile the materials)

Greetings,
"

I had some crashes before build, so had to use property matrix in a new level without the objects used in viewport.
one seems better since adjusted 64 materials in one go, but they were basic materials.

“edit”
Just tested again, and it crashed :frowning:

I managed to convert a 110 materials asset in one go when not mixed with emissive omni materials, but it took a looong time (40min).

Uploaded today: //UnrealEngine/tree/WaveWorks

Working on merged version now. But bare in mind mentioned a resource contention between WaveWorks and Flex, so I may not be able to merge. Waiting for compile to finish so I can test.

Great job man :slight_smile: Are you also going to merge with HBAO+?

I second that, after Waveworks would you kindly add HBAO+

So just to give everyone an update, I have hit the same roadblock with WaveWorks merged with Flex and VXGI mentioned by and am unable to get around it, unfortunately the only error I have to go off is gfsdk_waveworks_result_FAIL. Apparently there is no way to get more detailed error information that I can see, if anyone knows please let me know. For now we will have to wait for NVidia to fix the resource contention. So I will be dropping WaveWorks from the merged branch for now (I may bring it back after as an OR option so Flex OR WaveWorks). So I will move onto HBAO+ now.

Just for others who may run into the same issues.
The Nvidia folder from (Lord of Light) (warden of the North) was missing the amd64 and x86 folders, you can grab the contents .

Then you’ll probably have to re-build programs/Shadercompilerworker.

Then it should work like a charm.

All hail , Lord of Light and warden of the North.

Good catch Xerithas, the merged branch does contain it, but the VXGI branch doesn’t, I swore I added them, will get them uploaded shortly

EDIT: and done. Files should now be in the VXGI branch

No problem =]

Now onto seeing what I can and can’t do without crashing =p (Basalt rock material seems like a no-go, but I’ll give it another try).

Edit: Just adding I did switch bVxgiStoreEmittanceInFP16= to false.

Edit2: Wow no kidding on shader compile times.
For those people who may be watching and waiting because they aren’t sure if it’ll work on oldish AMD cards, I’m currently running it on an HD 7850 and it certainly does work (-60fps when my landscape material has VXGI on though, even with the bare minimum settings).

Edit3: Just wanted to clarify that when I said minimum settings I meant the VXGI settings, not engine scalability (was on high).